Menu Close

3.8. パラメーター

Red Hat Satellite パラメーターは、ホストのプロビジョニング時に使用するキーと値のペアを定義します。これは、Puppet のデフォルトのスコープパラメーターの概念に似ています。Puppet を使用してホストを設定する際にパラメーターを定義することができます。

パラメーターのタイプ

Red Hat Satellite には 2 種類のパラメーターがあります。

単純パラメーター
キーと値ペアの関係を定義する基本的なパラメーターです。ユーザー設定では上書きできませんが、Satellite のパラメーター階層に従って上書きされます。Red Hat Satellite におけるパラメーターは、グローバル、組織レベル、場所レベル、ドメインレベル、サブネットレベル、オペレーティングシステムレベル、ホストグループ、およびホストパラメーターです。
スマートクラスパラメーター
キーの値を定義するだけではなく、特定のオブジェクトタイプの条件付き引数、検証および上書きを可能にする複雑なパラメーターです。Smart class パラメーターを使用すると、Puppet クラスが外部データを取得できるようになります。これらのクラスは Puppet クラスで使用され、Puppet の用語ではパラメーター化されたクラスと呼ばれます。これらのパラメーターの階層は Web UI で設定できます。

以下のパラメーター階層は単純なパラメーターに対して適用されます。

グローバルパラメーター

Satellite のすべてのホストに適用されるデフォルトのパラメーター。「 設定 > グローバルパラメーター」で設定 します。Hammer CLI を使用してグローバルパラメーターを設定するには、以下のコマンドを入力します。

# hammer global-parameter set --name parameter_name --value parameter_value
組織レベルのパラメーター

特定の組織内の全ホストに影響するパラメーター。組織レベルのパラメーターはグローバルパラメーターを上書きします。Administer > Organizations > Edit > Parameters で設定されます。Hammer CLI を使用して組織レベルのパラメーターを設定するには、以下のコマンドを入力します。

# hammer organization set-parameter --organization "Your Organization" \
--name parameter_name --value parameter_value
ロケーションレベルのパラメーター

特定の場所にある全ホストに影響するパラメーター。場所レベルのパラメーターは、組織レベルおよびグローバルパラメーターをオーバーライドします。Administer > Locations > Edit > Parameters で設定されます。Hammer CLI を使用して場所レベルのパラメーターを設定するには、以下のコマンドを入力します。

# hammer location set-parameter --location "Your_Location" \
--name parameter_name --value parameter_value
ドメインパラメーター

指定されたドメインのすべてのホストに影響するパラメーター。ドメインパラメーターは、場所レベルおよびそれ以降のパラメーターを上書きします。インフラストラクチャー > ドメイン > [choose_a_domain] > パラメーターで設定します。Hammer CLI を使用してドメインパラメーターを設定するには、以下のコマンドを入力します。

# hammer domain set-parameter --domain domain_name \
--name parameter_name --value parameter_value
サブネットのパラメーター

特定のサブネットのプライマリーインターフェースを持つ全ホストに影響するパラメーター。サブネットパラメーターは、ホストグループシステムレベルおよびそれ以降のパラメーターを上書きします。インフラストラクチャー > サブネット > [choose_a_subnet] > パラメーターで設定します。Hammer CLI を使用してサブネットパラメーターを設定するには、以下のコマンドを入力します。

# hammer subnet set-parameter --subnet subnet_name \
--name parameter_name --value parameter_value
オペレーティングシステムレベルのパラメーター

特定のオペレーティングシステムを持つすべてのホストに影響するパラメーター。オペレーティングシステムレベルのパラメーターは、ドメインおよびそれ以降のパラメーターを上書きします。ホスト > オペレーティングシステム > [choose_an_operating_system] > パラメーターで設定されます。Hammer CLI を使用してオペレーティングシステムパラメーターを設定するには、以下のコマンドを入力します。

# hammer os set-parameter --operatingsystem os_name \
--name parameter_name --value parameter_value
ホストグループパラメーター

指定したホストグループ内の全ホストに影響するパラメーター。ホストグループのパラメーターは、オペレーティングシステムレベルおよびそれ以降のパラメーターを上書きします。Configure > Host Groups > [choose_a_host_group] > パラメーターで設定されます。Hammer CLI を使用してホストグループパラメーターを設定するには、以下のコマンドを入力します。

# hammer hostgroup set-parameter --hostgroup hostgroup_name \
--name parameter_name --value parameter_value
ホストパラメーター

特定のホストに影響するパラメーター。以前に継承したパラメーターはすべて Parameters サブタブに表示され、上書きできます。ホスト > すべてのホスト > 編集 > パラメーターで設定します。Hammer CLI を使用してホストパラメーターを設定するには、以下のコマンドを入力します。

# hammer host set-parameter --host host_name \
--name parameter_name --value parameter_value

パラメーターと Puppet クラスの使用

Red Hat Satellite では、2 つの方法によって Puppet クラスで使用するためにホストの Puppet マスターに値を指定することができます。

スマート変数
Smart クラスパラメーターを持たないクラスのキーと値の形式で、Puppet マスターにグローバルパラメーターを提供するツール。Puppet マニフェストのパラメーター値を上書きできます。これは、クラスに Smart クラスパラメーターがない場合や、グローバルパラメーターが必要な場合は特別なケースで使用することを目的としています。階層コンテキストやユーザーが適用できるさまざまな条件に応じて、すべて設定可能な値を複数指定できます。Puppet にはパラメーター化されたクラスが含まれる前に存在し、現時点では、検証が必要なグローバルパラメーターの使用、特定の Puppet クラスのみと使用するグローバルパラメーターの使用、および文字列以外のタイプのみに保持されます(単純なパラメーターのみを使用できます)。
パラメーター化クラス
Smart クラスパラメーターを含む Puppet クラス。クラスは Puppet マスターからインポートされ、パラメーター名 $::name (推奨)やパラメーター名は $name、クラスを発行したユーザーが変更できないので、変更できません。これにより、グローバルではなく、特定クラスの変数の値を判断できます。

設定済みのパラメーターは各ホストの対応する YAML ファイルに組み込まれ、Puppet マスターに送信されます。YAML ファイルは、特定のホストのページの Web UI で表示できます。/etc/foreman/settings.yaml 設定ファイルは次回の satellite-installer コマンドを実行する際に上書きされるため、手動で変更しないでください。

重要

パラメーター化されたクラスサポートは、Satellite 6 ではデフォルトで有効になっています。これが有効化されていることを確認するには、Administer > Settings に移動し、Puppet タブを選択して ENC の Parameterized Classes が True に設定され ていることを確認します。