ESXiをPXEブートして自動インストールする方法について、日本語での説明があまりなかったので、メモとして残しておく。
利用OS
- ESXi 5.5
- Debian 7.7 (DHCPサーバー, HTTPサーバーを兼務させる)
DHCP, TFTP, HTTPサーバーの準備
必要なソフトウェアのインストール
apt-get install tftpd-hpa isc-dhcp-server xinetd apache2
DHCPサーバーの設定
BOOTPでインストールするため、あまり自由度がない。
TFTPサーバーの設定
適当なディレクトリ以下を公開する。
ここでは、/srv/tftp とする。
kickstartイメージの準備
まずESXiのイメージの内容をもらってくる
cd /srv/tftp/
mkdir esxi
mount -o loop <ESXiのISO>.iso
rsync -a /mnt/esxi/
次に、pxe boot用のイメージを準備する。
必要なのは、pxelinux.o, pxelinux.cfg/
wget http://ftp.nl.debian.org/debian/dists/wheezy/main/installer-amd64/current/images/netboot/netboot.tar.gz
tar xvf netboot.tar.gz
PXEブートの設定ファイル
- esxi/boot.cfg
* もともとあるファイルの / を除去していく
* prefixを代わりに設定
kickstart file
以下のファイルを /var/www/servers/ks.cfg として保存。
(ここでは、httpでやっているが、tftpでやっても良い。)
以上で、キックスタートの準備が終わる。
考えること
- サーバーごとの個別設定の渡し方
事前にMACアドレスがわかっている場合にはできるけど、そうでない場合には、難しい。