第5章 プロビジョニング時間を削減するための iPXE の設定

以下の制限で PXE を使用できない場合には、Satellite を使用し、iPXE をチェーンブートして、HTTP プロトコルで起動するように PXELinux を設定することができます。

  • 管理対象外の DHCP サーバーのあるネットワーク
  • ネットワーク上でブラックリストに登録されているか、ファイアウォールによって制限されている PXE サービス
  • 低帯域幅ネットワークなどが原因で、信頼性の低い TFTP UDP ベースのプロトコル

iPXE ワークフローの概要

iPXE を使用したプロビジョニングプロセスは、次のワークフローを実行します。

  • 検出されたホストは PXE 経由で起動します。
  • ホストは ipxe.efi または undionly.0 のいずれかを読み込みます。
  • ホストは DHCP を使用してネットワーク上で再度初期化します。
  • DHCP サーバーは iPXE ファームウェアを検出して、ブートストラップのフラグが付いた iPXE テンプレート URL を返します。
  • ホストは iPXE テンプレートを要求します。Satellite はこのホストを認識しません。このホストは、ブートストラップのフラグが設定されているため、Satellite に同梱されている iPXE 中間スクリプトテンプレートを取得します。
  • ホストは中間 iPXE スクリプトを実行し、検出イメージをダウンロードします。
  • ホストは検出オペレーティングシステムを起動し、検出要求を実行します。
  • ホストのプロビジョニングと再起動がスケジュールされます。
  • ホストは PXE 経由で起動します。
  • 以前のワークフローが繰り返されますが、Satellite はホストのリモート IP アドレスを認識し、中間テンプレートの代わりに通常の iPXE テンプレートを取得します。
  • ホストは iPXE 設定を読み取り、インストーラーを起動します。
  • この時点から、インストールは通常の PXE インストールワークフローを実行します。

ワークフローで検出プロセスを使用する点に注意してください (任意)。「iPXE の Discovery サービスの設定」 を参照してください。

Satellite では、ホストが TFTP 経由で ipxe.efi または undionly.kpxe をダウンロードするように設定できます。ファイルがダウンロードされると、すべての通信はそのまま HTTP を使用して続行されます。Satellite は iPXE プロビジョニングスクリプトを使用して、オペレーティングシステムのインストーラーまたは、起動順の次のエントリーを読み込みます。

Red Hat Satellite で iPXE を使用する方法は 3 つあります。

  1. iPXE をプライマリーファームウェアとして使用するハイパーバイザーで仮想マシンをチェーンブートする方法
  2. TFTP を介して PXELinux を使用し、iPXE を直接ベアメタルホストにチェーンロードする方法
  3. UNDI を介して PXELinux を使用し、HTTP でカーネルとベアメタルホストの初期 RAM ディスクを移動する方法

セキュリティー情報

Red Hat Enterprise Linux の iPXE バイナリーは、セキュリティー機能を使用せずに構築されます。このため、HTTPS は使用できず、HTTP だけが使用できます。

Red Hat Enterprise Linux の iPXE のセキュリティー関連機能はすべて、サポート対象ではありません。詳細情報は、Red Hat Enterprise Linux HTTPS support in iPXE を参照してください。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • 使用する Red Hat Satellite にホストが存在する。
  • プロビジョニングインターフェイスの MAC アドレスが、ホスト設定と一致する。
  • ホストのプロビジョニングインターフェイスには、有効な DHCP 予約がある。
  • NIC は、PXE ブートが可能である。詳細は http://ipxe.org/appnote/hardware_drivers を参照してください。
  • NIC は、iPXE と互換性がある。

5.1. iPXE の Discovery サービスの設定

  1. Capsule Server で Foreman の検出サービスをインストールします。

    # yum install foreman-discovery-image
  2. Capsule Server で httpboot サービスを有効にします。

    # satellite-installer --foreman-proxy-httpboot true
  3. Satellite Web UI で、管理 > 設定 に移動して、プロビジョニング タブをクリックします。
  4. デフォルトの PXE グローバルテンプレートエントリー の行を特定して、 のコラムで値を discovery に変更します。