ESXiをkickstartでインストールする

Posted by ひつまぶし食べたい on Tuesday, January 6, 2015

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でインストールするため、あまり自由度がない。

[gist:id=b4e9a0e8e0ef68af1d6f,file=dhcpd.conf]

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ブートの設定ファイル

  • pxelinux.cfg/default

[gist:id=b4e9a0e8e0ef68af1d6f,file=default in pxelinux.cfg]

  • esxi/boot.cfg * もともとあるファイルの / を除去していく * prefixを代わりに設定

[gist:id=b4e9a0e8e0ef68af1d6f,file=boot.cfg]

kickstart file

以下のファイルを /var/www/servers/ks.cfg として保存。 (ここでは、httpでやっているが、tftpでやっても良い。)

[gist:id=b4e9a0e8e0ef68af1d6f,file=ks.cfg]

以上で、キックスタートの準備が終わる。

考えること

  • サーバーごとの個別設定の渡し方 事前にMACアドレスがわかっている場合にはできるけど、そうでない場合には、難しい。

comments powered by Disqus