Инсталирайте и използвайте VMWare PowerCLI за управление на ESXi и vSphere

PowerCLI за VMware vSphere е невероятно мощен инструмент, базиран на Microsoft PowerShell. PowerCLI ви позволява да извършвате 98% от рутинните операции по управление на виртуална инфраструктура от командния ред. PowerCLI е инструмент, който ви позволява централизирано да управлявате ESXi и vCenter Server от команден ред. С помощта на помощната програма PowerCLI е възможно да се създават скриптове, да се следи състоянието на виртуални машини, съхранения, мрежи, потребители и да се автоматизират редица процеси.

PowerCLI може да бъде инсталиран на компютри, работещи с Microsoft Windows 7 / Windows Server 2008 R2 и по-нови версии и Ubuntu.

PowerCLI включва повече от 1900 cmdlets за управление на облака на VMware и виртуална инфраструктура (vSphere, vSAN, vRealize Operations Manager, vCloud Director, Manager Recovery Manager, Horizon 7 и vCloud Air). Когато командлетът се изпълнява, API се извиква на посочения ESXi сървър или vCenter сървър и изпълнява работата си на този сървър.

Можете да изтеглите безплатно най-новата версия на VMware PowerCLI 6.5 от уебсайта на VMWare (необходима регистрация).

Инсталирането на VMWare PowerCLI не изисква специални коментари - просто щракнете върху Напред.

Ако не искате да инсталирате дебелия клиент на PowerCLI, можете да инсталирате VMware.PowerCLI модула от Интернет, като използвате следната команда PowerShell.

Install-Module -Name VMware.PowerCLI -AllowClobber -Force

За да стартирате конзолата PowerCLI, просто стартирайте пряк път VMWare VSphere PowerCLI с администраторски права.

За да покажете списък от налични команди в конзолата PowerCLI, напишете:

Вземете команда

Можете да получите списък с команди за виртуални машини като тази:

Get-command * vm

За да получите помощ относно целта и примери за използване на един или друг командлет PowerCLI, можете да използвате командата help (Get-Help), например:

помощ Connect-VIServer -Пълен

помощ Connect-VIServer-Примери

За да започнете да управлявате вашата виртуална инфраструктура, трябва да се свържете към vCenter Server или към конкретен ESXi сървър. За целта използвайте командата Connect-VIServer. Командата за свързване може да изглежда така:

Connect-VIServer vsphere6 -User corp \ aborisov_admin -Password VMware1!

За да изброите виртуалните машини, които са регистрирани на вашия ESXi (или vCenter) сървър, изпълнете командата:

Get-VM

Могат да се показват само активирани виртуални карти:

Get-VM | Къде $ _. Powerstate -eq "PoweredOn" | Изберете Име, VMHost, NumCPU, MemoryMB | фута

Списъкът с виртуални машини може да бъде качен в CSV, XML или HTML файл с помощта на pipline и командните файлове Export-Csv, ConvertTo-Xml, ConvertTo-Html.

информация. PowerCLI е само за четене с безплатния VMware vSphere Hypervisor. Това означава, че можете да го използвате, за да видите някои свойства и стойности на хоста и VM, но няма да можете да ги промените.

Можете да изброите моментни снимки за конкретен VM като този:

Get-VM | Вземете снимка | Формат-Списък

За да стартирате VMotion и да преместите работещата VM към друг хост, използвайте командата Move-VM. Например, искаме да прехвърлим всички виртуални машини от хоста esxi1 в esxi2:

Get-VMHost esxi1 | Get-Vm | Преместване-VM-дестинация (Get-VMHost esxi2)

За да създадете нова виртуална машина, използвайте командлета New-VM:

Ново-VM -Име VMname1 -VMHost esxi1 -РесурсПолучение на пул -DiskGB 20 -DiskStorageFormat Thin -Datastore EVA64VMFS

С помощта на cmdlets можете да взаимодействате с гост операционната система. За да направите това, VMware Tools трябва да бъде инсталиран върху него. Можете да надстроите VMware Tools така:

Get-VMGuest VMname1 | Актуализиране на инструменти

За да копирате конкретен файл във всички виртуални машини, изпълнете командата:
Get-VM | Copy-VMGuestFile -Source c: \ ps \ reset_id.vbs -Определяне c: \ ps \ -GuestToLocal -HostUser root -HostPassword P @ ssw0rd -GuestUser администратор -GuestPassword $ uper $ trong2

С помощта на командлета Invoke-VMS можете да стартирате скрипта в гостната ОС на виртуална машина на Windows:

$ script = '"% programfiles% \ Common Files \ Microsoft Shared \ MSInfo \ msinfo32.exe" / report "% tmp% \ inforeport"'

Invoke-VMScript -ScriptText $ script -VM VMname1 -HostCredential $ hostCredential -GuestCredential $ guestCredential -ScriptType Bat