vCenterの仮想マシンインベントリをいじるPowerCLIコマンド
vCenterでインベントリに表示されている仮想マシンを削除したり、データストア上のvmxファイルから仮想マシンを特定のホストのインベントリに登録したりするコマンドです。
コマンドの実行前に、Connect-VIServerコマンドでvCenter Serverに接続しておきましょう。
・vCenter Serverから特定の仮想マシンをインベントリから削除する
Remove-VM -VM "WinVM" -Confirm:$false
上記の例では、「WinVM」という仮想マシンを強制的にインベントリから削除しています。
インベントリから削除しているだけで、データストア上にファイルは残ります。
・データストア上のvmxファイルからvCenterのインベントリに登録する
New-VM -VMFilePath "[datastore]WinVM/WinVM.vmx" -VMHost "172.16.10.250"
上記の例では、「datastore」という名前のデータストアにある「WinVM」フォルダに格納されている「WinVM.vmx」というvmxファイルから、「172.16.10.250」のIPアドレスを持つESXホストのインベントリに仮想マシンを登録しています。
なお、-VMFilePathの後に続く値は大文字と小文字を識別するので注意が必要です。
(おまけ)
ホストがvCenter Serverの管理下にある場合、仮想マシンの削除や登録はvCenter Server経由で行うことが推奨されています。
詳細は、以下のKBに記載されています。
VMware KB: Registering or adding a virtual machine to the inventory on vCenter Server or on an ESX/ESXi host
コマンドの実行前に、Connect-VIServerコマンドでvCenter Serverに接続しておきましょう。
・vCenter Serverから特定の仮想マシンをインベントリから削除する
Remove-VM -VM "WinVM" -Confirm:$false
上記の例では、「WinVM」という仮想マシンを強制的にインベントリから削除しています。
インベントリから削除しているだけで、データストア上にファイルは残ります。
・データストア上のvmxファイルからvCenterのインベントリに登録する
New-VM -VMFilePath "[datastore]WinVM/WinVM.vmx" -VMHost "172.16.10.250"
上記の例では、「datastore」という名前のデータストアにある「WinVM」フォルダに格納されている「WinVM.vmx」というvmxファイルから、「172.16.10.250」のIPアドレスを持つESXホストのインベントリに仮想マシンを登録しています。
なお、-VMFilePathの後に続く値は大文字と小文字を識別するので注意が必要です。
(おまけ)
ホストがvCenter Serverの管理下にある場合、仮想マシンの削除や登録はvCenter Server経由で行うことが推奨されています。
詳細は、以下のKBに記載されています。
VMware KB: Registering or adding a virtual machine to the inventory on vCenter Server or on an ESX/ESXi host