设置 Azure 云提供商

使用 Azure 云提供商时,你可以使用以下功能:

  • 负载均衡器:在特定网络安全组中启动 Azure 负载均衡器。

  • 持久卷:支持将 Azure Blob 磁盘和 Azure 托管磁盘与标准和高级 Storage Account 一起使用。

  • 网络存储:通过 CIFS 挂载支持 Azure 文件。

Azure 订阅不支持以下账号类型:

  • 单租户账号(即没有订阅的账号)。
  • 多订阅账号。

RKE 和 RKE2 的先决条件

要为 RKE 和 RKE2 设置 Azure 云提供商,你需要配置以下凭证:

  1. 设置 Azure 租户 ID
  2. 设置 Azure 客户端 ID 和 Azure 客户端密码
  3. 配置应用注册权限
  4. 设置 Azure 网络安全组名称

1. 设置 Azure 租户 ID

访问 Azure 门户,登录并转到 Azure Active Directory,然后选择 Properties。你的 Directory ID 是你的 Tenant ID (tenantID)。

如果要使用 Azure CLI,你可以运行 az account show 命令来获取信息。

2. 设置 Azure 客户端 ID 和 Azure 客户端密码

访问 Azure 门户,登录并按照以下步骤创建 App Registration 和对应的 Azure Client ID (aadClientId) 以及 Azure Client Secret (aadClientSecret)。

  1. 选择 Azure Active Directory
  2. 选择 App registrations
  3. 选择 New application registration
  4. 选择 Name,选择 Web app/API 作为 Application Type,并选择任意 Sign-on URL
  5. 选择 Create

App registrations 视图中,你应该会看到你创建的应用注册。APPLICATION ID 列中显示的值是需要用作 Azure Client ID 的值。

下一步是生成 Azure Client Secret

  1. 打开你创建的应用注册。
  2. Settings 视图中,打开 Keys
  3. 输入 Key description,选择过期时间,然后选择 Save
  4. Value 列中显示的生成值是需要用作 Azure Client Secret 的值。该值只会显示一次。

3. 配置应用注册权限

最后,为你的应用注册分配适当的权限:

  1. 前往 More services,搜索 Subscriptions 并打开它。
  2. 打开 Access control (IAM)
  3. 选择 Add
  4. Role 中选择 Contributor
  5. Select 中选择你创建的应用注册的名称。
  6. 选择 Save

4. 设置 Azure 网络安全组名称

要使 Azure 负载均衡器正常工作,你需要自定义一个 Azure 网络安全组 (securityGroupName)。

如果你使用 Rancher Machine Azure 驱动来配置主机,则需要手动编辑主机,从而将主机分配给此网络安全组。

你需要在配置期间将自定义主机分配给此网络安全组。

只有需要成为负载均衡器后端的主机才需要分配到该组。

Rancher 中的 RKE2 集群设置

  1. 集群配置中的云提供商下拉列表中选择 Azure

    • 配置云提供商。请注意,Rancher 会自动创建新的网络安全组、资源组、可用性集、子网和虚拟网络。如果你已经创建了其中的一部分或全部,则需要在创建集群之前指定它们。
    • 你可以单击显示高级选项以查看更多自动生成的名称,并在需要的时候更新它们。你的云提供商配置必须主机池中的字段匹配。如果你有多个池,它们必须使用相同的资源组、可用性集、子网、虚拟网络和网络安全组。
    • 下面提供了一个示例。你可以根据需要对其进行修改。

云提供商配置示例

  1. {
  2. "cloud":"AzurePublicCloud",
  3. "tenantId": "YOUR TENANTID HERE",
  4. "aadClientId": "YOUR AADCLIENTID HERE",
  5. "aadClientSecret": "YOUR AADCLIENTSECRET HERE",
  6. "subscriptionId": "YOUR SUBSCRIPTIONID HERE",
  7. "resourceGroup": "docker-machine",
  8. "location": "westus",
  9. "subnetName": "docker-machine",
  10. "securityGroupName": "rancher-managed-KA4jV9V2",
  11. "securityGroupResourceGroup": "docker-machine",
  12. "vnetName": "docker-machine-vnet",
  13. "vnetResourceGroup": "docker-machine",
  14. "primaryAvailabilitySetName": "docker-machine",
  15. "routeTableResourceGroup": "docker-machine",
  16. "cloudProviderBackoff": false,
  17. "useManagedIdentityExtension": false,
  18. "useInstanceMetadata": true
  19. }
  1. 集群配置 > 高级选项、中,单击补充的 Controller Manager 参数下的添加,并添加 --configure-cloud-routes=false 标志。

  2. 单击创建按钮来提交表单并创建集群。