Queens 系列发布说明¶
10.0.3-31¶
错误修复¶
此前,在 heat 模板中,主机聚合资源类型的可用区被错误地认为是必需的。
行为已调整,使其与 CLI 和 GUI 保持一致,在 CLI 和 GUI 中,该选项是可选的。
10.0.2¶
错误修复¶
此前,在删除收敛堆栈时,API 调用会立即返回,因此客户端立即查询堆栈状态可能会看到先前操作正在进行或失败的状态,并将其误认为当前状态。(这包括 Heat 本身在充当嵌套堆栈的客户端时。)现在,收敛堆栈在删除 API 调用返回之前,保证已移动到
DELETE_IN_PROGRESS状态,因此任何后续的轮询都将反映最新的信息。
此前,对于所有堆栈的暂停、恢复和检查 API 调用,以及对于非收敛堆栈的更新、恢复和删除 API 调用,在启动堆栈操作后会立即返回。这意味着对于在连续两次执行相同操作时读取状态的客户端,除非仔细参考 updated_at 时间戳,否则可能会将先前的状态误解为最新的。现在,保证堆栈在任何这些 API 返回之前都已移动到
IN_PROGRESS状态(除非删除非收敛堆栈时,另一个操作已经在进行中)。
10.0.1¶
安全问题¶
由 OS::Heat::RandomString 资源生成的密码,根据
character_class和character_sequence属性的指定情况,可能具有低于预期的熵。此问题已得到修正,现在任何指定类或序列中存在的每个字符在生成的随机字符串的每个位置出现的概率均相等。
10.0.0¶
序言¶
请注意,即使在使用 Keystone trusts 时,Heat 也与 OpenStack Identity federation 兼容。在启用 Federation 并构建 自动配置映射,其中包含 Keystone 中的 heat 服务用户后,它应该可以工作。自动配置在 Keystone 中自 Ocata 版本以来就可用。
新特性¶
为 Zun Container 资源添加了
hostname、hints、security_groups和mounts属性。
添加了 REST api 支持,用于在不回滚的情况下取消堆栈创建/更新。
openstack-manuals 中各种指南的所有开发者、贡献者和用户内容都已移入树中,并发布在 https://docs.openstack.org/heat/2025.2/。
模板验证 API 调用现在返回 Heat 计算的环境 - 这使得在创建堆栈之前预览使用 parameter_merge_strategy 合并的环境成为可能
添加了 octavia lbaas 服务的新资源。
添加了新的资源
OS::Octavia::LoadBalancer,用于创建和管理负载均衡器,允许在服务器之间定向流量。
添加了新的资源
OS::Octavia::Listener,用于创建和管理监听器,监听器代表负载均衡器的监听端点。
添加了新的资源
OS::Octavia::Pool,用于创建和管理池,池代表一组节点。池定义了节点所在的子网、负载均衡算法和节点本身。
添加了新的资源
OS::Octavia::PoolMember,用于创建和管理池成员,池成员代表单个后端节点。
添加了新的资源
OS::Octavia::HealthMonitor,用于创建和管理健康监视器,健康监视器监视负载均衡服务器的状态。
添加了新的资源
OS::Octavia::L7Policy,用于创建和管理 L7 策略。
添加了新的资源
OS::Octavia::L7Rule,用于创建和管理 L7 规则。
为参数添加了新的模式属性 tags,用于根据功能对参数进行分类。
Heat 现在支持代码中的策略,这意味着如果您没有修改任何策略规则,则无需在 policy.yaml 或 policy.json 文件中添加规则。因为从现在开始,heat 将所有默认策略保存在 heat/policies 下。您仍然可以生成和修改 policy.yaml 文件,如果这些规则出现在 policy.yaml 文件中,它将覆盖代码中的策略规则。
为创建和更新 keystone 项目添加了 tags 参数。定义的逗号分隔列表会将标签插入到新创建或更新的项目中。
OS::Heat::ResourceGroup 现在支持 removal_policies_mode 属性。这可用于在更新时选择不同的行为,您可能希望覆盖或附加到当前策略。
允许为 OS::Trove::Cluster 资源设置实例的网络。
已知问题¶
Heat 不适用于 keystone identity federation。这是一个已知限制,因为 heat 使用 keystone trusts 进行延迟身份验证,而 trusts 不适用于联合的 keystone。有关更多详细信息,请查看 https://etherpad.openstack.org/p/pike-ptg-cross-project-federation。
升级说明¶
资源类型
OS::Heat::HARestarter已不再受支持。此资源类型现在已从文档中隐藏。堆栈中的 HARestarter 资源,包括预先存在的资源,现在只是占位符,将不再执行任何操作。推荐的替代方案是标记资源为不正常,然后执行堆栈更新以替换它。这仍然可以正确管理依赖关系,但与 HARestarter 不同,它还可以避免不必要地替换依赖资源。可以在 autohealing 示例模板中看到此技术的示例,网址为 https://git.openstack.org/cgit/openstack/heat-templates/tree/hot/autohealing
默认 policy.json 文件已被删除,因为我们现在在代码中生成默认策略。请注意在您的环境中使用的该文件。您仍然可以生成 policy.yaml 文件(如果您的环境需要)。
长期以来已弃用的兼容 AWS 的 CloudWatch API 已最终删除。部署/打包 CloudWatch 的 OpenStack 部署、打包人员和部署项目应采取适当措施删除支持。
弃用说明¶
自 Ocata 以来,aodh 中使用 ceilometer API 的阈值警报已被弃用。请使用
OS::Aodh::GnocchiAggregationByResourcesAlarm代替OS::Aodh::Alarm。
隐藏了 Designate 资源插件
OS::Designate::Domain和OS::Designate::Record。改为使用OS::Designate::Zone和OS::Designate::RecordSet。
自 6.0.0 以来已弃用的 SSL 中间件
heat.api.middleware.ssl:SSLMiddleware已被删除,请检查您的 paste 配置,并确保它已替换为oslo_middleware.http_proxy_to_wsgi。
heat.resource_type 自定义约束已被删除。此约束实际上从未起作用。
安全问题¶
Heat 在生成 OS::Heat::RandomString 资源的值时,不再使用标准的 Python RNG,而是依赖于系统的 RNG。
错误修复¶
强制删除 nova 实例。如果资源与处于“SOFT_DELETED”状态的 nova 实例相关联,则当 nova 配置“reclaim_instance_interval”时,该资源无法删除。因此,强制删除 nova 实例,然后与该实例相关联的所有资源都将得到正确处理。
为 OS::Keystone::Project 添加属性模式。这允许 get_attr 函数可以与项目资源一起工作。
其他说明¶
Intrinsic 函数插件现在将传递 StackDefinition 对象而不是 Stack 对象。在访问资源时,StackDefinition 将返回 ResourceProxy 对象而不是 Resource 对象。这些类复制了 Stack 和 Resource API 中内置的 Function 插件使用的部分,但自定义的第三方 Template/Function 插件的作者应审核它们,以确保它们不依赖于不再可用的 API 的不稳定部分。StackDefinition 和 ResourceProxy API 被认为是稳定的,对它们的任何未来更改都将通过标准的弃用过程进行。
Heat 插件在 Horizon 中已被新的独立 Horizon 插件 heat-dashboard 替换。有关更多详细信息,请参阅 heat-dashboard 存储库 (https://git.openstack.org/cgit/openstack/heat-dashboard)。
旧的 Heat Tempest 插件
heat_tests已被删除,并替换为 heat-tempest-plugin 存储库 (https://git.openstack.org/cgit/openstack/heat-tempest-plugin) 中的名为heat的单独 Tempest 插件。适当的 Tempest 环境的功能测试已迁移到新的插件。其他功能测试仍然保留在 heat 存储库中。