Как найти IP-адреса, назначенные виртуальным машинам на сервере ESXI?
Я пытался найти IP-адреса, назначенные для VMS на сервере ESXI? либо из терминала или vSphere Client.
4 ответа
Если вы установили VMware Tools на виртуальные машины, вы можете использовать следующую однострочную строку для получения IP-адреса из командной строки:
for i in `vim-cmd vmsvc/getallvms | grep -v Vmid | awk '{print $1}'`; do vim-cmd vmsvc/get.guest $i | grep -i 'ipaddress = "'; done
Для не-оболочки у вас есть тонны фрагментов powercli, но вам все еще нужны инструменты VMware.
Установите флажок в последней ячейке по следующей ссылке для нескольких вариантов: https://kb.vmware.com/kb/2012964
В зависимости от того, какую версию ESXi вы используете, вы сможете щелкнуть правой кнопкой мыши в графическом интерфейсе и добавить столбец для IP-адреса.
Примечание. Чтобы IP-адреса гостей отображались на хосте ESXi, необходимо установить и запустить VMware Tools.
v = Get-View -Viewtype VirtualMachine -Property name, guest.ipaddress
$report = @()
foreach($vm in $v)
{
$list = '' | select name, ipaddress
$list.name = $vm.name
$list.ipaddress = $vm.guest.ipaddress
$report += $list
}
$report | export-csv c:\temp\listallnamesandipaddresses.csv
К vcenter (поставляется с vsphere) можно подключиться с помощью powershell(C#) и модуля Powercli, установленного в powershell. Сначала вы можете подключиться к vcenter с помощью этой команды:
Connect-VIServer $vCenter
Затем, чтобы вывести список всех виртуальных машин, размещенных на добавленном хосте esxi в vcenter, используйте следующую команду:
Get-VM | Select Name, @{N="IP Address";E={@($_.guest.IPAddress[0])}}