Instal dan gunakan VMWare PowerCLI untuk mengelola ESXi dan vSphere

PowerCLI untuk VMware vSphere adalah alat yang sangat kuat yang didasarkan pada Microsoft PowerShell. PowerCLI memungkinkan Anda untuk melakukan 98% dari operasi rutin mengelola infrastruktur virtual dari baris perintah. PowerCLI adalah alat yang memungkinkan Anda untuk mengelola ESXi dan vCenter Server secara terpusat dari baris perintah. Menggunakan utilitas PowerCLI, dimungkinkan untuk membuat skrip, memantau keadaan mesin virtual, penyimpanan, jaringan, pengguna, dan mengotomatisasi sejumlah proses.

PowerCLI dapat diinstal pada komputer yang menjalankan Microsoft Windows 7 / Windows Server 2008 R2 dan yang lebih baru dan Ubuntu.

PowerCLI mencakup lebih dari 1900 cmdlet untuk mengelola cloud VMware dan infrastruktur virtual (vSphere, vSAN, vRealize Operations Manager, vCloud Director, Site Recovery Manager, Horizon 7 dan vCloud Air). Ketika cmdlet dieksekusi, API dipanggil pada server ESXi atau server vCenter yang ditentukan dan melakukan tugasnya di server ini.

Anda dapat mengunduh versi terbaru VMware PowerCLI 6.5 dari situs web VMWare secara gratis (diperlukan pendaftaran).

Instalasi VMWare PowerCLI tidak memerlukan komentar khusus - cukup klik Berikutnya.

Jika Anda tidak ingin menginstal klien PowerCLI yang tebal, Anda dapat menginstal modul VMware.PowerCLI dari Internet menggunakan perintah PowerShell berikut.

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

Untuk memulai konsol PowerCLI, cukup jalankan pintasan VMWare VSphere PowerCLI dengan hak administrator.

Untuk menampilkan daftar perintah yang tersedia di konsol PowerCLI, ketik:

Dapatkan perintah

Anda bisa mendapatkan daftar perintah untuk mesin virtual seperti ini:

Dapatkan-perintah * vm

Untuk mendapatkan bantuan tentang tujuan, dan contoh-contoh menggunakan satu atau beberapa cmdlet PowerCLI, Anda dapat menggunakan perintah bantuan (Dapatkan-Bantuan), misalnya:

membantu Connect-VIServer -Full

membantu Connect-VIServer -Contoh

Untuk mulai mengelola infrastruktur virtual Anda, Anda harus terhubung ke Server vCenter atau ke server ESXi tertentu. Untuk melakukan ini, gunakan perintah Connect-VIServer. Perintah koneksi mungkin terlihat seperti ini:

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

Untuk daftar mesin virtual yang terdaftar di server ESXi Anda (atau vCenter), jalankan perintah:

Dapatkan-VM

Hanya VM yang diaktifkan yang dapat ditampilkan:

Dapatkan-VM | Di mana $ _. Powerstate -eq “PoweredOn” | Pilih Nama, VMHost, NumCPU, MemoryMB | ft

Daftar mesin virtual dapat diunggah ke file CSV, XML atau HTML menggunakan pipline dan cmdlet Export-Csv, ConvertTo-Xml, ConvertTo-Html.

Informasi. PowerCLI hanya bisa dibaca dengan VMware vSphere Hypervisor gratis. Ini berarti Anda dapat menggunakannya untuk melihat beberapa properti dan nilai host dan VM, tetapi Anda tidak akan dapat mengubahnya.

Anda dapat membuat daftar snapshot untuk VM tertentu seperti ini:

Dapatkan-VM | Dapatkan-Snapshot | Format-daftar

Untuk menjalankan VMotion dan memindahkan VM yang berjalan ke host lain, gunakan perintah Move-VM. Sebagai contoh, kami ingin mentransfer semua VM dari host esxi1 ke esxi2:

Get-VMHost esxi1 | Get-Vm | Move-VM-Destination (Get-VMHost esxi2)

Untuk membuat mesin virtual baru, gunakan cmdlet New-VM:

New-VM -Name VMname1 -VMHost esxi1 -ResourcePool Production -DiskGB 20 -DiskStorageFormat Thin -Datastore EVA64VMFS

Menggunakan cmdlet, Anda dapat berinteraksi dengan sistem operasi tamu. Untuk melakukan ini, VMware Tools harus diinstal di dalamnya. Anda dapat meningkatkan Alat VMware seperti ini:

Dapatkan-VMGuest VMname1 | Perbarui alat

Untuk menyalin file tertentu ke semua VM, jalankan perintah:
Dapatkan-VM | Salin-VMGuestFile -Sumber c: \ ps \ reset_id.vbs -Tujuan c: \ ps \ -GuestToLocal -HostUser root -HostPassword P @ ssw0rd -GuestUser administrator -GuestPassword $ uper $ trong2

Menggunakan cmdlet Invoke-VMS, Anda dapat menjalankan skrip di OS tamu dari mesin virtual Windows:

$ script = '"% programfiles% \ File Umum \ Microsoft Shared \ MSInfo \ msinfo32.exe" / laporan "% tmp% \ inforeport"'

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