將 Azure PowerShell 從 AzureRM 移轉至 Az
警告
自 2024 年 2 月 29 日起,AzureRM PowerShell 模組已正式淘汰。 建議使用者從 AzureRM 移轉至 Az PowerShell 模組,以確保持續受到支援與更新。
雖然 AzureRM 模組可能仍可運作,但不再進行維護或支援,是否繼續使用由使用者自行決定且風險自負。 如需轉換至 Az 模組的指引,請參閱我們的移轉資源。
判斷您是否正在使用 AzureRM PowerShell 模組
請使用下列命令,來判斷您是否已安裝 AzureRM PowerShell 模組:
Get-Module -Name AzureRM -ListAvailable
您也可以針對指令碼執行全文檢索搜索,以取得模式 *-AzureRM*
,來判斷其中是否有任何一個正在使用 AzureRM PowerShell 模組。
升級至 Az PowerShell 模組
針對 AzureRM Cmdlet 撰寫的指令碼不會自動使用 Az。 為了更輕鬆地轉換,已開發 AzureRM 至 Az 移轉工具組。 不移轉移到新命令集當然很方便,但本文將會協助您開始轉換到 Az PowerShell 模組。 若要深入了解為何會建立 Az PowerShell 模組,請參閱 Az PowerShell 模組簡介。
新的 Cmdlet 名稱已設計為易於了解。 請在 Cmdlet 名稱中使用 Az
,而非使用 AzureRm
或 Azure
。 例如,舊 Cmdlet New-AzureRMVm
已變成 New-AzVm
。
不過,移轉不只是熟悉新的 Cmdlet 名稱。 此外還有重新命名的模組、參數和其他重要變更。
若要查看 AzureRM 和 Az 之間重大變更的完整清單,請參閱從 AzureRM 到 Az 的完整變更。
確定現有指令碼可使用最新的 AzureRM 版本
在採取任何移轉步驟之前,請先確定系統上安裝了哪些版本的 AzureRM。 這樣做可讓您確定指令碼是在最新的版本上執行,而且也讓您知道必須解除安裝哪些版本的 AzureRM。
若要確定您已安裝哪些版本的 AzureRM,請執行下列範例:
Get-Module -Name AzureRM -ListAvailable -All
AzureRM 最新的可用版本為 6.13.2。 如果未安裝此版本,您現有的指令碼可能需要進行其他修改,才能使用本文和重大變更清單中未列出的 Az 模組。
如果您的指令碼無法使用 AzureRM 6.13.2,請根據 AzureRM 5.x 移轉至 6.x 指南加以更新。 如果您使用舊版的 AzureRM 模組,請參考各個主要版本適用的移轉指南。
選項 1 (建議):自動移轉您的 PowerShell 指令碼
此建議選項可將 AzureRM 指令碼遷移至 Az 所需的工作降到最低。
透過 AzureRM 至 Az 移轉工具組,您可以產生一個計劃,以判斷在對指令碼進行任何修改之前,以及在安裝 Az PowerShell 模組之前,要對其執行哪些變更。
將 PowerShell 指令碼從 AzureRM 自動遷移至 Az PowerShell 模組快速入門,會逐步引導您完成從 AzureRM 至 Az PowerShell 模組自動更新 PowerShell 指令碼的整個程序。
選項 2:使用相容性模式搭配 Enable-AzureRmAlias
當您處理新語法的更新時,Az 模組有相容性模式可協助您使用現有指令碼。 Enable-AzureRmAlias Cmdlet 會透過別名啟用相容性模式。 此模式可讓您在最少修改的情況下使用現有的指令碼,同時也能將完整遷移至 Az。 根據預設,Enable-AzureRmAlias
只會啟用目前 PowerShell 工作階段的相容性別名。 使用其 Scope
參數,在 PowerShell 工作階段之間保存相容性別名。 如需詳細資訊,請參閱 Enable-AzureRmAlias 參考文件。
重要
即使 Cmdlet 名稱已有別名,但 Az Cmdlet 仍可能有新的 (或重新命名的) 參數或已變更的傳回值。 請不要誤以為啟用別名就能完成移轉。 請參閱完整重大變更清單,找出您的指令碼可能需要更新之處。
淘汰 AzureRM PowerShell 模組,將不會淘汰對 Enable-AzureRmAlias
的支援。