各ノードマニフェストに次のような名前が付けられたパペットセットアップがあります
/^web-\d+\.example\.com$/
これを行うのは、容量を追加するために新しいサーバーを起動し、起動時のタイムスタンプを使用して各サーバーに一意のcertname
を与えることができるようにするためです。
これは、PuppetセットアップのHiera部分で問題を引き起こしています。
:hierarchy:
- "nodes/%{::trusted.certname}"
- common
すべてのcertname
sがどうなるかを予測できないためです。現在、階層内の各ノードタイプを指定しているだけですが、毎回hiera.yaml
を編集せずに新しいノードタイプを追加できるようにしたいと考えています。
すべてのノードタイプを指定せずに動的に生成された証明書名を使用できるようにする、ある種の動的ルックアップを階層に含めることは可能ですか?
これを機能させるために、階層とカスタムファクトの両方を更新しました。階層に含まれるようになりました
roles/%{::role}/${::environment}
そして、ノードの/etc/facter/facts/role.yaml
に次のものが含まれるようになりました。
---
role: web