本页面介绍了与该服务使用 Azure 应用商店部署 Microsoft Azure Edge 相关的要求。
如果您或者您的 IT 或安全组织已在部署的 Microsoft Azure 订阅中针对 Azure 应用商店产品使用或 Azure 应用商店产品订购设置限制,则这些信息将适用。
为了缩短部署时间,Edge 网关和 Unified Access Gateway 实例的部署需要使用我们在 Azure 应用商店中提供的产品。请注意,该服务使用 Azure 应用商店部署 Microsoft Azure Edge 的做法仅适用于基于虚拟机的 Edge 部署,而不适用于基于 AKS 的部署。
Azure 应用商店与 Edge 部署的关系
部署代码会尝试通过 API 调用以编程方式接受 Azure 应用商店中与名为 omnissallc 的 publisherID 对应的 Horizon Cloud 产品条款。
| 相关实体 | publisherID | offerID | planID |
|---|---|---|---|
| Edge 网关 | omnissallc | horizon-edge-gw | byol_release |
| Unified Access Gateway | omnissallc | omnissa-hcs-uag | omnissa-hcs-uag-v2 |
**注意:**不支持通过导航到 Azure 应用商店使用 Azure 门户来查看这些产品。可通过 API 调用以编程方式访问 Horizon Cloud 发布的这些产品。
API 调用要求
为成功使用此编程方式,Microsoft Azure Edge 部署的 Azure 订阅必须满足以下几节中所述的要求。
这些项目允许通过部署程序 API 调用来接受 Azure 应用商店中与上表所列的服务 publisherID、offerID 和 planID 对应的 Horizon Cloud 产品条款。
这些要求适用于 Edge 网关和 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 资源类型,则 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 应用商店中供部署程序代码使用的服务产品。
如果您的 IT 或安全团队拒绝在订阅中允许此资源类型,他们可以通过执行后面将产品添加到企业的 Azure 专用应用商店集合一节中所述的操作,将相应 Horizon Cloud 产品 SKU 添加到企业的 Azure 专用应用商店。然后,服务的 API 调用便可以从那里获取相应的产品。
当企业管理员为其 Azure 企业租户关闭 Azure 应用商店购买功能时的要求
如 Microsoft Azure 文档中所述,企业管理员可以针对其企业 Azure 租户下的所有 Azure 订阅关闭 Azure 应用商店购买功能。
这样做将限制从 Azure 应用商店购买来自 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 应用商店集合,然后通过执行后面将产品添加到企业的 Azure 专用应用商店集合一节中所述的操作来添加 Horizon Cloud 产品。
将产品添加到企业的 Azure 专用应用商店集合
Microsoft Azure 提供了创建和管理专用 Azure 应用商店集合以供订阅使用的功能。如了解 Microsoft - 使用专用 Azure 应用商店进行监管和控制中所述,此功能允许 IT 管理员预先批准、挑选和控制其用户可以使用全球 Azure 应用商店中的哪些第三方解决方案。如该页面中所述,必须为将负责管理专用应用商店的管理员分配“应用商店管理员”角色。
为企业 Azure 租户创建专用应用商店后,具有“应用商店管理员”角色的管理员即可将产品添加到专用应用商店集合中。将产品添加到租户的专用应用商店后,将可以通过服务 API 调用获取这些产品以供在部署和升级时使用。
Microsoft 提供了一些 PowerShell 命令,用于将特定发布者提供的产品添加到专用应用商店集合。
请参阅 Microsoft 参考文档的了解 Microsoft - 向专用应用商店添加产品中所述的运行 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 网关添加产品:
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
此页面对您有帮助吗?