確認您的 Microsoft Azure Edge 部署符合與服務使用 Azure Marketplace 相關的需求。
如果您或您的 IT 或安全組織,已在部署的 Microsoft Azure 訂閱中針對 Azure Marketplace 方案的使用或 Azure Marketplace 訂購設定限制,則此資訊適用於您。
為了縮短部署時間,Edge Gateway 與 Unified Access Gateway 執行個體的部署需要使用我們在 Azure Marketplace 中提供的方案。請注意,服務在 Microsoft Azure Edge 部署中使用 Azure Marketplace 的方式僅適用於 Edge 虛擬機器型部署,不適用於 AKS 型部署。
Azure Marketplace 與 Edge 部署的關係
部署程式碼會透過 API 呼叫,自動嘗試接受 Azure Marketplace 中由 publisherID omnissallc 所對應的 Horizon Cloud 方案的條款。
| 相關實體 | publisherID | offerID | planID |
|---|---|---|---|
| Edge Gateway | omnissallc | horizon-edge-gw | byol_release |
| Unified Access Gateway | omnissallc | omnissa-hcs-uag | omnissa-hcs-uag-v2 |
**附註:**不支援使用 Azure 入口網站導覽至 Azure Marketplace 來檢視這些方案。Horizon Cloud 會發佈這些方案,以便透過 API 呼叫進行程式化存取。
API 呼叫需求
此程式化方法的成功執行需要 Microsoft Azure Edge 部署的 Azure 訂閱符合以下章節所述的需求。
這些項目可讓部署工具 API 呼叫接受 Azure Marketplace 中 Horizon Cloud 方案的條款,對應至服務的 publisherID、offerID 和 planID (如上表所列)。
這些需求適用於 Edge Gateway 與 Unified Access Gateway 執行個體所使用的訂閱。
如果訂閱中未滿足下列項目,部署工具程式碼 API 呼叫將無法接受方案的條款,進而導致與該訂閱相關的部署失敗。
當部署的服務主體使用自訂角色時的需求
當使用自訂角色時,必須在自訂角色中包含以下權限:
Microsoft.MarketplaceOrdering/offertypes/publishers/offers/plans/agreements/readMicrosoft.MarketplaceOrdering/offertypes/publishers/offers/plans/agreements/write
當 Azure 原則限制訂閱中允許的 Azure 資源類型時的需求
有些 IT 組織的 Azure 原則可能會指定禁止使用所有 Azure 資源類型,除了依名稱明確允許的特定資源類型之外。
當您的 IT 或安全組織設定了此類 Azure 原則,以限制組織 Azure 訂閱中允許的資源類型時,Azure 原則的 AllowedResourceTypes 設定必須包含允許資源類型 Microsoft.MarketplaceOrdering/*。
如果訂閱的 Azure 原則未包含 Microsoft.MarketplaceOrdering/*,Horizon Cloud 支援將會看到記錄的錯誤訊息,其模式類似 Offer with PublisherId: 'omnissallc', OfferId: 'omnissa-hcs-xxxxx' cannot be purchased due to validation errors. Sku 'omnissa-hcs-xxxxxx' of offer 'omnissa-hcs-xxxxxx' by publisher 'omnissallc' is not available to you for deployment per the policy set by your IT Admin,其中 xxxxx 對應至前表中的其中一個 planID。
允許存取 Microsoft.MarketplaceOrdering/* 資源類型,可讓部署工具與升級程式碼進行 API 呼叫,以接受部署工具程式碼在 Azure Marketplace 中使用的服務方案。
如果您的 IT 或安全團隊拒絕在訂閱中允許此資源類型,他們可以選擇依照下方將方案新增至企業 Azure 私有商店集合一節中所述的動作,將 Horizon Cloud 方案的 SKU 新增至企業的 Azure 私有商店。服務的 API 呼叫即可從該處取得方案。
當企業管理員為其 Azure 企業租用戶關閉 Azure Marketplace 購買功能時的需求
如 Microsoft Azure 說明文件中所述,企業管理員可以針對其企業 Azure 租用戶下的所有 Azure 訂閱,關閉 Azure Marketplace 購買功能。
當他們這麼做時,Azure Marketplace 的採購將僅限於 Microsoft 發佈者提供的方案。此受限的採購方式會封鎖服務的 API 呼叫,導致無法從 omnissallc publisherID 擷取 Horizon Cloud 方案,進而阻止需要這些 API 呼叫的部署程序。
在此情境下,Horizon Cloud 支援團隊會看到依以下模式記錄的錯誤訊息,例如:Cannot complete purchase as your enrollment for this subscription doesn't allow purchase of marketplace paid products. Your Azure enrollment administrator can enable purchase of paid marketplace products.
此情況的解決方法是要求企業管理員建立並管理私有 Azure Marketplace 集合,並透過執行後續將方案新增至企業 Azure 私有商店集合一節中所述動作,將 Horizon Cloud 方案新增至其中。
將方案新增至企業的 Azure 私有商店集合
Microsoft Azure 提供了建立和管理私有 Azure Marketplace 集合以供訂閱使用的功能。如 Learn Microsoft - Govern and control using Private Azure Marketplace 頁面所述,此功能可讓 IT 管理員預先核准、挑選並控制使用者能從全球 Azure Marketplace 使用哪些第三方解決方案。如該頁面所述,必須將 Marketplace 管理員角色指派給負責管理私有商店的管理員。
在為企業 Azure 租用戶建立私有商店後,具有 Marketplace 管理員角色的管理員即可將方案新增至私有商店集合。將方案新增至租用戶的私有商店後,服務的 API 呼叫即可取得這些用於部署與升級的方案。
Microsoft 提供 PowerShell 命令,用於將特定發佈者的方案新增至私有商店集合。
請參閱 Microsoft 說明文件 Learn Microsoft - Add an offer to a private marketplace 中的內容,以瞭解執行相關 PowerShell 命令所需的先決條件。該 Microsoft 頁面也包含 Microsoft 為此用途提供的 PowerShell 命令。
將 Horizon Cloud 方案新增至 Azure 私有商店的範例
下列範例說明在滿足執行命令的先決條件後,用於將 Horizon Cloud 方案新增至該私有商店的 Microsoft PowerShell 命令。
-
首先,使用 Get-AzMarketplacePrivateStore 來取得 Azure 租用戶的
privateStoreId。(如需詳細資料,請參閱 Microsoft 說明文件 Get-AzMarketplacePrivateStore) -
接著,使用 Set-AzMarketplacePrivateStoreOffer 將 Horizon Cloud 方案新增至該私有商店。(如需詳細資料,請參閱 Microsoft 說明文件 Set-AzMarketplacePrivateStoreOffer)
在 PowerShell 中:
- 取得 Azure 租用戶的
privateStoreId,以便在下一組命令中使用。
Get-AzMarketplacePrivateStore
- 在下列命令中使用取得的
privateStoreId,以新增horizon-edge-gw和omnissa-hcs-uag的方案。
- 新增 Edge Gateway 的方案:
Set-AzMarketplacePrivateStoreOffer -privateStoreId your-tenant-privateStoreID -offerId omnissallc.horizon-edge-gw -SpecificPlanIdsLimitation @("byol_release")
- 新增 Unified Access Gateway 執行個體的方案:
Set-AzMarketplacePrivateStoreOffer -privateStoreId your-tenant-privateStoreID -offerId omnissallc.omnissa-hcs-uag -SpecificPlanIdsLimitation @("omnissa-hcs-uag-v2")
- 確認這些方案是否已列在租用戶的私有商店中。
Get-AzMarketplacePrivateStoreOffer -PrivateStoreId your-tenant-privateStoreID
此頁面對您有幫助嗎?