Menu Close
3.11. 複数のカスタムファクトの使用
以下は、Puppet Smart クラスパラメーター matcher で複数のカスタムファクトを作成して使用する例です。
前提条件
- Puppet 環境をインポートし、Satellite にスマートクラスを使用する Puppet モジュールがある。
- クライアントがプロビジョニングされ、Satellite に登録されている。
Satellite でプロビジョニングされていないクライアントについては、で説明されているようにクライアントが設定されていることを確認してください 「既存のクライアントへの設定の適用」。
クライアントで、2 つ以上のカスタムファクトを作成し、値を割り当てます。例を示します。
# vi /etc/facter/facts.d/my_custom_facts #! /bin/bash echo example_fact1=myfact1 echo example_fact2=myfact2
クライアントで、ファイルパーミッションを設定します。
# chmod a+x /etc/facter/facts.d/my_custom_facts
クライアントでファクトとそれらの適切な値を確認します。
# facter | grep example example_fact1 => myfact1 example_fact2 => myfact2
Satellite Web UI にログインします。
- Configure > Classes に移動し、設定する Puppet クラスを選択します。
- Smart Class Parameter タブをクリックし、上書きするパラメーターを選択します。
- Default Behavior エリアで Override チェックボックスを選択します。
-
Prioritize Attribute Order エリアの Order フィールドに、サンプルファクトをリストの最後に追加します。2 つのファクト間に論理 AND 条件を作成するには、コンマ区切りリストとして追加し
example_fact1,example_fact2
ます。 - Matcher の追加
-
Attribute type メニューから、
=
記号の後にexample_fact1,example_fact2
およびを選択しますmyfact1,myfact2
。 - 2 つの属性とそれらの値に対して一致が確立された場合に 、 コンテンツホストに送信する値を入力します。
- Submit をクリックします。
クライアントでファクトをクライアントから Puppet マスターに送信します。
# puppet agent --test
Satellite Web UI にログインします。
- Hosts > Content Hosts に移動し、コンテンツホストの名前を選択します。
-
YAML をクリックし、
classes
セクションを見つけます。パラメーターの値がパラメーターにあることを確認します。