免責事項: これは英文の記事 「Deploying ESXi 5.x using the Scripted Install feature (2004582)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
ESXi 5.x のスクリプトによるインストール機能では、複数の ESXi ホストをデプロイするための効率的な方法が提供されます。ESXi ホストは、スクリプトによるインストールで無人でのインストール(「自動インストール」とも呼ばれます)を使用してすばやくデプロイすることができます。インストール スクリプト ( ks.cfg ) には、環境のニーズに合わせて変更できる、ESXi ホスト用の設定が含まれています。このスクリプトは、同様の構成にするすべてのホストに適用できます。これにより、手動インストールで行った場合にかかる時間よりも短い時間でインストールを迅速に行うことができます。また、すべてのホストが確実に同様の構成を保持し、必要な標準に従って構築されます。
スクリプトによるインストールを過去に ESXi 4.x で使用したことがある場合は、ESXi 5.x でのスクリプトによるインストールを実行する前に、ESXi 4.x と ESXi 5.x のスクリプトによるインストール コマンドの違いについて認識しておく必要があります。注意すべき違いには、次のものがあります。
次に示す一部のコマンドが廃止または変更されました。
ESXi 5.x でスクリプトによるインストールを行うには、次のことが必要になります。
インストール スクリプト ( ks.cfg ) は、次の場所のいずれかに配置できます。
ESXi 5.x は、1 つのスクリプトまたはマシンごとの別々のスクリプトを使用して複数のマシンにインストールできます。インストール スクリプトは、次の 2 つの異なる方法で開始できます。
注: ks= オプションは、インストール スクリプト ( ks.cfg ) ファイルの場所を指定するために入力する必要があります。 ks= が省略された場合、テキスト インストーラでは通常のインストールであるかのように処理を続行します。
注: ESXi 5.x が PXE を通じて DHCP を有効にしたキックスタート ファイルを使用してインストールされている場合、DNS 設定は使用できず、構成ファイルに保存されません。
ks= コマンドのオプション
起動オプション | 説明 |
BOOTIF=<MAC address> | インストール スクリプトとインストール メディアを検索する際に、ネットワーク アダプタ デバイスの使用を試みます。 |
gateway=<ip address> | このネットワーク ゲートウェイをデフォルト ゲートウェイとして設定します |
ip=<ip address> | インストール スクリプトとインストール メディアのダウンロードに使用する固定(静的) IP アドレスを設定します。 |
ks=cdrom:/<path\> | 指定した CD-ROM ドライブ内の CD 上にあるパスのスクリプトを使用してスクリプトによるインストールを実行します。 |
ks=file://<path> | 指定したパスにあるスクリプトを使用してスクリプトによるインストールを実行します。 |
ks=protocol://<serverpath> | 指定された URL のネットワークにあるスクリプトを使用してスクリプトによるインストールを実行します。プロトコルには、HTTP、HTTPS、FTP、または NFS を指定できます。 |
ks=usb:</path> | 接続された USB ドライブにあるスクリプトにアクセスして、スクリプトによるインストールを実行します。 ks.cfg という名前のファイルを検索します。 |
nameserver=<ip address> | ドメイン名(ネーム)サーバを指定します。 |
netdevice=<device> | ネットワーク アダプタ デバイス(MAC または vmnicN)を使用します。 |
netmask=<subnet mask> | ネットワーク インターフェイスのサブネット マスクを指定します。 |
vlanid=<vlanid> | 指定された VLAN 上に存在するようにネットワーク カードを構成します。 |
ksdevice=device | インストール スクリプトとインストール メディアを検索する際に、ネットワーク アダプタ デバイスの使用を試みます。MAC アドレス(たとえば、00:50:56:C0:00:01)で指定します。この場所は vmnicNN 名にもできます。このオプションを指定せず、ネットワークを介してファイルを取得する必要がある場合、インストーラでは最初に検出された接続済みのネットワーク アダプタがデフォルトで使用されます。 |
ks=nfs://192.168.0.101/FS2/isos/esxi-B.cfg nameserver=192.168.0.57 ip=192.168.0.3 netmask=255.255.255.0 gateway=192.168.0.254
ESXi のインストールをカスタマイズするために、上記の起動プロセスを実行する前に ks.cfg ファイルを作成する必要があります。デフォルトのインストール スクリプトの ks.cfg は、初期 RAM ディスクの /etc/vmware/weasel/ks.cfg にあります。
カスタマイズを行わない場合は、起動オプションの ks=file://etc/vmware/weasel/ks.cfg を使用してインストール スクリプトに ks.cfg の場所を指定できます。
注: ks.cfg を使用して ESXi をインストールする場合、デフォルトの root パスワードは mypassword に設定されます。
例: /etc/vmware/weasel にある ks.cfg ファイルは次のようなものです。
#
# Sample scripted installation file
#
# Accept the VMware End User License Agreement
vmaccepteula
# Set the root password for the DCUI and Tech Support Mode
rootpw mypassword
# The install media is in the CD-ROM drive
install --firstdisk --overwritevmfs
# Set the network to DHCP on the first network adapater
network --bootproto=dhcp --device=vmnic0
# A sample post-install script
%post --interpreter=python --ignorefailure=true
import time
stampFile = open('/finished.stamp', mode='w')
stampFile.write( time.asctime() )
このスクリプトは、ご使用の環境に合わせてさらにカスタマイズすることができます。下の各表は、スクリプトをカスタマイズするために使用できる各種コマンドを示しています。下の各表を使用する場合、次の点に注意してください。
次の各コマンドを ks.cfg ファイル内で使用することができます。
パーティションのクリア
コマンド | 機能 |
clearpart (任意) | ディスク上の既存のパーティションをすべてクリアします。 install コマンドを指定する必要があります。 |
--drives= | 指定したドライブ上のパーティションを削除します。 |
--alldrives | 「--drives=」の要求を無視して、すべてのドライブのパーティションのクリアを可能にします。 |
--ignoredrives= | 指定したドライブ以外のすべてのドライブのパーティションを削除します。 --drives= フラグまたは --alldrives フラグを指定していない場合に必要です。 |
指定したドライブ上の vmfs パーティションの上書きを可能にします。デフォルトでは、vmfs パーティションの上書きは許可されません。 | |
- -overwritevmfs | |
--firstdisk(=<disk-type1>,[<disk-type2>, ...]) | 最初に検出された、対象となるディスクをパーティショニングします。対象となるディスクの順序は、次のように設定されます。 |
1 ローカルに接続されたストレージ (local) | |
2 ネットワーク ストレージ (remote) | |
3 usb ディスク (usb) | |
ディスクの順序は、引数に追加したコンマで区切ったリストを使用して変更できます。 |
パーティションの作成
コマンド | 機能 |
part または partition (任意) | 追加の VMFS データストアをシステムに作成します。作成できるデータストアは、各ディスクに 1 つだけです。install コマンドと同じディスクには使用できません。 |
<datastore name> | パーティションのマウント先を指定します。 |
--ondisk= または --ondrive= | パーティションを作成するディスクまたはドライブを指定します。 |
--onfirstdisk | 最初に検出された、対象となるディスクをパーティショニングします。対象となるディスクの順序は、次のように設定されます。 |
(=<disk-type1>,[<disk-type2>, ...]) | 1 ローカルに接続されたストレージ (local) |
2 ネットワーク ストレージ (remote) | |
3 usb ディスク (usb) | |
ディスクの順序は、引数に追加したコンマで区切ったリストを使用して変更できます。 |
コマンド | 機能 |
install | これが新規インストール(フレッシュ インストール)であることを指定します。 |
ESXi 4.1 のスクリプトによるインストールで使用された、廃止になった autopart コマンドの代わりに使用します。 | |
ESXi をインストールまたはアップグレードするディスクを判断するには、コマンドの install、upgrade、または installorupgrade のいずれかが必要です。 | |
--disk= または --drive= | パーティショニングするディスクを指定します。 |
--firstdisk= | 最初に検出された、対象となるディスクをパーティショニングします。対象となるディスクの順序は、次のように設定されます。 |
disk-type1, | 1 ローカルに接続されたストレージ (local) |
[disk-type2,...] | 2 ネットワーク ストレージ (remote) |
3 usb ディスク (usb) | |
ディスクの順序は、引数に追加したコンマで区切ったリストを使用して変更できます。 | |
--overwritevmfs | インストールの前にディスク上の既存の VMFS データストアを上書きするために必要です。 |
--preservevmfs | インストール時に、ディスク上の既存の VMFS データストアを維持します。 |
--novmfsondisk | このディスク上に VMFS パーティションが作成されないようにします。ディスク上に VMFS パーティションがすでに存在する場合は 、--overwritevmfs と共に使用する必要があります。 |
アップグレード オプション
コマンド | 機能 |
upgrade | これがアップグレードであることを指定します。 |
ESXi 4.1 のスクリプトによるインストールで使用された、廃止になった autopart コマンドの代わりに使用します。 | |
ESXi をインストールまたはアップグレードするディスクを判断するには、コマンドの install、upgrade、または installorupgrade のいずれかが必要です。 | |
--disk= または --drive= | パーティショニングするディスクを指定します。 |
--firstdisk= | 最初に検出された、対象となるディスクをパーティショニングします。対象となるディスクの順序は、次のように設定されます。 |
disk-type1, | 1 ローカルに接続されたストレージ (local) |
[disk-type2,...] | 2 ネットワーク ストレージ (remote) |
3 usb ディスク (usb) | |
ディスクの順序は、引数に追加したコンマで区切ったリストを使用して変更できます。 | |
--deletecosvmdk | システムを ESX からアップグレードする場合は、古いコンソールの VMDK ファイルの cos.vmdk が格納されているディレクトリを削除して、VMFS データストア内の未使用の領域を確保します。 |
インストールまたはアップグレードのオプション
コマンド | 機能 |
installorupgrade | ESXi をインストールまたはアップグレードするディスクを判断するには、コマンドの install、upgrade、または installorupgrade のいずれかが必要です。 |
--disk= または --drive= | パーティショニングするディスクを指定します。 |
--firstdisk= | 最初に検出された、対象となるディスクをパーティショニングします。対象となるディスクの順序は、次のように設定されます。 |
disk-type1, | 1 ローカルに接続されたストレージ (local) |
[disk-type2,...] | 2 ネットワーク ストレージ (remote) |
3 usb ディスク (usb) | |
ディスクの順序は、引数に追加したコンマで区切ったリストを使用して変更できます。 | |
--overwritevmfs | ディスク上に VMFS パーティションが存在するが、ESX または ESXi のインストール環境は存在しない場合に、ESXi をインストールします。 |
このオプションを指定しないと、ディスク上に VMFS パーティションが存在するが ESX または ESXi のインストール環境は存在しない場合、インストーラの実行に失敗します。 | |
その他のオプション
コマンド | 機能 |
keyboard | システムのキーボード タイプを次のいずれかに設定します: Default、French、German、Japanese、Russian、'United Kingdom' |
dryrun (任意) | キックスタート ファイルを解析して検査しますが、実際にはインストールを行いません。 |
accepteula または vmaccepteula (必須) | VMware 使用許諾契約書 (EULA) に同意します。 |
reboot | スクリプトによるインストールの終了後に、マシンを再起動します。 |
--noeject | インストール後に CD のイジェクト(取り出し)を行いません。 |
rootpw (必須) | システムの root (管理者)パスワードを設定します。 |
--iscrypted | パスワードがすでに暗号化されていることを指定します。 |
paranoid (任意) | 警告メッセージでインストールが中断されます。このコマンドを省略した場合、警告メッセージがログに記録されます。 |
ネットワーク オプション
コマンド | 機能 |
network (任意) | システムのネットワーク アドレスを指定します。 |
--bootproto= | ネットワーク設定を DHCP から取得するか手動で設定するかを指定します。 |
[dhcp|static] | |
--device= | ネットワーク カードの MAC アドレス、またはvmnicN という形式のデバイス名。このオプションでは、仮想スイッチの「アップリンク」デバイスを参照します。 |
--ip= | システムの IP アドレスを設定します。このオプションは、static bootproto オプションとともに使用し、static オプションを指定する場合は必須で、static オプションが指定されていない場合は無視されます。このオプションは、xxx.xxx.xxx.xxx という形式で指定してください。 |
--gateway= | ネットワーク ゲートウェイを指定します。このオプションは、xxx.xxx.xxx.xxx という形式で指定してください。static bootproto オプションとともに使用します。このオプションを指定しない場合、警告がログ ファイルに出力され、ゲートウェイの設定なしで処理が続行されます。 |
-- nameserver= | 最大で 2 つのネームサーバを指定します。static bootproto オプションとともに使用します。xxx.xxx.xxx.xxx,[xxx.xxx.xxx.xxx] という形式で指定してください。 |
--nodns | 使用されません。これは、--nameserver= を指定しないこと、またはこのオプションに引数を追加しないことと同じです。 |
--netmask= | 指定したシステムのネットマスク。これは、デフォルトで IP アドレスの特定のタイプに適切なネットマスクになります。このオプションは、「255.xxx.xxx.xxx」という形式で指定してください。static bootproto オプションとともに使用します。 |
--hostname= | システムのホスト名を指定します。 |
--vlanid= | システムの VLAN を指定します。dhcp オプションまたは static bootproto オプションとともに使用します。1 ~ 4094 の範囲の整数にしてください。 |
--addvmportgroup= | 仮想マシンで使用されるVM Network のポート グループを追加するかどうかを指定します。デフォルト値は 1 です。 |
(0|1) |
Pre-, post-, and first boot script options
コマンド | 機能 |
%pre | キックスタート構成が評価される前に実行するスクリプトを指定します。このスクリプトは、たとえば、キックスタート ファイルに含めるファイルを生成する場合に使用できます。-unsupported 引数が必要になります。 |
--interpreter= [python|busybox] | 使用するスクリプトのインタプリタ。デフォルトでは busybox になります。 |
%post | インストールの完了後に、指定したスクリプトを実行します。複数の %post セクションを指定した場合は、キックスタート ファイル内で出現する順序で実行されます。 |
--interpreter= [python|busybox] | 使用するスクリプトのインタプリタ。デフォルトでは busybox になります。 |
--timeout=secs | スクリプトの実行にタイムアウトを設定します。タイムアウトになったときにスクリプトが終了していなかった場合、そのスクリプトは強制的に終了されます。 |
--ignorefailure= | true を指定した場合、%post スクリプトがエラーで終了しても、インストールは正常に終了したと見なされます。 |
[true|false] | |
%firstboot | init スクリプトが作成されます。init スクリプトでは、最初の起動中にのみ、%firstboot セクションに指定されたコマンドを実行します。このスクリプトは、次回以降の起動では無効になります。複数の %firstboot セクションを指定した場合、それらのレベルが同じときは、それらはキックスタート ファイル内に出現する順序で実行されます。 |
--interpreter= [python|busybox] | 使用するスクリプトのインタプリタ。デフォルトでは busybox になります。 |
%include または include | 解析する追加のキックスタート ファイルを指定します。このコマンドは、複数行のコマンドと同様に処理されますが、1 つの引数だけを取ります。 |
<filename> |
上記のオプションと例の ks.cfg ファイルを使用すれば、独自の ESXi 5.x ホストの構築のカスタマイズを始めることができます。スクリプトによるインストールの設定、および PXE 起動のインストールの実行の詳細については、ESXi および vCenter Server の『Installation and Setup』ガイドを参照してください。
ESXi 5.x のインストールの他の方法については、次の記事を参照してください。