PXE(ピーエックスイー)とは | 意味や読み方など丁寧でわかりやすい用語解説
PXE(ピーエックスイー)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
プリブート実行環境 (プリブートジッコウカンキョウ)
英語表記
PXE (ピーエックスイー)
用語解説
PXE(ピーエックスイー)は、Preboot eXecution Environmentの略称で、ネットワーク経由でコンピュータを起動させるための標準的な技術である。通常のコンピュータは内蔵されたハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)、あるいはUSBメモリやCD/DVDといったローカルなストレージデバイスからOSを読み込み、起動するが、PXEブートはこれらのローカルストレージに依存せず、ネットワークケーブルを通じて遠隔のサーバーから起動プログラムやOS本体をダウンロードして実行する。この仕組みは、ディスクレスクライアントの運用や、多数のPCに対して一斉にOSを導入・更新する際に非常に有効で、現代のITインフラ管理において欠かせない技術の一つとなっている。
PXEブートを実行するためには、PXEに対応したネットワークインターフェースカード(NIC)がコンピュータに搭載されている必要がある。現在販売されているほとんどのPCやサーバーには、BIOSやUEFIファームウェアレベルでPXEブート機能が組み込まれており、起動時のブートオプションとして選択可能だ。
PXEブートの具体的な仕組みは、以下の複数のステップとサーバーコンポーネントが連携して動作する。
まず、PXEブートを有効にしたクライアントコンピュータが起動すると、ネットワークインターフェースカードはDHCP(Dynamic Host Configuration Protocol)サーバーに対してDHCP Discoverパケットを送信する。このDHCP Discoverパケットには、単にIPアドレスを要求するだけでなく、PXEブートを希望していることを示す特別なオプション情報が含まれている。
次に、ネットワーク上のDHCPサーバーは、このPXEブート要求を含むDHCP Discoverパケットを受け取ると、通常のIPアドレス、サブネットマスク、デフォルトゲートウェイなどのネットワーク設定情報に加えて、ブートストラッププログラム(NBP: Network Boot Program)のファイル名と、そのNBPを提供しているTFTP(Trivial File Transfer Protocol)サーバーのアドレスをクライアントに通知する。TFTPは、FTP(File Transfer Protocol)よりもシンプルで軽量なファイル転送プロトコルであり、PXEブートのような初期段階での小容量ファイルの転送に適している。
DHCPサーバーからの応答を受け取ったクライアントは、次に指定されたTFTPサーバーに対して、通知されたNBPのダウンロード要求を送信する。TFTPサーバーは要求に応じてNBPファイルをクライアントに転送し、クライアントはこのNBPファイルを自身のメモリ上にロードして実行する。NBPは通常、非常に小さなプログラムで、OSのローダーやインストーラーなど、より大きなプログラムをダウンロードするための仲介役となる。
NBPが実行されると、クライアントはさらなるOSの起動に必要なファイル群、例えばLinuxカーネル、初期RAMディスク(initrdやinitramfs)、Windowsのブートイメージなどを、TFTPサーバーやHTTP(Hypertext Transfer Protocol)サーバー、あるいはNFS(Network File System)サーバーなどからダウンロードし始める。どのサーバーからどのファイルをダウンロードするかは、ダウンロードされたNBPの内部ロジックや、NBPが追加でダウンロードする設定ファイルによって決定される。この段階で、クライアントはネットワーク経由でダウンロードしたOSイメージを実行し、メモリ上でOSを起動させるか、あるいは自身のローカルストレージにOSをインストールするためのプロセスを開始する。
PXEを利用することの最大のメリットは、その集中管理性にある。多数のクライアントPCに対して、手作業でOSをインストールしたり設定したりする手間を省き、サーバー側で管理された単一のOSイメージやインストールスクリプトを用いて、一貫した環境を迅速に展開できる。これは、企業や学校、データセンターなどで大量のコンピュータを導入・運用する際に、作業の効率化と標準化を大きく促進する。例えば、新しいPCのキッティング(初期設定作業)を自動化したり、故障したPCのOSを再インストールしたりする際に、物理的なメディアを一つ一つ持ち運ぶ必要がなく、ネットワークに接続するだけで作業を開始できる。
また、PXEはシンクライアント環境の構築にも利用される。シンクライアントとは、CPU、メモリ、ネットワークインターフェースのみを持ち、ローカルストレージを持たないコンピュータのことである。これらのシンクライアントはPXEブートを利用してネットワークからOSを起動し、必要なアプリケーションやデータはサーバー側で処理されるため、セキュリティの向上や管理コストの削減に寄与する。
さらに、PXEは障害復旧のシナリオでも有用だ。例えば、内蔵ストレージのOSが破損して起動できなくなったPCでも、PXEブートを利用してネットワーク経由で診断ツールやリカバリOSを起動させ、問題の特定や修復を試みることが可能となる。このように、PXEは単なる起動技術に留まらず、ITシステムのデプロイメント、管理、保守の各段階において広範囲に応用される、基盤的な技術であると言える。システムエンジニアを目指す者にとって、このPXEの仕組みと活用法を理解しておくことは、現代のITインフラを扱う上で不可欠な知識である。