第6章 ベアメタルホストのプロビジョニング
本章では、Red Hat Satellite 6 でベアメタルインスタンスをプロビジョニングする主な方法について説明します。これらには以下が含まれます。
- 無人プロビジョニング (Unattended Provisioning): MAC アドレスでホストを特定し、Satellite Server は PXE ブートプロセスでプロビジョニングを実行します。
- Discovery を使用した無人プロビジョニング (Unattended Provisioning with Discovery): 新規ホストは PXE ブートを使用して Satellite Discovery サービスをロードします。このサービスはホストのハードウェア情報を特定し、ホストをプロビジョニング可能なホストとして一覧表示します。
- PXE を使用しないプロビジョニング (PXE-less Provisioning): ブートディスクまたは Satellite Server が生成する PXE なしの Discovery イメージを使用して新規ホストをプロビジョニングする機能です。
- Discovery を使用した PXEを使用しないプロビジョニング (PXE-less Provisioning with Discovery): 新規ホストは Satellite Discovery サービスをロードする ISO ブートディスクを使用します。このサービスはホストのハードウェア情報を特定し、ホストをプロビジョニング可能なホストとして一覧表示します。
Red Hat Satellite の以前のバージョンでは、プロビジョニング時にホストグループベースのテンプレートのレンダリング機能を使用できました。この機能により、ユーザーは単一ホストではなくホストグループのテンプレートをレンダリングできました。しかしながら、この機能は、ホストのレコードまたは監査証跡がないなどの多少の制限により Red Hat Satellite 6.3 ではサポートされていません。そのため、同様の機能を提供する Discovery 機能を使用することをお勧めします。
6.1. ベアメタルプロビジョニングの要件定義
ベアメタルプロビジョニングの要件には以下が含まれます。
- Red Hat Enterprise Linux 7 の同期済みのコンテンツリポジトリー。詳細は、『コンテンツ管理ガイド』 の 「Red Hat リポジトリーの同期」 を参照してください。
- ベアメタルホストのネットワークを管理する Capsule Server。無人プロビジョニングおよび Discovery ベースのプロビジョニングの場合、Satellite Server には PXE サーバーの設定が必要です。詳細は、4章ネットワークの設定 を参照してください。
- ホスト登録のためのアクティべーションキーのサンプル。詳細は、「アクティベーションキーの作成」 を参照してください。
- テスト目的で使用する空のベアメタルホスト。
6.2. 無人プロビジョニングによる新規ホストの作成
無人プロビジョニングは、ホストのプロビジョニングの最も単純な形態です。この方法では、ホストの詳細を Satellite Server に入力し、ホストを起動する必要があります。Satellite Server は PXE 設定の管理や、ネットワークサービスの整理、およびホストのオペレーティングシステムと設定の提供を自動的に実行します。このプロビジョニングの方法では、プロセス時に最小限の対話を使用します。
このシナリオでは、ホストを ACME のプライベートネットワークでプロビジョニングする方法を示します。この例では、ベアメタルホストが ACME のプライベートネットワーク (192.168.140.0/24) に接続し、MAC アドレスとしての aa:aa:aa:aa:aa:aa
を持つインターフェースを使用します。
Web UI を使用する場合
ホスト > ホストの作成 に移動します。UI には、ホストの詳細を入力できる一連のフィールドがあります。
ホスト タブ:
-
ホストの 名前 を入力します。これはプロビジョニングされたシステムのホスト名になります。この例では、
baremetal-test1
と入力します。 -
プロビジョニングコンテキスト (組織 および ロケーション) は
ACME
およびNew York
に自動的に設定されます。 -
ホストグループ フィールドから
Base
を選択します。これにより、新規ホストのほとんどのフィールドが自動的に設定されます。
-
ホストの 名前 を入力します。これはプロビジョニングされたシステムのホスト名になります。この例では、
インターフェース タブ:
- ホストのインターフェースの 編集 をクリックします。
ほとんどのフィールドには、値が自動的に含まれるはずです。特に以下の点に注意してください。
- ホスト タブの 名前 は DNS 名 になります。
- Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
-
ホストの MAC アドレスを入力します。この例では、MAC アドレスは
aa:aa:aa:aa:aa:aa
です。これは、PXE ブートのプロセス時のホストの識別に必要となるため重要です。 - Satellite Server は、ホストの最初のインターフェースで Managed (管理)、Primary、および Provision オプションを自動的に選択するはずです。選択されていない場合は、それらを選択してください。
オペレーティングシステム タブ:
- すべてのフィールドには値が自動的に含まれるはずです。オペレーティングシステムの各要素を確認してください。
プロビジョニングテンプレート の 解決 をクリックし、新規ホストが使用する適切なプロビジョニングテンプレートを特定できることを確認します。これには、以下が含まれます。
-
PXELinux テンプレート:
Kickstart default PXELinux
provision テンプレート:
Satellite Kickstart Default
プロビジョニングテンプレートの関連付けについての詳細は、「プロビジョニングテンプレートの作成」 を参照してください。
-
PXELinux テンプレート:
パラメーター タブ:
-
kt_activation_keys
パラメーターが存在し、サンプル
のアクティべーションキーを使用していることを確認します。
-
送信 をクリックします。
CLI を使用する場合
hammer host create
コマンドでホストを作成します。以下は例になります。
# hammer host create --name "baremetal-test1" --organization "ACME" \ --location "New York" --hostgroup "Base" --mac "aa:aa:aa:aa:aa:aa" \ --build true --enabled true --managed true
hammer host interface update
コマンドを使用し、ネットワークインターフェースのオプションが設定されていることを確認します。以下は例になります。
# hammer host interface update --host "test1" --managed true \ --primary true --provision true
これで、ホストのエントリーおよび関連するプロビジョニングの設定が作成されます。これには、PXE を使用したベアメタルホストの起動に必要なディレクトリーおよびファイルを作成することも含まれます。物理ホストの電源をオンにして、ブートモードを PXE に設定すると、ホストは Satellite Server の統合 Capsule の DHCP サービスを検出し、キックスタートツリーから Red Hat Enterprise Linux 7.2 のインストールを開始します。インストールが完了すると、ホストは サンプル
アクティべーションキーを使用して Satellite Server にも登録し、Red Hat Satellite Tools リポジトリーから必要な設定および管理ツールをインストールします。
6.3. Red Hat Satellite の Discovery サービスの設定
Red Hat Satellite は Discovery 機能を提供します。これにより、ネットワーク上の空のホストを自動的に検出できるようになります。これらのホストは、ハードウェアの検出を実行し、この情報を Satellite Server に送り返す特殊なイメージを起動します。これにより、各ホストの MAC アドレスを入力せずに Satellite Server でプロビジョニング可能なホストのプールの作成を実行できます。
インストール
Discovery サービスを使用する前に、Satellite Server に Discovery イメージをインストールし、Discovery プラグインを有効にする必要があります。
satellite-installer
コマンドで --enable-foreman-plugin-discovery
オプションを使用してプラグインを有効にします。
# satellite-installer --enable-foreman-plugin-discovery
これにより、Satellite Server に Discovery サービスプラグインがインストールされ、有効にされます。インストールの完了後に以下のパッケージをインストールします。
# yum install foreman-discovery-image rubygem-smart_proxy_discovery
-
foreman-discovery-image
パッケージは、Discovery ISO を/usr/share/foreman-discovery-image/
ディレクトリーにインストールし、livecd-iso-to-pxeboot
ツールを使用してこの ISO から PXE ブートイメージも作成します。ツールはこの PXE ブートイメージを/var/lib/tftpboot/boot
ディレクトリーに保存します。 -
rubygem-smart_proxy_discovery
パッケージは、Capsule Server (Satellite Server の統合 Capsule など) が Discovery サービスのプロキシーとして機能するように設定します。
インストールの完了後に、新規メニューオプションが Satellite Server の Web UI の ホスト > Discovered ホスト の下に表示されます。
Capsule Server での Discovery サービスの有効化
以下の手順を実行し、Capsule Server で Discovery サービスを有効にします。
必要な Capsule Server で以下のコマンドを順番に実行します。
# yum install foreman-discovery-image rubygem-smart_proxy_discovery -y
# katello-service restart
- Satellite Web UI にログインし、インフラストラクチャー > Capsule (スマートプロキシー) に移動します。
- Capsule Server をクリックし、リフレッシュボタンをクリックします。Capsule Server は実行済みのコマンドに対応します。設定されたサービスを見ると、Discovery が一覧表示されているのがわかります。これは、Discovery サービスが実行されていることを意味します。
プロビジョニングテンプレート
ホスト > プロビジョニングテンプレート セクションの PXELinux global default
テンプレートには、Discovery サービスのエントリーが含まれています。
LABEL discovery MENU LABEL (discovery) KERNEL boot/fdi-image-rhel_7-vmlinuz APPEND initrd=boot/fdi-image-rhel_7-img rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=https://SATELLITE_CAPSULE_URL:9090 proxy.type=proxy IPAPPEND 2
KERNEL
と APPEND
オプションは、Discovery イメージおよび ramdisk を起動します。また、APPEND
オプションには、プロビジョニングに使用する Capsule Server の URL を指定する proxy.url
パラメーターが含まれることに注意してください。SATELLITE_CAPSULE_URL
を必要なプロビジョニング Capsule の名前に編集します。このシナリオでは、これは Satellite Server の統合 Capsule になります。
proxy.url=https://satellite.example.com:9090
Discovery サービスを空のホストに対して起動するデフォルトサービスに変更することができます。PXELinux global default
の ONTIMEOUT 値を以下のように編集します。
ONTIMEOUT Discovery
ここでは、PXELinux global default
テンプレートから Satellite Server のデフォルト PXE テンプレートへの変更をプッシュする必要があります。ホスト > プロビジョニングテンプレート に移動し、PXE デフォルトのビルド をクリックします。これにより、Satellite Server でデフォルトの PXE テンプレートがリフレッシュされます。
サブネット
Discovery 可能なホストを含むすべてのサブネットでは、Discovery サービスを提供するために適切な Capsule Server が選択されている必要があります。これを実行するには、インフラストラクチャー > Capsule に移動し、使用したい Capsule Server が Discovery 機能を一覧表示するか確認します。一覧表示がない場合は、Refresh features (機能のリフレッシュ) をクリックすると、それがすぐに表示されます。
インフラストラクチャー > サブネット に移動してサブネットを選択します。次に Capsule タブをクリックし、使用したい Discovery プロキシー を選択します。該当するそれぞれのサブネットにこれを実行します。
Testing (テスト)
192.168.140.0/24 ネットワークで Discovery サービスをテストし、空のベアメタルホストを起動します。ブートメニューが表示され、2 つのオプションが表示されます。
-
(local)
: ハードディスクから起動します。 -
(discovery)
: Discovery サービスで起動します。
(discovery)
を選択して Discovery イメージを起動します。数分後に Discovery イメージの起動を完了すると、ステータス画面が表示されます。
ホスト > Discovered ホスト に移動します。一覧には新たに Discovered ホストが含まれます。Discovered ホストは MAC アドレスに基づいてホスト名を自動的に定義します。たとえば、Satellite は、MAC アドレスの ab:cd:ef:12:34:56 を持つ Discovered ホストのホスト名が macabcdef123456
となるように設定します。このホスト名は、ホストのプロビジョニング時に変更することができます。
Satellite Server は以下のルールに従って、組織とロケーションを Discovered ホストに割り当てます (上から下の順)。
-
Discovery 組織
またはDiscovery ロケーション
の設定 (ある場合)。これらは 管理 > 設定 > Discovered で設定できます。 -
ホストの
foreman_organization
またはforeman_location
ファクトの設定。検索されるファクト名は 管理 > 設定 > Puppet セクションで、デフォルト 組織 および デフォルト ロケーション のファクト設定として設定できます。 - Discovered ホストが Satellite で定義されるサブネットを使用する場合、サブネットに関連付けられた最初の組織およびロケーションを使用します。
- 名前順で最初にリストされた組織とロケーションを選択します。
組織またはロケーションは、Discovered ホスト ページの一括処理メニューを使用して変更できます。Discovered ホストを選択し、アクションの選択 メニューから 組織の割り当て または ロケーションの割り当て を選択します。
6.4. Discovered ホストからの新規ホストの作成
Discovered ホストのプロビジョニングは、PXE のプロビジョニングと同様のプロビジョニングプロセスを踏みます。主な違いは、ホストの MAC アドレスを手動で入力する代わりに、Discovered ホストの一覧からプロビジョニングするホストを選択できる点です。
Web UI を使用する場合
ホスト > Discovered ホスト に移動します。これにより、ACME の Discovered ホストの一覧が表示されます。いずれかのホストを選択し、一覧の右側にある Provision (プロビジョニング) をクリックします。UI には、ホストの詳細を入力できる一連のフィールドがあります。
ホスト タブ:
-
ホストの新規の 名前 を入力します。これはプロビジョニングされたシステムのホスト名になります。この例では、
baremetal-test2
と入力します。 -
プロビジョニングコンテキスト (組織 および ロケーション) は
ACME
およびNew York
に自動的に設定されます。 -
ホストグループ フィールドから
Base
を選択します。これにより、新規ホストのほとんどのフィールドが自動的に設定されます。
-
ホストの新規の 名前 を入力します。これはプロビジョニングされたシステムのホスト名になります。この例では、
インターフェース タブ:
- ホストのインターフェースの 編集 をクリックします。
ほとんどのフィールドには、値が自動的に含まれるはずです。特に以下の点に注意してください。
- ホスト タブの 名前 は DNS 名 になります。
- Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
- Satellite Server は Discovery の結果より MAC アドレスを自動的に設定します。
- 詳細を確認します。
- Satellite Server は、ホストについて Managed (管理)、Primary、および Provision オプションを自動的に選択するはずです。選択されていない場合は、それらを選択してください。
オペレーティングシステム タブ:
- すべてのフィールドには値が自動的に含まれるはずです。オペレーティングシステムの各要素を確認してください。
プロビジョニングテンプレート の 解決 をクリックし、新規ホストが使用する適切なプロビジョニングテンプレートを特定できることを確認します。これには、以下が含まれます。
-
PXELinux テンプレート:
Kickstart default PXELinux
-
provision テンプレート:
Satellite Kickstart Default
-
PXELinux テンプレート:
プロビジョニングテンプレートの関連付けについての詳細は、「プロビジョニングテンプレートの作成」 を参照してください。
パラメーター タブ:
-
kt_activation_keys
パラメーターが存在し、サンプル
のアクティべーションキーを使用していることを確認します。 - 送信 をクリックします。
-
CLI を使用する場合
プロビジョニングに使用する Discovered ホストを特定します。
# hammer discovery list
ホストを選択し、これをプロビジョニングするために
Base
ホストグループを使用します。--new-name
オプションを使用して新規のホスト名を設定します。# hammer discovery provision --name "macaaaaaaaaaaaa" \ --new-name "baremetal-test2" \ --hostgroup "Base" --build true \ --enabled true --managed true
これにより、Discovered ホストの一覧からホストが削除され、関連するプロビジョニング設定でホストのエントリーが作成されます。Discovery イメージはホストを自動的にリセットし、ホストが PXE で起動できるようにします。ホストは Satellite Server の統合 Capsule で DHCP サービスを検出し、キックスタートツリーから Red Hat Enterprise Linux 7.2 のインストールを開始します。インストールが完了すると、ホストは
サンプル
アクティべーションキーを使用して Satellite Server にも登録し、Red Hat Satellite Tools リポジトリーから必要な設定および管理ツールをインストールします。
6.5. Discovery ルールの作成
Discovered ホストのプロビジョニングプロセスの自動化方法として、Red Hat Satellite 6 は Discovery ルールを作成する機能を提供します。これらのルールは、Discovered ホストが、割り当てられたホストグループをベースに自らを自動的にプロビジョニングする方法を定義します。たとえば、CPU 数の多いホストをハイパーバイザーとして自動的にプロビジョニングすることができます。同様に、ハードディスクが大容量のホストは、ストレージサーバーとしてプロビジョニングすることもできます。
現在、自動プロビジョニングでは NIC の設定を許可していません。すべてのシステムは、Discovery の際に検出された NIC 設定でプロビジョニングされています。しかし、NIC は Anaconda キックスタート、スクリプトレット、または設定管理を使用して後で設定することができます。
Web UI を使用する場合
ルールを作成するには、設定 > Discovery ルール に移動します。これにより、既存ルールの一覧が表示されます。新規ルール を選択すると、UI にルールの詳細を入力する一連のフィールドがあります。
-
名前: ルールを表すテキスト形式の名前。例:
Hypervisor
-
検索 - ホストをプロビジョニングするかどうかを決定するためのルール。このフィールドには、入力する値についての推奨案が提供され、複数のルールに演算子を使用できます。例:
cpu_count > 8
- ホストグループ - このホストのテンプレートとして使用するホストグループ。
ホスト名 - 複数ホストのホスト名を決定するパターンです。これはプロビジョニングテンプレートと同じ ERB 構文を使用します。ホスト名には、ホスト固有の値に
@host
属性を使用したり、乱数にrand
関数を使用したりできます。以下に例を示します。-
myhost-<%= rand(99999) %>
-
abc-<%= @host.facts['bios_vendor'] + '-' + rand(99999).to_s %>
-
xyz-<%= @host.hostgroup.name %>
-
srv-<%= @host.discovery_rule.name %>
-
server-<%= @host.ip.gsub('.','-') + '-' + @host.hostgroup.subnet.name %>
rand()
関数は、ストリングと連結できない整数を返します。したがって、この例ではto_s
関数の呼び出しが必要な点に注意してください。ホスト名のパターンを作成する際に、作成されるホスト名が固有の名前であることを確認してください。ホスト名は数字で始めることができません。また、アンダースコアあるいはドットを含むこともできません。適切な方法は、Facter が提供する固有の情報 (MAC アドレス、BIOS、またはシリアル ID など) を使用することです。-
- ホストの制限: ルールを使ってプロビジョニングできるホストの最大数。無制限に設定するには 0 を使用します。
- 優先度 - ルール間の優先度です。値が低いルールほど優先度が高くなります。
- 有効化 - ルールの有効化。
Satellite Server はルールの現在のプロビジョニングコンテキストを使用します。追加のコンテキストは、組織 および ロケーション タブで選択できます。
送信 をクリックしてルールを保存します。
ホスト > Discovered ホスト に移動し、以下のいずれかを選択します。
-
Auto-Provision (自動プロビジョニング)
: 右側の Discovered ホストのメニューにあります。これは単一ホストを自動的にプロビジョニングします。 -
Auto-Provision All (すべてを自動プロビジョニング)
: 表の右上にあります。これはすべてのホストを自動的にプロビジョニングします。
CLI を使用する場合
hammer discovery_rule create
コマンドを使用してルールを作成します。
# hammer discovery_rule create --name "Hypervisor" \ --search "cpu_count > 8" --hostgroup "Base" \ --hostname "hypervisor-<%= rand(99999) %>" \ --hosts-limit 5 --priority 5 --enabled true
hammer discovery auto-provision
コマンドを使用してホストを自動的にプロビジョニングします。
# hammer discovery auto-provision --name "macabcdef123456"
6.6. PXE を使用しないプロビジョニングによる新規ホストの作成
一部のハードウェアは PXE ブートインターフェースを提供しません。Red Hat Satellite 6 は、PXE を使用しない Discovery サービスを提供します。これは、PXE ベースサービス (DHCP と TFTP) を必要とせずに機能するものです。PXE ブートなしに新規ホストをプロビジョニングすることができます。これは、PXE を使用しないプロビジョニングとしても知られ、ホストが使用できるブート ISO の生成に関係しています。この ISO により、ホストは Satellite Server に接続してインストールメディアを起動し、オペレーティングシステムをインストールできます。
ブート ISO には 4 つのタイプがあります。
ホストイメージ - 特定ホストのブート ISO。このイメージには、Satellite Server でインストールメディアにアクセスするために必要なブートファイルのみが含まれます。ユーザーが Satellite のサブネットデータを定義し、静的ネットワークでイメージが作成されます。
完全ホストイメージ - 特定ホストのカーネルおよび初期 RAM ディスクイメージを含むブート ISO。このイメージは、ホストが正しくチェーンロードできない場合に役立ちます。プロビジョニングのテンプレートは、現在も Satellite Server からダウンロードされます。
汎用イメージ - 特定ホストに関連付けられていないブート ISO。ISO はホストの MAC アドレスを Satellite Server に送信します。ここでは、ホストのエントリーに対してマッチングが行われます。イメージは、IP アドレスの詳細を保存しません。また、ブートストラップするためにネットワークの DHCP サーバーへのアクセスを必要とします。このイメージは、Satellite Server の /bootdisk/disks/generic
URL からも利用できます。例: https://satellite.example.com/bootdisk/disks/generic
サブネットイメージ - 汎用イメージと類似するが、Capsule Server のアドレスで設定されるブート ISO。このイメージは、同じサブネットのプロビジョニングした NIC を伴うすべてのホストに対して汎用性があります。
Web UI を使用する場合
ホスト > ホストの作成 に移動します。UI には、ホストの詳細を入力できる一連のフィールドがあります。
ホスト タブ:
-
ホストの 名前 を入力します。これはプロビジョニングされるシステムのホスト名になります。この例では、
baremetal-test3
と入力します。 -
プロビジョニングコンテキスト (組織 および ロケーション) は
ACME
およびNew York
に自動的に設定されます。 -
ホストグループ フィールドから
Base
を選択します。これにより、新規ホストのほとんどのフィールドが自動的に設定されます。
-
ホストの 名前 を入力します。これはプロビジョニングされるシステムのホスト名になります。この例では、
インターフェース タブ:
- ホストのインターフェースの 編集 をクリックします。
ほとんどのフィールドには、値が自動的に含まれるはずです。特に以下の点に注意してください。
- ホスト タブの 名前 は DNS 名 になります。
- Satellite Server は新規ホストの IP アドレスを自動的に割り当てます。
-
ホストの MAC アドレスを入力します。この例では、MAC アドレスは
aa:aa:aa:aa:aa:aa
です。 - Satellite Server は、ホストについて Managed (管理)、Primary、および Provision オプションを自動的に選択するはずです。選択されていない場合は、それらを選択してください。
オペレーティングシステム タブ:
- すべてのフィールドには値が自動的に含まれるはずです。オペレーティングシステムの各要素を確認してください。
プロビジョニングテンプレート の 解決 をクリックし、新規ホストが使用する適切なプロビジョニングテンプレートを特定できることを確認します。これには、以下が含まれます。
-
bootdisk テンプレート:
Boot disk iPXE - host
-
kexec テンプレート:
Discovery Red Hat kexec
-
provision テンプレート:
Satellite Kickstart Default
-
bootdisk テンプレート:
プロビジョニングテンプレートの関連付けについての詳細は、「プロビジョニングテンプレートの作成」 を参照してください。
パラメーター タブ:
-
kt_activation_keys
パラメーターが存在し、サンプル
のアクティべーションキーを使用していることを確認します。
-
送信 をクリックします。
これにより、ホストのエントリーが作成され、ホストの詳細ページが表示されます。ページ右上のオプションには ブートディスク メニューが表示され、ダウンロード用として以下から 1 つのイメージが提供されます。イメージとは、ホストイメージ、完全ホストイメージ、汎用イメージ、および サブネットイメージ の 4 つです。
完全ホストイメージ は SYSLINUX をベースとし、ほとんどのハードウェアと機能します。iPXE ベースのブートディスク (ホストイメージ、汎用イメージ、または サブネットイメージ) を使用する際は、http://ipxe.org/appnote/hardware_drivers のページで、PXE ベースのブートディスクと機能することが見込まれるハードウェアドライブの一覧を参照してください。
CLI を使用する場合
hammer host create
コマンドでホストを作成します。以下は例になります。
# hammer host create --name "baremetal-test3" --organization "ACME" \ --location "New York" --hostgroup "Base" --mac "aa:aa:aa:aa:aa:aa" \ --build true --enabled true --managed true
hammer host interface update
コマンドを使用し、ネットワークインターフェースのオプションが設定されていることを確認します。以下は例になります。
# hammer host interface update --host "test3" --managed true \ --primary true --provision true
hammer bootdisk host
コマンドで Satellite Server からブートディスクをダウンロードします。
ホストイメージ 向け。
# hammer bootdisk host --host test3.example.com
完全ホストイメージ 向け。
# hammer bootdisk host --host test3.example.com --full true
汎用イメージ 向け。
# hammer bootdisk generic
サブネットイメージ 向け。
# hammer bootdisk subnet --subnet subnetName
これによりホストで使用するブート ISO が作成されます。必要に応じて、dd ユーティリティーまたは livecd-tools を使用して ISO を USB ストレージデバイスに書き込みます。 物理ホストの電源をオンにして ISO または USB ストレージデバイスから起動する場合、ホストは Satellite Server に接続し、キックスタートツリーからの Red Hat Enterprise Linux 7.2 のインストールを開始します。インストールが完了すると、ホストは サンプル
アクティべーションキーを使用して Satellite Server にも登録し、Red Hat Satellite Tools リポジトリーから必要な設定および管理ツールをインストールします。
6.7. PXE を使用しない Discovery の実装
Red Hat Satellite 6 は、PXE ベースのサービス (DHCP および TFTP) を必要とせずに機能する PXE を使用しない Discovery サービスを提供します。これは、Satellite Server の Discovery イメージを使用して実行できます。
Discovery サービスまたはイメージをインストールしていない場合は、「Red Hat Satellite の Discovery サービスの設定」 の 「インストール」 セクションに従います。
Discovery サービスの ISO は /usr/share/foreman-discovery-image/
にあり、foreman-discover-image
パッケージを使用してインストールされます。
手動による使用
この ISO は起動可能なメディアとして機能します。このメディアを CD、DVD、または USB スティックのいずれかにコピーします。たとえば、/dev/sdb
の USB スティックにコピーするには、以下を実行します。
# dd bs=4M \ if=/usr/share/foreman-discovery-image/foreman-discovery-image-3.1.1-10.iso \ of=/dev/sdb
Discovery ブートメディアをベアメタルホストに挿入してホストを開始し、メディアから起動します。Discovery イメージには、Manual network setup または Discovery with DHCP のいずれかのオプションが表示されます。
Manual network setup を選択する場合、Discovery イメージはネットワークオプションのセットを要求します。これには、Satellite Server に接続されるプライマリーネットワークインターフェースが含まれます。この Discovery イメージは、IPv4 アドレス、IPv4 ゲートウェイ および IPv4 DNS サーバーなどのネットワークインターフェースの設定オプションも要求します。一例として、ACME は以下の詳細を使用する可能性があります。
- IPv4 Address: 192.168.140.20
- IPv4 Gateway: 192.168.140.1
IPv4 DNS: 192.168.140.2 (Satellite Server の 統合 Capsule)
これらの詳細を入力した後に、次へ を選択します。
- Discovery with DHCP を選択する場合、Discovery イメージは Satellite Server に接続されるプライマリーネットワークインターフェースのみを要求します。このサービスは、Capsule Server が提供するサーバーなどの DHCP サーバーを使用してネットワークインターフェースを自動的に設定しようとします。
プライマリーインターフェースの設定後に、Discovery イメージは、Discovery サービスを提供する Satellite Server または Capsule Server の URL である サーバー URL を要求します。たとえば、ACME の Satellite Server で統合 Capsule を使用するには、以下の URL を使用します。
https://satellite.example.com:9090
さらに Connection type を Proxy
に設定します。設定後は 次へ を選択します。
Discovery イメージは、Facter ツールが Satellite Server に送り戻す Custom facts (カスタムファクト) を入力するための一連のフィールドも提供します。これらは 名前-値 の形式で入力されます。要求したカスタムファクトを指定し、確認 を選択して継続します。
Satellite は Satellite Server の Discovery サービスとの正常な通信を報告します。ホスト > Discovered ホスト に移動します。一覧には、新規に Discovered ホストが含まれます。
Discovered ホストをプロビジョニングするには、「Discovered ホストからの新規ホストの作成」 を参照してください。
無人での使用およびカスタマイズ
起動後のイメージの設定プロセスを自動化するカスタマイズされた Discovery ISO を作成することができます。Discovery イメージはオペレーティングシステムの Linux カーネルを使用します。これは、イメージのオペレーティングシステムを設定するためにカーネルパラメーターを渡すことを意味します。これらのカーネルパラメーターには以下が含まれます。
- proxy.url
- Discovery サービスを提供する Capsule Server の URL。
- proxy.type
-
プロキシーのタイプ。通常、これは Capsule Server に接続するために
proxy
に設定されます。このパラメーターはレガシーのForeman
オプションもサポートします。この場合、Capsule Server ではなく Satellite Server との通信が直接行われます。 - fdi.pxmac
-
プライマリーインターフェースの MAC アドレス (
AA:BB:CC:DD:EE:FF
形式)。これは Capsule Server との通信に使用するインターフェースです。自動化モードでは、リンクを含む最初の NIC (ネットワーク ID をアルファベット順に使用) が使用されます。準自動化モードでは、画面が表示され、正しいインターフェースを選択するよう求められます。 - fdi.pxip, fdi.pxgw, fdi.pxdns
-
プライマリーネットワークインターフェースの IP アドレス (
fdi.pxip
)、ゲートウェイ (fdi.pxgw
)、および DNS (fdi.pxdns
) を手動で設定します。これらのパラメーターを省略する場合、イメージは DHCP を使用してネットワークインターフェースを設定します。 - fdi.pxfactname1, fdi.pxfactname2 … fdi.pxfactnameN
- カスタムファクト名を指定できます。
- fdi.pxfactvalue1, fdi.pxfactvalue2 … fdi.pxfactvalueN
-
各カスタムファクトの値。それぞれの値はファクト名に対応しています。たとえば、
fdi.pxfactvalue1
は、fdi.pxfactname1
の名前が付けられたファクトの値を設定します。 - fdi.pxauto
- 自動化モードまたは準自動化モードを設定します。0 に設定される場合、イメージは準自動化モードを使用します。これにより、一連のダイアログオプションによって選択肢を確認することができます。1 に設定される場合、イメージは自動化モードを使用し、確認なしに次に進みます。
Satellite Server は、foreman-discovery-image
パッケージでツール (discovery-remaster
) も提供します。このツールは、カーネルパラメーターを含めるようにイメージのマスターを新たに作成します。イメージのマスターを新たに作成するには、discovery-remaster
ツールを実行します。以下は例になります。
# discovery-remaster ~/iso/foreman-discovery-image-3.1.1-10.iso \ "fdi.pxip=192.168.140.20/24 fdi.pxgw=192.168.140.1 \ fdi.pxdns=192.168.140.2 proxy.url=https://satellite.example.com:9090 \ proxy.type=proxy fdi.pxfactname1=customhostname \ fdi.pxfactvalue1=myhost fdi.pxmac=52:54:00:be:8e:8c fdi.pxauto=1"
ツールは、元の Discovery イメージと同じディレクトリーに新規の ISO ファイルを作成します。このシナリオでは、 /usr/share/foreman-discovery-image/
の下に保存されます。
このメディアを CD、DVD、または USB スティックのいずれかにコピーします。たとえば、/dev/sdb
の USB スティックにコピーするには、以下を実行します。
# dd bs=4M \ if=/usr/share/foreman-discovery-image/foreman-discovery-image-3.1.1-10.iso \ of=/dev/sdb
Discovery ブートメディアをベアメタルホストに挿入してホストを開始し、メディアから起動します。
Discovered ホストをプロビジョニングするには、「Discovered ホストからの新規ホストの作成」 を参照してください。
最終メモ
ホストは以下のプロビジョニングテンプレートに対して解決される必要があります。
-
kexec テンプレート:
Discovery Red Hat kexec
-
provision テンプレート:
Satellite Kickstart Default
プロビジョニングテンプレートの関連付けについての詳細は、「プロビジョニングテンプレートの作成」 を参照してください。
6.8. 本章のまとめ
本章では、ベアメタルホストのプロビジョニングについて説明しました。たとえば、無人プロビジョニング、Discovery ベースのプロビジョニング、および PXE を使用しないプロビジョニングなど、複数の異なる方法を紹介しました。カーネルベースの仮想マシン (KVM) サーバー、Red Hat Virtualization、および VMware vSphere などの仮想化インフラストラクチャーからホストをプロビジョニングする際には、これらの方法の一部を使用することができます。
次章では、libvirt
仮想化を使用した KVM サーバーからのプロビジョニング方法について説明します。