利用 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 数据源( common.yaml )。实际上,你可以拥有任意数量的数据源。每个数据源通常对应一个 YAML 文件,它们在
超级会员免费看
订阅专栏 解锁全文
45

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



