Computer >> Máy Tính >  >> Phần mềm >> Máy ảo

VMware PowerCLI:Cách cài đặt và quản lý vSphere và ESXi

VMware vSphere PowerCLI là một tập hợp các mô-đun PowerShell để quản lý cơ sở hạ tầng VMware từ dấu nhắc lệnh. Bạn có thể sử dụng PowerCLI để nhận trạng thái của máy ảo, kho dữ liệu, mạng hoặc người dùng, quản lý các cài đặt khác nhau, tạo đối tượng mới và sử dụng PowerShell trong các tác vụ tự động hóa cho ESXi, vCenter Server, vSphere, vSAN và các sản phẩm VMware khác.

Hiện tại, VMware đang phát triển phiên bản PowerCLI chỉ dành cho PowerShell Core (7.0+). Phiên bản PowerShell này đa nền tảng và có thể được sử dụng trong Windows, Linux hoặc macOS. Chỉ các bản sửa lỗi bảo mật được phát hành cho các mô-đun PowerCLI trước đó dành cho Windows PowerShell 5.x. Bạn nên sử dụng phiên bản PowerShell Core cập nhật.

Cách cài đặt Mô-đun VMware PowerCLI trên Windows?

Bạn có thể cài đặt VMware PowerCLI trong Windows trực tuyến hoặc ngoại tuyến.

Để cài đặt PowerCLI từ Thư viện PowerShell trực tuyến, hãy chạy lệnh bên dưới:

Install-Module -Name VMware.PowerCLI

PowerCLI vSphere phiên bản 6.5 trở về trước được phân phối dưới dạng trình cài đặt MSI.

Nếu bạn chỉ muốn cài đặt mô-đun cho người dùng hiện tại:

Install-Module VMware.PowerCLI -Scope CurrentUser

Theo mặc định, phiên bản PowerCLI mới nhất được cài đặt từ Thư viện PowerShell. Nếu bạn muốn cài đặt một phiên bản PowerCLI cụ thể, bạn có thể hiển thị danh sách đầy đủ các phiên bản hiện có và cài đặt phiên bản bạn muốn:

Find-Module -Name VMware.PowerCLI -AllVersions|select version
Install-Module -Name VMware.PowerCLI -RequiredVersion 12.4.0.17860403

VMware PowerCLI:Cách cài đặt và quản lý vSphere và ESXi

Trong quá trình cài đặt, bạn sẽ được nhắc cập nhật nhà cung cấp NuGet của mình. Ngoài ra, hãy xác nhận cài đặt từ kho lưu trữ PowerShell Gallery không đáng tin cậy. Bạn có thể đặt nó thành một địa chỉ đáng tin cậy bằng cách sử dụng Set_PSRepository lệnh ghép ngắn.

Kiểm tra xem các mô-đun PowerCLI đã được cài đặt chưa và hiển thị các phiên bản của chúng:

Get-Module -ListAvailable VMware* | Select Name,version

VMware PowerCLI:Cách cài đặt và quản lý vSphere và ESXi

Để cập nhật phiên bản mô-đun PowerCLI của bạn, chỉ cần chạy lệnh:

Update-Module -Name VMware.PowerCLI

Nếu bạn đã cài đặt mô-đun quản lý gói Choco trong Windows, bạn có thể tìm thấy mô-đun PowerCLI trong kho lưu trữ:

choco search vmware

và cài đặt nó:

choco install vmware-powercli-psmodule

Mô-đun PowerCLI chưa có sẵn trong bộ cánh.

Nếu bạn muốn cài đặt PowerCLI trên một máy tính bị cô lập (môi trường bị ngắt kết nối), bạn có thể sử dụng trình cài đặt ngoại tuyến.

  1. Tải xuống tệp ZIP với mô-đun PowerCLI https://code.vmware.com/web/tool/vmware-powercli (kích thước của tệp nén ZIP với VMware-PowerCLI 12.4.1 hiện tại là khoảng 80 MB);
  2. Giải nén tệp lưu trữ vào thư mục có mô-đun PowerShell trên máy tính (bạn có thể lấy danh sách các thư mục mô-đun PoSh bằng cách sử dụng $env:PSModulePath ). Thông thường C:\Program Files\WindowsPowerShell\Modules được sử dụng.
  3. Bỏ chặn các tệp được tải xuống từ Internet:
    cd “c:\Program Files\WindowsPowerShell\Modules”
    Get-ChildItem * -Recurse | Unblock-File
  4. Mở bảng điều khiển PowerShell và đảm bảo rằng mô-đun PowerCLI hiện khả dụng:Get-Module -Name VMware.PowerCLI –ListAvailable
Đọc thêm về cài đặt ngoại tuyến của mô-đun PowerShell.

Để nhập mô-đun PowerCLI vào phiên PowerShell ISE hoặc Visual Studio Code hiện tại, hãy chạy lệnh sau:

Import-Module VMware.VimAutomation.Core

Bạn có thể thấy thông báo lỗi này khi tải mô-đun:

Import-Module: File C:\Program Files\WindowsPowerShell\Modules\VMware.VimAutomation.Sdk\12.4.0.18627054\VMware.VimAutomation.Sdk.psm1 cannot be loaded because running scripts is disabled on this system.

Sau đó, bạn phải định cấu hình chính sách thực thi tập lệnh PowerShell. Để cho phép sử dụng mô-đun trong phiên hiện tại:

Set-ExecutionPolicy Unrestricted -Scope Process

Bạn có thể sử dụng mô-đun PowerCLI được cài đặt trên máy tính từ xa. Để làm điều đó, hãy nhập nó từ xa bằng PSRemoting:

$session = New-PSSession -ComputerName mun-svr01

Nhập mô-đun PowerCLI vào máy tính của bạn:

Import-Module -PSsession $session -Name VMware.VimAutomation.Core

Đừng quên đóng phiên khi bạn hoàn thành:

Remove-PSSession $session

Cài đặt Mô-đun PowerCLI trên Linux

Bạn có thể cài đặt và sử dụng PowerCLI cả trong Windows và Linux. Đầu tiên, cài đặt PowerShell Core trên máy chủ Linux của bạn. Sau đó chạy các lệnh sau trong bảng điều khiển để cài đặt VMware PowerCLI:

pwsh
Install-Module -Name VMware.PowerCLI

VMware PowerCLI:Cách cài đặt và quản lý vSphere và ESXi

Nhập mô-đun vào phiên của bạn:

Import-Module VMware.PowerCLI

Lệnh PowerCLI cơ bản để quản lý VMware vSphere và VM

Bạn có thể nhận danh sách các lệnh ghép ngắn trong mô-đun PowerCLI như sau (hơn 2200 lệnh có sẵn):

Get-Command –Module *vmware*

VMware PowerCLI:Cách cài đặt và quản lý vSphere và ESXi

Để tắt thông báo Chương trình Cải thiện Trải nghiệm Khách hàng (CEIP) của VMware:

Set-PowerCLIConfiguration -Scope AllUsers -ParticipateInCeip $false

Để kết nối với Máy chủ vCenter hoặc máy chủ ESXi:

Connect-VIServer <vCenter_or_ESXi_FQDN>

Nếu bạn đang sử dụng chứng chỉ SSL tự ký cho Máy chủ vCenter của mình, PowerCLI sẽ chặn kết nối:

Connect-VIServer Error: Invalid server certificate. Use Set-PowerCLIConfiguration to set the value for the InvalidCertificateAction option to Prompt if you'd like to connect once or to add a permanent exception for this server.
Additional Information: Could not establish trust relationship for the SSL/TLS secure channel with authority.

Để bỏ qua chứng chỉ tự ký:

Set-PowerCLIConfiguration -Scope AllUsers -InvalidCertificateAction Warn

Để hiển thị danh sách các máy ảo đã đăng ký trên máy chủ ESXi (hoặc vCenter) của bạn:

Get–VM

Để chỉ hiển thị các máy ảo đã tắt nguồn:

Get-VM | Where {$_.Powerstate -ne “PoweredOn”} | Select Name, VMHost, NumCPU, MemoryMB, Version|Format-Table

VMware PowerCLI:Cách cài đặt và quản lý vSphere và ESXi

Để khởi động máy ảo:

Start-VM -VM MUNTestVM1

Để khởi động lại máy ảo một cách chính xác (sử dụng tác nhân công cụ VMware):

Restart-VMGuest -VM MunTestVM1 -Confirm:$False

Để tắt máy ảo:

Shutdown-VMGuest -VM MunTestVM1 -Confirm:$False

Để hiển thị danh sách các ảnh chụp nhanh cho một máy ảo:

Get-VM -VM MunTestVM1 | Get-Snapshot| Format-List

Để di chuyển một máy ảo đang chạy sang máy chủ khác bằng VMotion, lệnh Move-VM được sử dụng. Ví dụ:bạn muốn di chuyển tất cả các máy ảo từ mun-esxi1 sang mun-esxi2:

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

Để tạo một máy ảo mới, hãy sử dụng New-VM lệnh ghép ngắn:

New-VM –Name MunTestVM1 -VMHost mun-esxi1 –ResourcePool Production –DiskGB 20 –DiskStorageFormat Thin –Datastore MUN_MSA2000_Prod1

Sử dụng Set-VM lệnh ghép ngắn để thay đổi cài đặt máy ảo.

Sử dụng lệnh ghép ngắn PowerCLI, bạn có thể tương tác với hệ điều hành khách trên máy ảo của mình. Để làm điều đó, VMware Tools phải được cài đặt trong máy ảo. Bạn có thể cập nhật VMware Tools như hình dưới đây:

Get-VMGuest MunTestVM1 | Update-Tools

Sử dụng Invoke-VMS, bạn có thể chạy tập lệnh hoặc chương trình trong hệ điều hành Windows khách:

$script = '"%programfiles%\Common Files\Microsoft Shared\MSInfo\msinfo32.exe" /report "%tmp%\inforeport"'
Invoke-VMScript -ScriptText $script -VM MunTestVM1 -HostCredential $hostCred -GuestCredential $VMCred -ScriptType Bat

Để sao chép tệp vào tất cả các máy ảo, hãy chạy lệnh sau:
Get-VM | Copy-VMGuestFile -Source C:\PS\get-size.ps1 -Destination C:\PS\ - LocalToGuest -GuestUser administrator -GuestPassword P@ssdr0w2

Mô-đun chứa các lệnh ghép ngắn để quản lý các cụm, trung tâm dữ liệu, kho dữ liệu và máy chủ ESXi:

Get-VMHost
Get-Datacenter
Get-Cluster
Get-Datastore
Get-VirtualPortGroup

Để hiển thị danh sách các máy chủ ESXi trong một cụm:

Get-Cluster munprod1 | Get-VMHost | sort name

Đặt một máy chủ ESXi cụ thể vào chế độ bảo trì:
Set-VMhost -VMHost mun-esxi1 -State Maintenance

Để kết nối iSCSI LUN với máy chủ ESXi và tạo kho dữ liệu VMFS trên đó:
Get-ScsiLun -VmHost mun-esxi1 | ft
New-Datastore -Name 'mun_iscsi_datastore' -VMHost mun-esxi1 -Path naa.6000xxxxxxxxxxxxxxxx -Vmfs

Mẹo. PowerCLI hoạt động ở chế độ chỉ đọc với VMware vSphere Hypervisor miễn phí. Điều này có nghĩa là bạn có thể sử dụng các lệnh để xem cài đặt máy chủ và máy ảo, nhưng bạn không thể thay đổi chúng.

Tập lệnh mẫu PowerCLI

Có một số ví dụ về việc sử dụng PowerCLI để lấy thông tin về các hạng mục cơ sở hạ tầng VMware và để tự động hóa một số hành động trên trang web. Bạn có thể sử dụng các ví dụ từ các bài viết sau để viết tập lệnh PowerCLI của riêng mình:

  • Kiểm tra dung lượng đĩa trống trên Kho dữ liệu VMFS
  • Ánh xạ Đĩa ảo VMware (Tệp VMDK) và Ổ đĩa Windows
  • Cách tìm máy ảo VMware theo địa chỉ IP hoặc địa chỉ MAC?
  • Định cấu hình SNMP trên Máy chủ VMware ESXi
  • Làm cách nào để buộc khởi động lại một máy ảo VMware bị kẹt?
  • Cách tự động cập nhật Windows trong VMware Templates?
  • Đưa Trình điều khiển vào Hình ảnh Cài đặt ESXi
  • Cảnh báo tình trạng cần hợp nhất của VMware VM
  • Nâng cấp Phiên bản Phần cứng VM

vSphere PowerCLI là một công cụ mạnh mẽ để quản lý và tự động hóa cơ sở hạ tầng VMware của bạn. PowerCLI bao gồm hơn 2000 cmdlet để quản lý đám mây và cơ sở hạ tầng VMware tại chỗ (vSphere, vSAN, vRealize Operations Manager, vCloud Director, Site Recovery Manager, Horizon, NSX-T, VMware Cloud Services, VMware Cloud trên AWS, v.v.).