Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

ESXi6.0をpxebootで自動インストールする。

More than 3 years have passed since last update.

はじめに

ESXi6.0の自動インストールの手順をまとめました。
自分の備忘をかねているのでやや長文です。

目次

  1. DHCPサーバの構築
  2. TFTPサーバの構築
  3. Webサーバの構築
  4. OSイメージの準備
  5. 設定ファイルの準備
  6. kickstartファイルの準備
  7. 起動する

1. DHCPサーバの構築

1.DHCPサーバを準備します。

# yum install dhcp
# rpm -qa | grep dhcp
dhcpv6-client-1.0.10-4.el5
dhcp-3.0.5-18.el5

2./etc/dhcpd.conf を編集します。
 ①「range」の行は、DHCPで割り当てるIPアドレスの範囲を記入する。
 ②「option routers」の行は、getewayを指定する。
 ③「next-server」の行は、この仮想マシン自体のIPアドレスを指定する。
 ④「filename」の行は、bootx64.efiを指定する。

ddns-update-style interim;

allow booting;
allow bootp;

ignore client-updates;
set vendorclass = option vendor-class-identifier;

option pxe-system-type code 93 = unsigned integer 16;

subnet 172.23.0.0 netmask 255.255.0.0 {
     option subnet-mask         255.255.0.0;
     range dynamic-bootp        172.23.190.60 172.23.190.80;
     default-lease-time         21600;
     max-lease-time             43200;
     next-server                172.23.190.6;
     filename                   "/var/lib/tftpboot/linux_install/pxelinux.0";
}

3.サービスを再起動します。

# service dhcpd restart

2. TFTPサーバの構築

1.TFTPサーバを用意します。

# yum install tftp-server tftp
# rpm -qa | grep tftp
tftp-0.49-7.el6.x86_64
tftp-server-0.49-7.el6.x86_64

2./etc/xinitd.d/tftpを編集します。
 ①「server_args」の行は、TFTPでアクセスしたときに見せるディレクトリを指定する。
 ②「disable」の行を「no」に書き換える。

# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
      socket_type             = dgram
      protocol                = udp
      wait                    = yes
      user                    = root
      server                  = /usr/sbin/in.tftpd
      server_args             = -v -s /tftpboot
      disable                 = no
      per_source              = 11
      cps                     = 100 2
      flags                   = IPv4
}

3.サービスを再起動します。

# service xinetd restart

3. Webサーバの構築

1.Webサーバをインストールします。

# yum install httpd
# rpm -qa | grep httpd
httpd-2.2.15-39.el6.x86_64
httpd-tools-2.2.15-39.el6.x86_64

2.ホスト名を確認します。

# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hostname

3./etc/httpd/conf/httpd.confを編集します。
 ①「ServerName」の行に、ホスト名を入力する。
 ②「AddDefaultCharset UTF-8」の行は、コメントアウトする。

(途中省略)
ServerName hostname
(途中省略)
#AddDefaultCharset UTF-8

4.サービスを再起動します。

# service httpd restart

5.SELinuxを無効化します。

# /usr/sbin/getenforce
Enfording

4.OSイメージの準備

1.ESXi6.0のisoをマウントします。

# mount -t iso9660 -o loop /root/~.iso /tmp/esxi6.0

2.TFTPサーバへ格納します。

# cp /tmp/esxi6.0/* /tftpboot/esxi_install/esxi6.0/
# cp /tmp/esxi6.0/efi/boot/bootx64.efi /tftpboot/esxi_install/

5. 設定ファイルの準備

1.インストール対象のサーバのうち、接続するNICのMACアドレスを調べておいてください。
2.そのMACアドレス名でディレクトリを作成し、boot.cfgを置きます。
 ※xx-xx-xx-xx-xx-xxは、MACアドレスを表しています。
 ※MACアドレスの英字は小文字で入力してください。(大文字だと読み込めないようです。)

# mkdir /tftpboot/esxi_install/01-xx-xx-xx-xx-xx-xx
# cp /tmp/esxi6.0/efi/boot/boot.cfg /tftpboot/esxi_install/01-xx-xx-xx-xx-xx-xx/

3.設定ファイルの中身を編集します。

bootstate=0
title=Loading ESXi installer (^^)
timeout=3

prefix=esxi_install/esxi6.0
kernel=tboot.b00
#kernelopt=runweasel

kernelopt=ks=http://192.168.190.50/01-xx-xx-xx-xx-xx-xx.cfg

modules=b.b00 --- jumpstrt.gz …(この先は省略です。)

6.kickstartファイルの準備

1.Webサーバ内に「/var/www/html/01-xx-xx-xx-xx-xx-xx.cfg」を作成します。
 ここへ、IPアドレスなど設定したい内容を記入します。

vmaccepteula
install --firstdisk --overwritevmfs
rootpw password
keyboard Japanese

network --bootproto=static --ip=10.60.190.20 --gateway=10.160.190.1 --nameserver=10.60.190.17,10.60.190.18 --netmask=255.255.255.0 --hostname=testserver --addvmportgroup=1 --vlanid=0

reboot

%firstboot --interpreter=busybox

vim-cmd hostsvc/enable_ssh
vim-cmd hostsvc/start_ssh
vim-cmd hostsvc/enable_esx_shell
vim-cmd hostsvc/start_esx_shell
esxcli system module parameters set -m tcpip4 -p ipv6=0

reboot

7. 起動する

インストール対象のサーバとPCを接続し、サーバをネットワークブートすると
ESXi6.0が自動でインストールされます。

:octocat: :shaved_ice:

akr90s
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away