VMware PowerCLI:安裝和腳本指南

PowerCLI是VMWare的事實上的方法,用於使用PowerShell管理vCenter。在本教程中,您將學習如何從頭開始:下載、安裝和理解PowerCLI如何幫助您提高工作效率。

在這個過程中,您將學到:

  • 如何識別您在舊腳本中可能遇到的PowerCLI的歷史版本如何安裝最新版本的PowerCLI
  • 使用VMware Code作為資源
  • 如何在Windows PowerShell 5.1和PowerShell 6/7之間安裝VMware PowerCLI,以實現跨平台使用。

“在大多數方面,VMware PowerCLI是虛擬化管理者工具包中最一致的管理界面。”

這段話概述了PowerCLI在系統管理員工具包中的可靠性和重要性。這段話是在2019年的PowerShell Summit上的VMware PowerCLI會議中分享的。

與vSphere和VMware的接口經歷了多次迭代,從最初的軟件客戶端,到Flash客戶端,再到HTML5和Flex Web客戶端版本。在每個新版本中,界面都以常常有缺陷或缺少功能的方式進行了更改。

自動化不僅僅是本地的ESXi主機,還可以使用PowerCLI與VMware vCenter輕鬆管理多個主機。通過VMware主機支持,提供虛擬桌面。

另一方面,VMware PowerCLI的語法在其生命周期中保持穩定,只進行了一次分發變更。這個重大變更是從PowerShell插件轉變為PowerShell模塊。

PowerCLI在管理VMware產品時是一個堅定的存在,為了保持一致性而存在。

從插件到無公共訪問

VMware PowerCLI的原始下載位置位於PowerCLI 5.1頁面鏈接之後。由於這個限制,公眾只能有限地訪問這個工具。

PowerCLI 5.1及早期版本也是一种PSSnapin而不是模块,这使得可移植性更加困难。作为本博客的追随者,您可能会认识到这是一种对于此类工具来说过时的格式。由于安装步骤繁琐,Snapin更难以获得PowerCLI的大规模采用。幸运的是,最新版本的PowerCLI 6.0以PowerShell模块的形式发布,而不是Snapin!

随着2015年9月发布的PowerCLI 6.0版本,游戏开始改变。这个版本是作为PowerShell模块的首次发布,总共配备了约400个命令。然而,直到2017年4月20日发布的6.5.1版本,仍然需要使用my.vmware.com账户。PowerShell Gallery

在当前版本(11.3.0)的VMware PowerCLI中,该模块共有近700个命令,用于管理多种VMware产品。这些产品包括vCenter、vCloud Director、VMware Horizon等等。

随着VMware产品组合的不断增长,命令列表也在继续扩大,但经得住考验的PowerCLI标准仍然像一种坚如磐石的一致性力量。

Cmdlets in the PowerCLI PowerShell module

先决条件

我们准备进行演示了,所以请确保您具备以下所有先决条件,以便能够跟着我一起操作。

  • 用于验证测试的VMware主机或vCenter服务器
  • Windows、Mac或Linux客户端计算机

下載 VMware PowerCLI

PowerCLI 專案團隊的新長期家在此連結。此模組的所有社群提出的功能要求、評論和文件現在都屬於與 SDK、API 和認證資源相同的網站。

如果您有任何問題或希望直接向團隊提出功能要求,您可以聯繫 PowerCLI 團隊和圍繞此專案的社群,方式是訪問 code.vmware.com。社群和 VMware 專案團隊對問題、關注和新想法都非常積極回應。

如果您想通過網絡進行 PowerCLI 下載,PowerCLI 團隊提供了兩個選擇的 PowerShell 模組的直接連結:

  • PowerShell 資源庫的連結,可使用 PowerShell 的套件管理器進行下載和安裝
  • A .zip archive of the module’s contents, to be manually installed

PowerShell 資源庫是下載 PowerCLI 最常見的方法,但 ZIP 壓縮檔案也可以使用。請注意,您不必在此處使用 PowerShell 資源庫的連結,也可以通過 PowerShell 進行下載。

在 Windows PowerShell 中安裝 VMware PowerCLI

有幾種不同的安裝 PowerCLI 的方法。

解壓縮 ZIP 檔案

如果您從上述頁面通過網絡下載了 PowerCLI,您需要手動安裝它。您必須將 PowerCLI 放在 PowerShell 可以看到的位置。

要透過提供的zip包安裝模組,您需要將內容提取到所選模組位置。這個位置可能是您的使用者配置文件位置(非管理範圍)或系統範圍的模組文件夾。

%UserProfile%\Documents\WindowsPowerShell\Modules
C:\Program Files\WindowsPowerShell\Modules

將.zip內容提取到上述其中一個位置。

您可以通過在PowerShell控制台中從PowerShell庫下載並安裝PowerCLI,這是最簡單且最快的方法。以下是使用此方法將新模組安裝到PowerShell的一般步驟的快速視頻。

但總的來說,您可以從管理的PowerShell提示符上執行以下操作完成工作。

PS51> Install-Module VMware.PowerCLI

如果您想在缺少管理權限的工作站上執行PowerCLI安裝,可以使用Scope參數將模組安裝到您的使用者配置文件模組路徑中。

PS51> Install-Module VMware.PowerCLI -Scope CurrentUser

在Linux上使用PowerShell 6安裝VMware PowerCLI

現在,您也可以在非Windows系統上安裝PowerCLI。例如,我們可以在Ubuntu上的PowerShell Core中安裝PowerCLI。同樣,根據您選擇下載ZIP文件,PowerShell庫的網鏈接或直接通過PowerShell控制台,安裝過程有所不同。

提取ZIP文件

根據Linux的版本,您將把.zip文件內容提取到不同的位置。

在終端中運行pwsh以在Linux上打開PowerShell。使用以下命令找到潛在的PSModulePath位置。

PS61> ($env:PSModulePath).split(":")
Directories in PSModulePath

一旦确定了要安装模块文件的位置,将其下载到该位置并准备进行解压缩。您可以将它们解压缩到/home/文件夹以供用户访问,或将其解压缩到/opt/位置以供系统访问。

在这个基于Linux的安装示例中,我正在使用Ubuntu 18.04,并将使用从这里下载的.zip文件安装VMware PowerCLI 11,将模块安装供此计算机上的所有用户访问。

> cd /opt/microsoft/powershell/6/Modules
> sudo apt install unzip
> sudo wget https://vdc-download.vmware.com/vmwb-repository/dcr-public/8bf09c32-43c0-46d4-8816-92515c3b8228/15761272-b339-4da4-888a-4b8633f9a964/VMware-PowerCLI-11.3.0-13990089.zip
> sudo unzip ./VMware-PowerCLI-11.3.0-13990089.zip

然后,您可以导入此模块,因为模块文件现在位于$PSModulePath位置之一,通过正常执行以下命令:

Import-Module VMware.PowerCLI

安装旧版VMware PowerCLI Snapin

有时您可能需要安装旧版PowerCLI snapin。也许您负责一些旧代码并需要解决问题。为了避免重新架构现有脚本,必须安装旧的snapin。

要安装旧的snapin,您需要一个my.vmware.com帐户登录并检索VMware-PowerCLI-5.1.0-3090428.exe文件。下载后,通过普通的Windows应用程序安装来安装snapin。

然后,您可以运行Add-PSSnapin将VMware cmdlet加载到会话中,或者以独立方式启动提供的VMware PowerCLI控制台。

下面您可以看到,我正在使用Add-PSSnapin cmdlet将PowerCLI版本5.1添加到我的当前控制台会话中。

PS51> Add-PSSnapin VMware*
PowerCLI snapins

啟動安裝的獨立 VMware PowerCLI 快捷方式,該快捷方式會隨版本 5.1 一起安裝。

PowerCLI v5.1 console

請注意,上述的擴充模組不與 PowerShell 6/7 相容。

驗證 PowerCLI 的安裝

無論使用哪個版本的 PowerShell,驗證 PowerCLI 安裝成功的方法都是相同的。第一步是在 PowerShell 控制台中確認模組是否存在。

Get-Module -ListAvailable VMware* 
Available PowerCLI modules

接下來,嘗試使用 PowerCLI 的 Connect-VIServer 命令來連接到 vCenter。這不僅可以驗證模組是否成功安裝,還可以測試是否能正確連接到基礎架構。

在 Windows 上

PS51> Connect-VIServer <FQDN of vCenter or ESXi Host>
Connecting to vCenter with VMware PowerCLI on Windows

在 Linux 上

在 Linux 上驗證安裝時,如果遇到任何連接問題,您必須先設定連接配置以解決無效(或默認的自簽名憑證)問題。下面我使用 PowerCLI 來連接到 vCenter。

PS> Set-PowerCLIConfiguration -InvalidCertificateAction:ignore
PS> Connect-VIServer <FQDN of vCenter or ESXi Host>
Connecting to vCenter with VMware PowerCLI on Linux

由於您成功連接到 VMware 端點,PowerCLI 現在正常運行!

開始使用 PowerCLI 吧!

自動化不僅限於本地 ESXi 主機,還可以使用 PowerCLI 與 VMware vCenter 輕鬆管理多個主機。使用由 VMware 主機支援的 VMware Horizon 來提供主機虛擬桌面。

從現在開始,您現在已經準備好回答那個老生常談的問題了:“如何安裝VMware PowerCLI?”。您現在可以開始著手編寫配置部署、虛擬機報告和維護任務的腳本。請繼續關注本博客,以了解有關開始使用PowerCLI的新記事和即將推出的文章!

進一步閱讀

Source:
https://adamtheautomator.com/vmware-powercli/