マスターレス モジュールの 1 つを Consul を使用するように変換しています。外部ファクトを使用して Consul ホストと Consul トークンを渡すにはどうすればよいですか? これらはすべての環境で変化し、Puppet によって管理されません。Puppet モジュール 'lynxman-hiera_consul'、'0.1.2' を使用しています。このモジュールで使用するには、hiera.yaml をバージョン 3 にダウングレードする必要があることに注意してください。
Puppet マスターレス実行の前に、いくつかの事実をエクスポートします
export FACTER_CONSULHOST=consul-randomid..us-west-2.elb.amazonaws.com
export FACTER_MYTOKEN=何らかのトークン
これが動作することをテストできます
ファクトマイトークン; パペットの事実 --debug|grep mytoken
facter consulhost;puppet ファクト --debug|grep consulhost
私の hiera.yaml は、このHiera.yaml Gistのようになります。ファクト補間を文字列に置き換えると、これはうまく機能します。
基本的な問題は、15行目の事実補間にあります
:token: "%{facts.mytoken}"