У меня есть ESXi 5.1 с множеством хостов в кластере. Я хотел бы сгенерировать список активных сетевых карт и их IP-адресов. Какой самый простой инструмент для генерации такого списка?
*Мне не нужно виртуальное оборудование, только физическое сетевое оборудование.
решение1
Я бы использовал VMware vSphere PowerCLI.
Содержит оснастки командлетов на основе Microsoft PowerShell для автоматизации администрирования vSphere.
Его можно скачать здесьhttps://my.vmware.com/web/vmware/details?downloadGroup=PCLI550&productId=353
Ниже приведен пример скрипта PowerShell, который я написал для получения нужной вам информации.
Основные моменты:
Get-VMHost
с-Location
параметром для запроса определенного кластера (в случае, если у вас их несколько и вы хотите ограничить запрос только одним, это мой случай)Get-VMHostNetworkAdapter
с-Physical
параметром для получения только физических сетевых карт.
$myVCenter = "vcenter.dom" #fqdn or ip of the VCenter Server
$myClusterName = "PROD" #Name of the ESXi cluster
$user = "username"
$pass = "password"
Connect-VIServer "$myVCenter" -User $user -Password "$pass"
$myvmhosts = Get-VMHost -Location $myClusterName | select Name
foreach($myvmhost in $myvmhosts)
{
Get-VMHostNetworkAdapter -Physical -VMHost $myvmhost.Name | select VMhost, Name, Mac, IP | format-table -autosize | Out-String
}
Выведет следующий результат:
VMHost Name Mac IP
------ ---- --- --
esxsrv1 vmnic0 d4:ae:52:9e:7f:ad
esxsrv1 vmnic1 d4:ae:52:9e:7f:af
esxsrv1 vmnic2 d4:ae:52:9e:7f:b1
esxsrv1 vmnic3 d4:ae:52:9e:7f:b3
esxsrv1 vmnic4 00:10:18:e4:80:24
esxsrv1 vmnic5 00:10:18:e4:80:25
esxsrv1 vmnic6 00:10:18:dc:12:e0
esxsrv1 vmnic7 00:10:18:dc:12:e2
VMHost Name Mac IP
------ ---- --- --
esxsrv2 vmnic0 d4:ae:52:98:29:6e
esxsrv2 vmnic1 d4:ae:52:98:29:70
esxsrv2 vmnic2 d4:ae:52:98:29:72
esxsrv2 vmnic3 d4:ae:52:98:29:74
esxsrv2 vmnic4 00:10:18:e4:86:6e
esxsrv2 vmnic5 00:10:18:e4:86:6f
esxsrv2 vmnic6 00:10:18:dc:20:20
esxsrv2 vmnic7 00:10:18:dc:20:22
И так далее для каждого сервера ESXi в кластере...
В моей архитектуре VMWare нет IP-адресов на физических сетевых картах, но если они у вас есть, они будут отображаться.
Еще один полезный инструмент —RVTools. Не нужно писать скрипты. Установите инструмент, запустите его и войдите в систему, и у вас будет вся информация, с фильтрами и возможностями экспорта.
решение2
Загрузите PowerCLI,
Подключитесь к вашему серверу Vcenter.
Connect-VIServer <servername>
Тогда беги
Get-VMHostNetworkAdapter
и список всех сетевых карт и их IP-адресов.
Для экспорта в CSV
Get-VMHostAdapter | Export-Csv C:\list.csv