Puppet-template
人形-テンプレート
テンプレートの評価
テンプレートは、単純な関数を使用して評価されます。
テンプレートの完全なパスを指定するか、通常/var/puppet/templatesにあるPuppetのtemplatedir内のすべてのテンプレートをプルすることができます。 puppet –-configprint templatedirを実行すると、ディレクトリの場所を見つけることができます。
テンプレートは常にクライアントではなくパーサーによって評価されます。つまり、puppetmasterdを使用している場合、テンプレートはサーバー上にあればよく、クライアントにダウンロードする必要はありません。 クライアントがテンプレートを使用することと、ファイルのすべてのコンテンツを文字列として指定することとの間に違いはありません。 これは、puppetの起動段階でクライアント固有の変数がpuppetmasterdによって最初に学習されることを明確に示しています。
テンプレートを使用する
以下は、サイトをテストするためのTomcat設定を生成する例です。
以下はテンプレート定義です。
これにより、各テンプレートファイルが個別のファイルにプッシュされ、Apacheにこれらの構成ファイルを読み込むよう指示するだけで済みます。
テンプレートを結合する
次のコマンドを使用して、2つのテンプレートを簡単に組み合わせることができます。
テンプレートでの反復
Puppetテンプレートは配列反復もサポートしています。 アクセスしている変数が配列である場合、それを反復処理できます。
次のようなテンプレートを作成できます。
上記のコマンドは、次の結果を生成します。
テンプレートの条件
テンプレートと変数
テンプレートを使用して、ファイルの内容を記入するだけでなく、変数を記入することもできます。
未定義の変数
変数を使用する前に定義されているかどうかを確認する必要がある場合、次のコマンドが機能します。
スコープ外の変数
lookupvar関数を使用して、スコープ外の変数を明示的に探すことができます。