Многие администраторы в крупных инфраструктурах сталкиваются с проблемами назначения и обновления лицензий компонентов VMware vSphere - серверов ESXi и vCenter. Это можно сделать в графическом интерфейсе vSphere Client, но когда у вас много хостов, это становится муторным делом, во время которого легко ошибиться или просто устать:)
Давайте посмотрим, как можно просто это делать через PowerCLI. Итак, начнем с просто разбора сценария подключения к vCenter и назначения лицензионного ключа для него.
## Задаем параметры подключения, их также можно запросить в интерактивном режиме с помощью $Credential = get-credential
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $EncryptedPassword
#Подключаемся к vCenter
Disconnect-VIServer -confirm:$false -ErrorAction SilentlyContinue
Write-Host "Now connecting to $vCenterServer"
$vCenter = Connect-VIServer -Server $vCenterServer -Credential $Credential
Для того, чтобы добавть Evaluation-ключ для ESXi, нужно просто прописать его как 00000-00000-00000-00000-00000.
Если вы хотите посмотреть имеющиеся ключи на хостах, то делается это простой командой:
Get-VMHost | Select Name, LicenseKey
Если вы добавите ключ, емкость которого меньше, чем реально используемых лицензий, то он добавится но в Web Client / vSphere Client будет показано, что емкость лицензий превышена:
В этом случае вам нужно просто докупить лицензий, получить новый ключ и обновить лицензии в вашем датацентре.
Также если вы хотите узнать, какие именно у вас есть лицензии в датацентре, сколько из них используется, и когда они устаревают, вы можете использовать вот такой простенький скрипт от vmwarediary.com. Результатом его выполнения будет табличка:
Если же вам нужно средство отчетности посерьезнее, то у VMware есть утилита vSphere Software Asset Management Tool, с помощью которой можно получить отчет обо всех используемых лицензиях: