web-dev-qa-db-ja.com

パペットノードのホスト名

サーバーを構成するために人形を使用しています。現在のマシン(ノード)名を* .erbテンプレートに印刷したい。 hostname変数がありますが、これはpuppetmasterのホスト名を保持します。このトピックに関して適切なリファレンス/リストはありますか?

27
Michal Bryxí

どこかで見落としているようです。 * .erbテンプレートで次のコードを呼び出すだけで、ノードのホスト名を取得(印刷)できます。

<%= @hostname %>

編集:Puppet 3以降、ローカル変数の使用(つまり、hostnameは非推奨です。Puppet4はそれらのサポートを完全に削除します。推奨される方法は、インスタンス変数(接頭辞@。したがって、この場合、@hostnameソース

35
Michal Bryxí

端末に次のコマンドを入力すると、erbファイルで使用可能な変数が返されます。

facter --puppet
29
pcting

上記すべてに対してはい。現在の状況によっては、fqdn変数が役立つ場合もあります。

テンプレートでパペットマスターサーバーの情報が必要な場合は、変数servernameserverip、およびserverversionを使用できます( FAQから )。

6
nfagerlund

どうやら今すぐ使用できます

<%= fqdn %> 

dNSリバース名を取得します。

小文字にする必要がある場合は、

<%= fqdn.downcase %>
4
mtneagle

ただし、これはノード名(最初に要求したもの)ではなくホスト名です。 99%の場合、これらは同じになります。私の知る限り、テンプレートで実際のノード名を取得する方法はありません(ある場合は、ぜひ聞いてください)。

2
adamcooke