Red Hat Training
A Red Hat training course is available for Red Hat OpenStack Platform
2.6. 在 Overcloud 创建中包含环境文件
部署命令(openstack overcloud deploy
)使用 -e
选项包括环境文件来自定义 Overcloud。您可以根据需要纳入多个环境文件。但是,环境文件的顺序非常重要,因为后续环境文件中定义的参数和资源更为优先。例如,您可能有两个环境文件:
environment-file-1.yaml
resource_registry: OS::TripleO::NodeExtraConfigPost: /home/stack/templates/template-1.yaml parameter_defaults: RabbitFDLimit: 65536 TimeZone: 'Japan'
environment-file-2.yaml
resource_registry: OS::TripleO::NodeExtraConfigPost: /home/stack/templates/template-2.yaml parameter_defaults: TimeZone: 'Hongkong'
然后,使用包括的两个环境文件进行部署:
$ openstack overcloud deploy --templates -e environment-file-1.yaml -e environment-file-2.yaml
在本例中,两个环境文件都包含通用资源类型(OS::TripleO::NodeExtraConfigPost
)和通用参数(TimeZone
)。openstack overcloud deploy
命令通过以下进程运行:
-
根据
--template
选项,从核心 Heat 模板集合中加载默认配置。 -
从
environment-file-1.yaml
应用配置,这将覆盖默认配置中的任何常见设置。 -
应用
environment-file-2.yaml
的配置,它会覆盖默认配置和environment-file-1.yaml
中的任何常见设置。
这会对 Overcloud 的默认配置进行以下更改:
-
OS::TripleO::NodeExtraConfigPost
资源设置为/home/stack/templates/template-2.yaml
,因为environment-file-2.yaml
。 -
timezone
参数设为Hongkong
,因为environment-file-2.yaml
。 -
RabbitFDLimit
参数根据environment-file-1.yaml
被设置为65536
。environment-file-2.yaml
不会更改这个值。
这提供了一种从多个环境文件冲突地定义自定义配置到 Overcloud 的方法。