3.6. 识别要修改的参数
Red Hat OpenStack Platform director 为配置提供了许多参数。在某些情况下,您可能会遇到发现特定选项来配置和对应的 director 参数的难度。如果您要通过 director 配置的选项,请使用以下工作流来识别和将选项映射到特定的 overcloud 参数:
- 确定您要配置的选项。记录使用 选项的服务。
为此选项检查对应的 Puppet 模块。Red Hat OpenStack Platform 的 Puppet 模块位于 director 节点上的
/etc/puppet/modules
下。每个模块对应于特定的服务。例如,keystone
模块对应于 OpenStack Identity (keystone)。- 如果 Puppet 模块包含控制所选选项的变量,请转到下一步。
- 如果 Puppet 模块不包含控制所选选项的变量,则此选项没有 hieradata。如果可能,您可以在 overcloud 完成部署后手动设置选项。
以 hieradata 的形式,检查 director 的核心 Heat 模板集合中的 Puppet 变量。
puppet/services locate
中的模板通常与同一服务的 Puppet 模块对应。例如,puppet/services/keystone.yaml
模板为keystone
模块提供 hieradata。- 如果 Heat 模板为 Puppet 变量设置 hieradata,则模板也应关闭基于 director 的参数进行修改。
- 如果 Heat 模板没有为 Puppet 变量设置 hieradata,请使用配置 hook 使用环境文件来传递 hieradata。有关自定义 hieradata 的更多信息,请参阅 第 4.5 节 “Puppet:为角色自定义 Hieradata”。
工作流示例
您可能的目标是更改 OpenStack Identity (keystone)的通知格式。使用工作流,您可以:
-
识别要配置的 OpenStack 参数(
notification_format
)。 在
keystone
Puppet 模块中搜索notification_format
设置。例如:$ grep notification_format /etc/puppet/modules/keystone/manifests/*
在这种情况下,
keystone
模块使用keystone::notification_format
变量管理这个选项。为此变量搜索
keystone
服务模板。例如:$ grep "keystone::notification_format" /usr/share/openstack-tripleo-heat-templates/puppet/services/keystone.yaml
输出显示 director 使用
KeystoneNotificationFormat
参数来设置keystone::notification_format
hieradata。
下表显示了最终映射:
Director 参数 | Puppet Hieradata | OpenStack Identity (keystone)选项 |
---|---|---|
|
|
|
这意味着在 overcloud 的环境文件中设置 KeystoneNotificationFormat
,会在 overcloud 的配置期间设置 keystone.conf
文件中的 notification_format
选项。