ここでは、PXEブートおよびKickstartテクノロジについて次の項で説明します。
プロビジョニングの主要な要求の1つが、ディスクやCD-ROMにかわるネットワークを介してのハードウェア・サーバーのブート機能です。ネットワークを介してコンピュータをブートする方法はいくつかあり、Preboot Execution Environment(PXE)はその1つです。PXEは、いくつかのハードウェア・ベンダーおよびソフトウェア・ベンダーによってサポートされているオープンな業界標準です。PXEはWired for Management (WfM)仕様に含まれます。これは、1998年にIntelとMicrosoftによって定められたPC98仕様の一部です。PXEの仕様の詳細は、http://www.pix.net/software/pxeboot/archive/pxespec.pdf
を参照してください。
PXEはシステムのネットワーク・インタフェース・カード(NIC)と連動し、NICをブート・デバイスのように使用します。クライアントのPXE対応NICは、ブロードキャスト・リクエストをDHCPサーバーに送信します。サーバーは、クライアントのIPアドレスの他に、TFTPサーバーのアドレスとTFTPサーバー上のブート・ファイルの場所を返します。この仕組みを次の手順で説明します。
ターゲット・マシン(ベアメタルまたはブート・セクターを除去したマシン)がブートされます。
マシンのネットワーク・インタフェース・カード(NIC)がDHCPリクエストをトリガーします。
DHCPサーバーがリクエストをインターセプトして、標準の情報(IP、サブネット・マスク、ゲートウェイ、DNSなど)で応答します。また、TFTPサーバーの場所とブート・イメージ(pxelinux.0)の情報も提供します。
クライアントはこの情報を受信すると、ブート・イメージを取得するためにTFTPサーバーにアクセスします。
TFTPサーバーはブート・イメージ(pxelinux.0)を送信し、クライアントがそれを実行します。
デフォルトでは、ブート・イメージは、TFTPサーバーのpxelinux.cfgディレクトリでTFTPサーバーのブート構成ファイルを、次の方法を使用して検索します。
まず、MACアドレスに対応する名前(16進数が小文字で表記されハイフンで区切られたもの)のブート構成ファイルを検索します。たとえば、MACアドレスが88:99:AA:BB:CC:DDの場合は、01-88-99-aa-bb-cc-ddというファイルを検索します。
次に、ブートされるマシンのIPアドレスに対応する名前(大文字の16進数)の構成ファイルを検索します。たとえば、IPアドレスが192.0.2.91の場合は、C000025Bというファイルを検索します。
このファイルが見つからない場合は、末尾の16進数を1つ削除して再試行します。この方法でも見つからない場合は、default (小文字)という名前のファイルを検索します。
たとえば、ブート・ファイル名が/tftpboot/pxelinux.0、Ethernet MACアドレスが88:99:AA:BB:CC:DD、IPアドレスが192.0.2.91の場合、ブート・イメージは次の順序でファイル名を検索します。
/tftpboot/pxelinux.cfg/01-88-99-aa-bb-cc-dd /tftpboot/pxelinux.cfg/C000025B /tftpboot/pxelinux.cfg/C000025 /tftpboot/pxelinux.cfg/C00002 /tftpboot/pxelinux.cfg/C0000 /tftpboot/pxelinux.cfg/C000 /tftpboot/pxelinux.cfg/C00 /tftpboot/pxelinux.cfg/C0 /tftpboot/pxelinux.cfg/C
クライアントが、必要なすべてのファイル(カーネルおよびルート・ファイル・システム)をダウンロードし、それらをロードします。
ターゲット・マシンがリブートします。
プロビジョニング・アプリケーションは、RedhatのKickstart方法を使用してターゲット・マシンでのRedhat Linuxのインストールを自動化します。Kickstartを使用すると、システム管理者は、一般的なRed Hat Linuxのインストールの際に尋ねられるすべての質問の答えを含む1つのファイルを作成できます。
ホスト固有のブート構成ファイルには、kickstartファイルの場所が含まれます。このkickstartファイルは、ユーザーの入力に基づいてOSイメージのステージング・ディレクティブによって事前に作成されます。