使用 Hiera 管理数据
1. 使用 literal() 函数
在 Hiera 中,百分号(%)用于插值。但有时我们需要在数据中指定一个字面意义的百分号,例如 Apache 配置中使用的 %{HTTP_HOST} 。为了在 Hiera 数据中写入这样的值,我们需要使用 literal() 函数。
示例:要将 %{HTTP_HOST} 作为 Hiera 数据写入,应写成 %{literal('%')}{HTTP_HOST} 。
更复杂的示例,在 Hiera 数据文件中:
force_www_rewrite:
comment: "Force WWW"
rewrite_cond: "%{literal('%')}{HTTP_HOST} !^www\\. [NC]"
rewrite_rule: "^(.*)$ https://www.%{literal('%')}{HTTP_HOST}%{literal('%')}{REQUEST_URI} [R=301,L]"
2. Hiera 数据层次结构
到目前为止,我们只使用了一个 Hiera 数据源( common.yaml )。实际上,你可以有任意数量的数据源,每个通常对应一个 YAML 文件,它们在 hiera.yaml 文件的 hierarchy 部分列出,优先级高的数据源排在前面
超级会员免费看
订阅专栏 解锁全文
91

被折叠的 条评论
为什么被折叠?



