Victoria 系列发布说明¶
12.5.2¶
新特性¶
添加基于 mandatory 标志的重试策略。 缺失的交换机和队列现在被单独识别用于日志记录目的。
升级说明¶
弃用
direct_mandatory_flag。将不再能够禁用此功能。
12.4.0¶
新特性¶
RPC 调度器可以有一个名为 ping 的额外端点。可以通过特定的配置参数启用此端点:[DEFAULT] rpc_ping_enabled=true # 默认值为 false
这个新端点的目的是帮助操作员对特定的 RPC 回调(例如 nova-compute 或 neutron-agent)进行 RPC 调用(ping)。这对于监控代理(例如,如果代理部署在 kubernetes pod 中)非常有帮助。
12.3.0¶
错误修复¶
为 rabbitmq 驱动程序添加了一个新的选项 enable_cancel_on_failover,启用后,当队列似乎宕机时,将取消消费者。
12.0.0¶
升级说明¶
阻塞执行器已弃用,将在 Rocky 中删除,并且 Ussuri 中已不再支持。 它的使用从未推荐给应用程序,并且没有测试覆盖。 应用程序应选择适合其用例的适当线程模型。
11.0.0¶
新特性¶
- oslo_messaging 的 kafka 驱动程序支持 SSL添加了以下配置参数
ssl_client_cert_file (默认=’’)
ssl_client_key_file (默认=’’)
ssl_client_key_password (默认=’’)
升级说明¶
已停止对 Python 2.7 的支持。 现在支持的 Python 的最低版本是 Python 3.6。
其他说明¶
对于名称以 ‘_ignore_errors’ 结尾的特殊不存在的方法,将不再记录 NoSuchMethod 异常。 这些方法可能用作 OpenStack 服务的健康探测。
9.5.0¶
关键问题¶
结合 amqp<=2.4.0,当配置 TLS 时(通常建议这样做),
oslo.messaging变得不可靠。用户会频繁看到如下错误MessagingTimeout: Timed out waiting for a reply to message ID ae039d1695984addbfaaef032ce4fda3
此类问题通常会导致下游服务超时,除了完全禁用 TLS 之外,没有其他补救措施(请参阅 bug 1800957)。
该根本问题已在 amqp 2.4.1 版本中修复,现在
oslo.messaging所需的最低版本就是 2.4.1。
9.3.0¶
升级说明¶
由于使用的客户端库发生了变化,使用 Kafka 驱动的项目应使用 extras oslo.messaging[kafka] 来引入驱动程序的依赖项。
错误修复¶
发现了 kafka-python 消费者客户端的线程问题并进行了记录。驱动程序已更新为集成 confluent-kafka python 库。confluent-kafka 客户端利用高性能的 librdkafka C 客户端,并且可以安全地在多线程中使用。
9.0.0¶
序言¶
已移除基于 ZMQ 的 RPC 通信驱动程序
升级说明¶
从多个驱动程序中移除已弃用的配置选项。
已移除 [DEFAULT] 部分中的 rpc_backend 选项。
AMQP 驱动程序已移除 [oslo_messaging_amqp] 部分中的 allow_insecure_clients、username 和 password 配置选项。
Kafa 驱动程序已移除 [oslo_messaging_kafka] 部分中的 kafka_default_host 和 kafka_default_port 配置选项。
Rabbit 驱动程序已移除 [oslo_messaging_rabbit] 部分中的 rabbit_host、rabbit_port、rabbit_hosts、rabbit_userid、rabbit_password、rabbit_virtual_host rabbit_max_retries 和 rabbit_durable_queues 配置选项。
操作员必须切换到在 [DEFAULT] 部分中设置 transport_url 指令。
弃用说明¶
移除了对 ZeroMQ 消息传递库的驱动程序支持。oslo.messaging RPC 服务的使用者必须使用受支持的 rabbit (“rabbit://…”) 或 amqp1 (“amqp://…” )驱动程序。
8.0.0¶
序言¶
RPCClient 现在支持 RPC 调用监控,用于检测 RPC 调用期间服务器丢失的情况。
新特性¶
RPC 调用监控是 RPCClient 的一项新功能。调用监控导致 RPC 服务器在处理 RPC 调用时定期向 RPCClient 发送保活消息。这可用于在不必等待完整的调用超时过期的情况下,提前检测到服务器故障。
7.0.0¶
弃用说明¶
ZeroMQ 支持已被弃用。ZeroMQ 驱动
zmq://已经超过一年未维护,并且不再正常工作。建议使用维护的后端之一,例如 RabbitMQ 或 AMQP 1.0。
6.2.0¶
序言¶
使用任何可选驱动程序的项目可以使用 extras 来提取该驱动程序的依赖项。
升级说明¶
使用 AMQP 1.0 驱动程序的项目现在可以依赖 oslo.messaging[amqp1]。使用 Kafka 驱动程序的项目现在可以依赖 oslo.messaging[kafka]
6.0.0¶
序言¶
基于 Pika 的 RabbitMQ 驱动程序已被删除。
升级说明¶
Pika 驱动程序的用户必须将所有 transport_url 配置选项的前缀从“pika://…”更改为“rabbit://…”才能使用默认的基于 kombu 的 RabbitMQ 驱动程序。
5.34.1¶
其他说明¶
在 rabbitmq 上,过去,消息的确认是在应用程序回调线程/greenlet 中完成的。该线程会阻塞,直到消息被确认。在 newton 中,我们重写了消息确认,以确保我们没有两个线程同时写入套接字。现在所有待处理的确认都由主线程完成。不再有理由阻塞应用程序回调线程,直到消息被确认。其他驱动程序已经在消息确认之前释放了应用程序回调线程。现在 rabbitmq 也是如此。
5.33.0¶
升级说明¶
将 RPC 调度器的 access_policy 默认值更改为 DefaultRPCAccessPolicy。
5.27.0¶
弃用说明¶
阻塞执行器已弃用,将在 Rocky 中删除。其使用从未推荐给应用程序,并且没有测试覆盖范围。应用程序应选择适当的线程模型来映射其用法。
5.26.0¶
弃用说明¶
pika 驱动程序已弃用,将在 Rocky 中删除。该驱动程序被开发为默认 rabbit 驱动程序的替代品。但是,测试表明它在性能和稳定性方面没有比默认 rabbit 驱动程序有任何明显的改进。
5.24.2¶
新特性¶
添加 get_rpc_transport 调用,以使 API 清晰地分离 RPC 和通知消息后端。
弃用说明¶
弃用 get_transport,并使用 get_rpc_transport 或 get_notification_transport 以使 API 用法清晰地分离 RPC 和通知消息后端。
5.24.0¶
新特性¶
- 为 oslo_messaging_notifications 驱动程序添加重试支持添加了配置参数“retry”。默认值为 -1,表示无限次重试
retry (默认=-1)
5.20.0¶
升级说明¶
RequestContextSerializer 自 4.6 起已被弃用,并且任何其他项目都没有使用它,因此我们可以安全地将其删除。
5.6.0¶
新特性¶
- 池中的空闲连接将被过期并关闭。默认 ttl 为 1200s。添加了以下配置参数
conn_pool_ttl (默认 1200)
conn_pool_min_size (默认 2)
弃用说明¶
rabbitmq 驱动程序选项
DEFAULT/max_retries已被弃用(在未来的某个时间点删除),因为它对通知和 RPC 没有逻辑意义。