在 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-hybrid 和 2019-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 配置方案: