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)。 在
keystonePuppet 模块中搜索notification_format设置。例如:grep notification_format /etc/puppet/modules/keystone/manifests/*
$ grep notification_format /etc/puppet/modules/keystone/manifests/*Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在这种情况下,
keystone模块使用keystone::notification_format变量管理这个选项。为此变量搜索
keystone服务模板。例如:grep "keystone::notification_format" /usr/share/openstack-tripleo-heat-templates/puppet/services/keystone.yaml
$ grep "keystone::notification_format" /usr/share/openstack-tripleo-heat-templates/puppet/services/keystone.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出显示 director 使用
KeystoneNotificationFormat参数来设置keystone::notification_formathieradata。
下表显示了最终映射:
| Director 参数 | Puppet Hieradata | OpenStack Identity (keystone)选项 |
|---|---|---|
|
|
|
|
这意味着在 overcloud 的环境文件中设置 KeystoneNotificationFormat,会在 overcloud 的配置期间设置 keystone.conf 文件中的 notification_format 选项。