開始在 Azure Stack Hub 中使用 PowerShell

PowerShell 的設計訴求是從命令列管理資源。 當您想要建置使用 Azure Resource Manager 模型的自動化工具時,就可以使用 PowerShell。 PowerShell 模組可以定義為一組 PowerShell 函式群組,用來管理特定區域的所有層面。 若要使用 Azure Stack Hub,您必須能處理各組 PowerShell Cmdlet。

本文可協助您瞭解 Azure Stack Hub 中使用的各種 PowerShell 模組。 當您在 Azure Stack Hub 中使用 PowerShell 時,您可以與任四組 API 互動,如下表所示:

API PowerShell 參考 REST 參考
全域 Azure Resource Manager Azure PowerShell 模組 REST API 瀏覽器
Azure Stack Hub Resource Manager 管理 Azure Stack Hub 中的 API 版本設定檔 管理 Azure Stack Hub 中的 API 版本設定檔
Azure Stack Hub 管理員端點 Azure Stack Hub 管理員模組 [REST API 瀏覽器 - Azure Stack Hub](/rest/api/?term=Azure Azure Stack Admin)
Azure Stack Hub 中具有特殊權限的端點 使用 Azure Stack Hub 中具有特殊權限的端點

每個介面都可連絡全域 Azure 或 Azure Stack Hub 中的資源提供者。 資源提供者會啟用 Azure 功能。 例如,「Azure 計算」資源提供者可讓您以程式設計方式存取虛擬機器的建立和管理及其支援的資源。

資源提供者會提供用於管理和設定資源的功能及控制項。 您可以使用 Azure Resource Manager,以程式設計方式存取資源提供者。 接著,介面會提供適用於 PowerShell、Azure CLI 和您自有 REST 用戶端的表面。

Azure Stack PowerShell Hub 位於何處

下列區塊圖顯示各組 PowerShell 模組之間的關聯性。 您可以從電腦中載入 PowerShell 模組,並管理全域 Azure 和 Azure Stack Hub。

Azure Stack Hub PowerShell

全域 Azure

Azure PowerShell 有一組 Cmdlet 會使用目前版本的 Azure Resource Manager 來處理 Azure 資源。 Azure PowerShell 會使用 .NET Standard 版本,這表示您可以搭配 Windows、macOS 和 Linux 使用 PowerShell 版本。 Azure PowerShell 也可在 Azure Cloud Shell 取得。 如需詳細資訊,請參閱開始使用 Azure PowerShell

Azure Stack Hub Resource Manager

Azure Stack Hub PowerShell 提供一組使用舊版 Azure Resource Manager 的 Cmdlet。 這些 Cmdlet 與 Azure Stack Hub 中的資源提供者相容。 Azure Stack Hub 中的每個資源提供者都會使用全域 Azure 中找到的舊版提供者。 為了協助您協調 Azure Stack Hub 所支援的每個提供者版本,您可以使用 API 設定檔。 如需詳細資訊,請參閱管理 Azure Stack Hub 中的 API 版本設定檔

Azure Stack Hub 系統管理員

Azure Stack Hub 會將一組資源提供者公開給雲端操作員,讓操作員能夠安裝及維護 Azure Stack Hub。 在全域 Azure 中,此互動會從使用者擷取,並在幕後處理,做為 Azure 的一部分。 不過有了 Azure Stack Hub 後,企業可以支援私人雲端。 若要執行這些工作,操作員需與 Azure Stack Hub 管理員 API 互動。 如需詳細資訊,請參閱安裝適用於 Azure Stack Hub 的 PowerShell

Azure Stack Hub 中具有特殊權限的端點

針對 Azure Stack Hub 中的操作員活動,例如測試安裝和存取記錄,操作員可以與具特殊權限的端點 (PEP) 互動。 PEP 是預先設定的遠端 PowerShell 主控台,可讓操作員有足夠的存取權限來執行特定工作。 此端點使用 PowerShell 恰到好處的系統管理 (Just Enough Administration,JEA) 來公開一組有限的 Cmdlet。 如需詳細資訊,請參閱使用 Azure Stack Hub 中具有特殊權限的端點

Azure Stack Hub 工具

Azure Stack Hub 可在 GitHub 存放庫的 AzureStack-Tools 中啟用指令碼和其他 Cmdlet。 AzureStack-Tools 會裝載用來管理資源並將其部署至 Azure Stack Hub 的 PowerShell 模組。 如果您打算建立 VPN 連線能力,您可以將這些 PowerShell 模組下載到 Azure Stack 開發套件或以 Windows 為基礎的外部用戶端。 如需詳細資訊,請移至 AzureStack-Tools 頁面。

在 Azure Stack Hub 中使用 PowerShell

PowerShell 會提供程式設計的方式來與 Azure Resource Manager 互動。 您可以使用互動式命令提示字元,或者,如果您要自動化工作,您可以撰寫指令碼。

如果您花了很多時間使用 Azure Stack Hub PowerShell,您會發現自己正在安裝及重新安裝模組。 如果您同時使用全域 Azure,這將會是個挑戰,因為視您的目標而定,您必須先解除安裝模組,然後再重新安裝。

您可以使用 Docker 容器來隔離本機電腦上的每個 PowerShell 版本。 若要使用 Docker 容器,以便在 PowerShell 模組集合之間做切換,請參閱使用 Docker 來執行 PowerShell

後續步驟