在 Azure Stack Hub 中将 API 版本配置文件与 .NET 配合使用

重要

.NET SDK 已从系列 1 更新到系列 2。 强烈建议尽快迁移到 track 2 SDK。 有关说明,请参阅 此迁移指南

适用于 Azure Stack Hub 资源管理器的 .NET SDK 提供了有助于生成和管理基础结构的工具。 SDK 中的资源提供程序包括计算、网络、存储、应用服务和 Key Vault。 .NET SDK 包含 14 个 NuGet 包。 如果您正在使用已弃用的 track 1 .NET SDK(不推荐),则这些包会使用 API 配置文件进行版本标识,例如 2020-09-01-hybrid2019-03-01-hybrid。 .NET SDK 中的 API 配置文件通过帮助你在 Azure 资源和 Azure Stack Hub 资源之间进行切换来实现混合云开发。 有关详细信息,请参阅 .NET 和 API 版本配置文件 部分。

安装 Azure .NET SDK

.NET 和 API 版本特性

API 配置文件是资源提供程序和 API 版本的组合。 使用 API 配置文件获取资源提供程序包中每种资源类型的最新最稳定版本。

注释

NuGet 包规范的 ResourceProvider 部分必须更改。 此外,Track 1 .NET SDK 的包已弃用,因此您可能会遇到错误。 建议尽快更新到 track 2 .NET SDK。

Profiles

对于包含日期的配置文件,若要使用其他 SDK 配置文件或版本,请将日期替换为 。Microsoft.Azure.Management.Profiles.hybrid_<date>.ResourceManager 例如,对于 2008 版本,配置文件是 2019_03_01,字符串变为 Microsoft.Azure.Management.Profiles.hybrid_2019_03_01.ResourceManager。 请注意,有时 SDK 团队会更改包的名称,因此只需将字符串的日期替换为其他日期可能无法正常工作。 请参阅下表以了解配置文件和 Azure Stack 版本的关联。

Azure Stack 版本 个人资料
2311 2020_09_01
2301 2020_09_01
2206 2020_09_01
2108 2020_09_01
2102 2020_09_01
2008 2019_03_01

有关 Azure Stack Hub 和 API 配置文件的详细信息,请参阅 API 配置文件摘要

Subscription

如果还没有订阅,请创建一个订阅,并保存稍后要使用的订阅 ID。 有关如何创建订阅的信息,请参阅 本文档

服务主体

应在某个位置创建和保存服务主体及其关联的环境信息。 建议使用具有 owner 角色的服务主体,但根据具体示例,contributor 角色也可能足够。 有关所需值,请参阅 示例存储库 中的自述文件。 可以使用 SDK 语言支持的任何格式(例如从 JSON 文件(我们的示例使用)读取这些值。 根据要运行的示例,并非所有值都可以使用。 有关更新的示例代码或详细信息,请参阅 示例存储库

租户 ID

若要查找 Azure Stack Hub 的目录或租户 ID,请按照 本文中的说明进行作。

注册资源提供程序

按照本文档的指引注册所需的资源提供程序。 需要这些资源提供程序,具体取决于要运行的示例。 例如,如果要运行 VM 示例, Microsoft.Compute 则需要资源提供程序注册。

Azure Stack 资源管理器终结点

Azure 资源管理器(ARM)是一种管理框架,使管理员能够部署、管理和监视 Azure 资源。 Azure 资源管理器可以在单个作中以组而不是单独方式处理这些任务。 可以从资源管理器终结点获取元数据信息。 终结点返回一个 JSON 文件,其中包含运行代码所需的信息。

  • Azure Stack 开发工具包 (ASDK) 中的 ResourceManagerEndpointUrl 为: https://management.local.azurestack.external/
  • 集成系统中的 ResourceManagerEndpointUrl 是:https://management.region.<fqdn>/,其中 <fqdn> 为您的完全限定域名。
  • 若要检索所需的元数据: <ResourceManagerUrl>/metadata/endpoints?api-version=1.0. 有关可用的 API 版本,请参阅 Azure rest API 规范。 例如,在2020-09-01配置文件版本中,你可以将api-version更改为2019-10-01,以便用于资源提供程序microsoft.resources

示例 JSON:

{
   "galleryEndpoint": "https://portal.local.azurestack.external:30015/",
   "graphEndpoint": "https://graph.chinacloudapi.cn/",
   "portal Endpoint": "https://portal.local.azurestack.external/",
   "authentication": 
      {
         "loginEndpoint": "https://login.chinacloudapi.cn/",
         "audiences": ["https://management.yourtenant.partner.onmschina.cn/3cc5febd-e4b7-4a85-a2ed-1d730e2f5928"]
      }
}

Samples

请参阅 此示例存储库 ,了解最新(跟踪 2)示例代码。 有关 Track 1 示例代码,请参阅 这个示例存储库。 根 README.md 描述了通用要求,每个子目录都包含一个特定示例,README.md 描述了如何运行该示例。

请参阅 此处 ,了解适用于 Azure Stack 版本 2008 或配置文件 2019-03-01 的示例,以及以下示例。

后续步骤

详细了解 API 配置方案: