第5章 プロビジョニング環境の設定
以下のセクションでは hammer
を使用してプロビジョニング環境のあらゆる段階を設定する方法を示します。以下の手順を Web UI で行う手順は『Red Hat Satellite Host Configuration Guide』を参照してください。
5.1. ドメイン
Red Hat Satellite のドメインは DNS ゾーンを表します。Satellite は、Red Hat Satellite Capsule Server DNS を使用してドメイン名を割り当てる機能があります。これにより、特定のドメイン内のホストをグループ化し、名前を指定して、パラメーターや Puppet 変数と関連付けることができます。
新規ドメインを作成するには、以下のコマンドを実行します。
$ hammer domain create --name <domain_name>
hammer organization add-domain
または hammer location add-domain
コマンドを使用して組織と場所に対して、新規作成したドメインを関連付けることができます。ドメインのステータスを表示するには、以下のコマンドを実行します。
$ hammer domain info --name <domain_name>
5.2. サブネット
Red Hat Satellite のサブネットは、システムのグループを指定するネットワークを定義します。サブネットは、標準の IP アドレス設定を使用して、ネットワークを定義、Red Hat Satellite Capsule Server の DHCP 機能を使用して、サブネット内のシステムに IP アドレスを割り当てます。以下のコマンドには、サブネットの作成に最小限必要なオプションが含まれます。
$ hammer subnet create \ --name <subnet_name> \ --organization-ids <org_ID1>,<org_ID2>... \ --location-ids <loc_ID1>,<loc_ID2>... \ --domain-ids <dom_ID1>,<dom_ID2>... \ --boot-mode <boot_mode> \ --network <network_address> \ --mask <netmask> \ --ipam <ipam>
ここでは <boot_mode> は Static
または DHCP
のいずれか、<ipam> は DHCP
, Internal DB
、None
のいずれかを指定します。DHCP を使用する場合は --from
および --to
オプションを使用して IP 範囲を設定してください。設定可能なオプションの完全な一覧は、hammer subnet create --help
コマンドの出力を参照してください。
5.3. アーキテクチャー
Satellite のアーキテクチャーはホストおよびオペレーティングシステムの論理グループを表します。アーキテクチャーを表示するには以下のコマンドを実行します。
$ hammer architecture list
アーキテクチャーは、ホストが Puppet に登録されると自動的に Satellite により登録されるため、(hammer
でこのオプションが提供されていますが) 手動で作成する必要はほぼありません。
5.4. コンピュートリソース
コンピュートリソースは、仮想化およびクラウドプロバイダーからハードウェアを抽象化したものです。Satellite はコンピュートリソースを使用して仮想マシンとコンテナーをプロビジョニングします。以下のコマンドを使用してコンピュートリソースを作成します。
$ hammer compute-resource create \ --name <cr_name> \ --organization-ids <org_ID1>,<org_ID2>... \ --location-ids <loc_ID1>,<loc_ID2>... \ --provider <provider>
ここでは <provider> は RHEV
、RHEL OpenStack Platform
、Libvirt
、Docker
、Rackspace
、Google
、EC2
または VMware
のいずれかを指定します。プロバイダーのタイプに従い、--url
または --user
などの他のオプションが必要な場合もあります。詳細は hammer compute-resource create --help
コマンドの出力を参照してください。
5.5. インストールメディア
インストールメディア (ISO イメージ) では、Red Hat Satellite のキックスタートツリー及び新規ホストインストールのコンテンツを提供します。メディアを表示するには、以下のコマンドを実行します。
$ hammer medium list
新規メディアを追加するには以下のコマンドを実行します。
$ hammer medium create --name <medium_name> --path <path_to_medium>
メディアの追加時 (hammer medium create --help
コマンドの出力参照) または 後ほど hammer organization add-medium
か hammer location add-medium
コマンドを使用して、メディアを組織および場所で直接利用できるようにすることが可能です。
5.6. パーティションテーブル
パーティションテーブルは、システムのプロビジョニング時の新規インストール用のパーティションとファイルシステムのレイアウトを定義します。Red Hat Satellite により、オペレーティングシステムファミリーが関連付けられたデフォルトのパーティションテーブルを提供します。パーティションテーブルを表示するには、以下のコマンドを実行します。
$ hammer partition-table list
新しいパーティションテーブルを作成するには、以下のコマンドを実行します。
$ hammer partition-table create \ --name <table_name> \ --file <path_to_layout_file> \ --os-family <os_family>
他のサブコマンドについては hammer partition-table --help
コマンドを参照してください。
5.7. プロビジョニングテンプレート
テンプレートをプロビジョニングすると、無人インストールをシステム的に実行する手段が提供されます。Satellite が提供するプロビジョニングテンプレートを表示するには以下のコマンドを実行します。
$ hammer template list
新規テンプレートを追加するには以下のコマンドを実行します。
$ hammer template create --name <template_name> --file <path_to_template_file>
他のサブオプションについては hammer template --help
コマンドの出力を参照します。
5.8. オペレーティングシステム
オペレーティングシステムはインストールの方法とメディアの組み合わせを定義して、ファミリーにグループ化します。デフォルトでは、Red Hat Satellite は Red Hat ファミリーを使用します。ファミリーを利用することで、Satellite はホストのプロビジョニング時に特定の動作を変更することができます。オペレーティングシステムを表示するには以下のコマンドを実行します。
$ hammer os list
新規オペレーティングシステムを作成するには、以下のコマンドを実行します。
$ hammer os create --name <os_name> --major <version_number>
次に、アーキテクチャー、パーティションテーブル、インストールメディア、設定テンプレートをオペレーティングシステムに追加することができます。詳細は hammer os --help
の出力を参照してください。
例5.1 複数のオペレーティングシステムの更新
以下のバッシュスクリプトは、各オペレーティングシステムにパーティションテーブル (Kickstart default)、設定テンプレート (Kickstart default PXELinux) およびプロビジョニングテンプレート(Satellite Kickstart Default) を割り当てます。
PARTID=$(hammer --csv partition-table list | grep "Kickstart default" | cut -d, -f1) PXEID=$(hammer --csv template list --per-page=1000 | grep "Kickstart default PXELinux" | cut -d, -f1) SATID=$(hammer --csv template list --per-page=1000 | grep "provision" | grep "Satellite Kickstart Default" | cut -d, -f1) for i in $(hammer --csv os list | grep -vi '^ID' | awk -F, {'print $1'}) do hammer partition-table add-operatingsystem --id="${PARTID}" --operatingsystem-id="${i}" hammer template add-operatingsystem --id="${PXEID}" --operatingsystem-id="${i}" hammer os set-default-template --id="${i}" --config-template-id="${PXEID}" hammer os add-config-template --id="${i}" --config-template-id="${SATID}" hammer os set-default-template --id="${i}" --config-template-id="${SATID}" done
for ステートメントに grep
コマンドを追加して、影響を受けるオペレーティングシステムをさらに指定することができます。割当が正しく行われたかどうかを確認するには hammer os info
コマンドを実行します。
5.9. パラメーター
パラメーターは、プロビジョニング時の Red Hat Satellite の動作を定義します。パラメーターは複数ありますが、詳細は『Red Hat Satellite Host Configuration Guide』を参照してください。以下の例を使用してグローバルパラメーターを設定します。
$ hammer global-parameter set --name <param_name> --value <param_value>
例5.2 ファイアウォールを無効化するためのグローバルパラメーターの設定
以下のコマンドを実行して firewall のグローバルオプションを disabled に設定します。
$ hammer global-parameter set --name firewall --value --disabled
設定を確認するには、以下のコマンドを実行します。
$ hammer global-parameter list ---------|------------- NAME | VALUE ---------|------------- firewall | --disabled ---------|-------------
同様に hammer
を使用して他のパラメータータイプを設定することができます。
- ドメインパラメーターを設定するには以下を使用します。
$ hammer domain set-parameter \ --name <param_name> \ --value <param_value> \ --domain <domain_name>
- ホストグループのパラメーターを設定するには、以下を使用します。
$ hammer hostgroup set-parameter \ --name <param_name> \ --value <param_value> \ --hostgroup <hg_name>
- ホストパラメーターを設定するには以下を使用します。
$ hammer host set-parameter \ --name <param_name> \ --value <param_value> \ --host <h_name>
- スマートクラスパラメーターを更新するには以下を使用します。
$ hammer sc-param \ --name <param_name> \ --default-value <param_value>