オプション 1 - ESXi 6.x / 7.0 上の仮想マシンについて vSphere Client を使用して起動順位を設定する
1. 仮想マシンをシャットダウンします。
2. インベントリで仮想マシンを右クリックします。
3.
設定の編集 をクリックします。
4. 表示されたダイアログで
仮想マシン オプション タブをクリックします。
5.
起動オプション の下の
強制的に BIOS をセットアップ にチェックを入れます。
6.
OK をクリックして変更を保存します。
7. 仮想マシンをパワーオンします。
8. 仮想マシンのコンソールを開き、BIOS > Boot セクションに移動します。
9. 起動順位を設定し、保存します。
オプション 2 - 仮想マシンの詳細設定から起動順位を設定する
仮想マシンの詳細設定である bios.bootOrder と bios.hddOrder ( 仮想マシンが UEFI を使用する場合は efi.bootOrder と efi.hddOrder ) を使用して仮想マシンの起動デバイスを選ぶこともできます。
注: これらの設定により、仮想マシンの BIOS で前に設定した可能性のある起動順位が上書きされます。
仮想マシンの起動順序は ethernetX 経由で仮想 NIC に設定できます。X はデバイスの数です。たとえば、ethernet0、ethernet5 のようになります。hdd、cdrom、floppy に設定することもできます。cdrom または floppy に設定された場合、複数のデバイスが存在し、仮想マシンでは起動元デバイスが見つかるまでそれらのデバイスが順次試行されます。bios.bootOrder が hdd に設定された場合、bios.hddOrder を定義し、起動元デバイス(scsi0:3、ide1:0 など)を設定する必要があります。
この設定を行うには、まず仮想マシンがパワーオフ状態であることを確認し、
1. vSphere Client で仮想マシンを右クリックします。
2.
設定の編集 をクリックします。
3.
仮想マシン オプション のタブで
詳細 をクリックします。
4.
構成パラメータ の横の
設定の編集... をクリックします。
5.
構成パラメータの追加 をクリックし、新しく詳細パラメータを作成します。
仮想マシンが BIOS で起動する場合の例:
名前 | 値 |
bios.bootOrder | ethernet5,ethernet2,hdd,cdrom,floppy |
bios.hddOrder | scsi2:2,scsi0:1,ide1:0 |
仮想マシンが UEFI で起動する場合の例:
名前 | 値 |
bios.bootOrder | ethernet5,ethernet2,hdd,cdrom,floppy |
bios.hddOrder | scsi2:2,scsi0:1,ide1:0 |
6.
OK をクリックし、再度
OK をクリックして仮想マシンの設定の編集ウィザードを閉じます。
または、仮想マシンの VMX 構成ファイルを編集することでも起動デバイスを設定することができます。設定時には仮想マシンがパワーオフされていることを確認し、デバイス名が引用符で囲まれていること、カンマで区切られていることを確かめてください。
仮想マシンが BIOS で起動する場合の例:
bios.bootOrder = "ethernet5,ethernet2,hdd,cdrom,floppy"
bios.hddOrder = "scsi2:2,scsi0:1,ide1:0"
仮想マシンが UEFI で起動する場合の例:
efi.bootOrder = "ethernet5,ethernet2,hdd,cdrom,floppy"
efi.hddOrder = "scsi2:2,scsi0:1,ide1:0"
この例では、仮想マシンでは ethernet5 で起動が試行されます。起動元がない場合、ethernet2 を試してみます。失敗した場合、hddOrder で定義されたディスク (hdd) から試行し、次にすべての CD-ROM、最後にはすべてのフロッピーから試行します。
注: BIOS とは異なり、すべての利用可能な NIC およびディスクから選択できますが、起動順序リストで使用できるのは最大 5 つの NIC と 8 つのディスクです。bootOrder/hddOrder 構成済み仮想マシンを ESXi/ESX 4.1 以降で実行されていないホストに移動すると、次の再起動時に使用されると予想される起動順序が使用されないことがあります。
オプション3 - PowerCLI を使用して仮想マシンの起動順位を設定する
以下の例にあるような PowerCLI のスクリプトを使用して仮想マシンの起動順位を変更することもできます。
この例では仮想マシンが2つの仮想ディスクと1つの仮想 NIC を持っていて、仮想 NIC から起動することを想定しています。
Connect-VIServer "vcenter-fqdn" -user username -password password! -WarningAction 0 -ErrorVariable ErrorInfo -ea SilentlyContinue | out-null
$spec = @()
$vm = @()
$vmName = 'vm-name'
$vm = Get-VM -Name $vmName
# display the VM name
echo $vm
$spec = New-Object -TypeName VMware.Vim.VirtualMachineConfigSpec
$spec.BootOptions = $vm.ExtensionData.Config.BootOptions
$disk1 = New-Object -TypeName VMware.Vim.VirtualMachineBootOptionsBootableDiskDevice
$disk1.DeviceKey = (Get-HardDisk -Name 'Hard disk 2' -VM $vm).ExtensionData.Key
$disk2 = New-Object -TypeName VMware.Vim.VirtualMachineBootOptionsBootableDiskDevice
$disk2.DeviceKey = (Get-HardDisk -Name 'Hard disk 1' -VM $vm).ExtensionData.Key
$net = New-Object -TypeName VMware.Vim.VirtualMachineBootOptionsBootableEthernetDevice
$net.DeviceKey = (Get-NetworkAdapter -Name 'Network adapter 1' -VM $vm).ExtensionData.Key
$spec.BootOptions.BootOrder = $net,$disk1,$disk2,
$vm.ExtensionData.ReconfigVM($spec)
# Display the new boot order
$vm.ExtensionData.Config.BootOptions | Select BootOrder
Disconnect-VIServer * -Confirm:$false
このスクリプトは新しく設定された起動順位をデバイス ID のリストで表示します。200x は仮想ディスク、400x は仮想 NIC です。
ESX/ESXi 4.1 で vSphere Client を使用して仮想マシンの起動順位を構成するには
- 仮想マシンをシャットダウンします。
- インベントリで仮想マシンをクリックします。
- その仮想マシンの サマリ タブをクリックし、設定の編集 をクリックします。
- 仮想マシンの [プロパティ] ダイアログで、オプション タブをクリックします。
- [詳細] で 全般 をクリックします。
- 構成パラメータ をクリックします。
- 行の追加 をクリックします。
- 新しい 2 行を作成します。
- bios.bootOrder を [名前] 列に、デバイスを [値] 列に入力します。
- bios.hddOrder を [名前] 列に、デバイスを [値] 列に入力します。
- OK をクリックして、変更を保存します。
注:仮想マシンが UEFI でブートする場合は、bios.* の代わりに以下を使用します。
-
efi.bootOrder
-
efi.hddOrder
ESXi 5 以降で仮想マシンの bootOrder を構成するには、API および vSphere API 5.0 に導入された bootOrder プロパティを使用するか、.vmx ファイルを直接編集する必要があります。