1.5. ネットワークブートのプロビジョニングワークフロー
プロビジョニングプロセスは、基本的な PXE のワークフローに従います。
- ホストを作成して、ドメインとサブネットを選択します。Satellite は、サブネットに関連付けられている DHCP Capsule Server、または Satellite の PostgreSQL データベースから、利用可能な IP アドレスを要求します。次に、Satellite は、この IP アドレスを Create Host ウィンドウの IP address フィールドに投入します。新しいホストのオプションをすべて入力したら、新しいホストリクエストを送信します。
ホストとそのドメインおよびサブネットの設定仕様に応じて、Satellite は次の設定を作成します。
- サブネットに関連付けられた Capsule Server の DHCP レコード
- ドメインに関連付けられた Capsule Server の正引き DNS レコード
- サブネットに関連付けられた DNS Capsule Server の逆引き DNS レコード
- サブネットが関連付けられた TFTP Capsule Server にあるホストの PXELinux、Grub、Grub2、iPXE 設定ファイル
- 関連する Puppet サーバーの Puppet 証明書
- 関連付けられた ID サーバーのレルム
- ホストは、ネットワークから最初のデバイスとして起動し、HDD を 2 番目のデバイスとして起動するように設定されています。
- 新規ホストが DHCP サーバーから DHCP 予約を要求します。
-
DHCP サーバーは予約要求に応答し、TFTP の
next-server、filenameオプションを返します。 - ホストは、PXELoader の設定をもとに、TFTP サーバーからブートローダーやメニューを要求します。
- ブートローダーは TFTP 経由で返されます。
- ブートローダーはプロビジョニングインターフェイスの MAC アドレスを介してホストの設定を取得します。
- ブートローダーはオペレーティングシステムのインストーラーカーネル、初期 RAM ディスク、およびブートパラメーターを取得します。
- インストーラーは Satellite からプロビジョニングテンプレートを要求します。
- Satellite はプロビジョニングテンプレートをレンダリングし、結果をホストに返します。
インストーラーはオペレーティングシステムをインストールします。
- インストーラーは、Subscription Manager を使用してホストを Satellite に登録します。
-
インストーラーは Satellite に対し、
postinstallスクリプトで正常なビルドを通知します。
- PXE 設定ファイルはローカルブートテンプレートに戻ります。
- ホストは再起動します。
- 新規ホストが DHCP サーバーから DHCP 予約を要求します。
-
DHCP サーバーは予約要求に応答し、TFTP の
next-server、filenameオプションを返します。 - ホストは、PXELoader の設定をもとに、TFTP サーバーからブートローダーやメニューを要求します。
- ブートローダーは TFTP 経由で返されます。
- ブートローダーはプロビジョニングインターフェイスの MAC アドレスを介してホストの設定をフェッチします。
- ブートローダーはローカルドライブから起動を開始します。
- Puppet クラスを使用するようにホストを設定した場合、ホストはモジュールを使用して自身を設定します。
完全にプロビジョニングされたホストは、次のワークフローを実行します。
- ホストは、ネットワークから最初のデバイスとして起動し、HDD を 2 番目のデバイスとして起動するように設定されています。
- 新規ホストが DHCP サーバーから DHCP 予約を要求します。
-
DHCP サーバーは予約要求に応答し、TFTP の
next-server、filenameオプションを返します。 - ホストは、PXELoader の設定をもとに、TFTP サーバーからブートローダーやメニューを要求します。
- ブートローダーは TFTP 経由で返されます。
- ブートローダーは、プロビジョニングインターフェイスの MAC アドレスを介してホストの設定を取得します。
BIOS ホストの場合:
- ブートローダーは起動不可能なデバイスを返すため、BIOS は次のデバイスにスキップします (HDD からの起動)。
EFI ホストの場合:
- ブートローダーは ESP パーティションで Grub2 を見つけ、それをチェーンブートします。
- ホストが Satellite に認識されていない場合は、デフォルトのブートローダー設定が提供されます。Discovery サービスが有効になっている場合は、Discovery で起動します。それ以外の場合は、HDD から起動します。
ワークフローはカスタムのオプションにより異なります。以下に例を示します。
- 検出
- 検出サービスを使用している場合は、Satellite は新規ホストの MAC アドレスを自動的に検出し、要求の送信後にホストを再起動します。Satellite でホストを再起動できるように、ホストのアタッチ先の Capsule から TCP ポート 8443 にアクセスできなければならないことに注意してください。
- PXE なしのプロビジョニング
- 新しいホスト要求を送信した後、Satellite からダウンロードし、外部ストレージデバイスを使用して転送したブートディスクを使用して特定のホストを起動する必要があります。
- Compute Resources
-
Satellite は仮想マシンを作成して、MAC アドレスを取得し、Satellite にその MAC アドレスを保存します。イメージベースのプロビジョニングを使用する場合は、ホストは、標準の PXE ブートやオペレーティングシステムのインストールを行うわけではありません。コンピュートリソースは、使用するホストのイメージのコピーを作成します。Satellite のイメージ設定に合わせて、
cloud-initを使用するなど、シードデータを初期設定用に渡すことができます。Satellite は、SSH を使用してホストに接続し、テンプレートを実行してカスタマイズを完了できます。