设置 Azure 云提供商
使用 Azure
云提供商时,你可以使用以下功能:
负载均衡器:在特定网络安全组中启动 Azure 负载均衡器。
持久卷:支持将 Azure Blob 磁盘和 Azure 托管磁盘与标准和高级 Storage Account 一起使用。
网络存储:通过 CIFS 挂载支持 Azure 文件。
Azure 订阅不支持以下账号类型:
- 单租户账号(即没有订阅的账号)。
- 多订阅账号。
RKE 和 RKE2 的先决条件
要为 RKE 和 RKE2 设置 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)。
- 选择 Azure Active Directory。
- 选择 App registrations。
- 选择 New application registration。
- 选择 Name,选择
Web app/API
作为 Application Type,并选择任意 Sign-on URL。 - 选择 Create。
在 App registrations 视图中,你应该会看到你创建的应用注册。APPLICATION ID 列中显示的值是需要用作 Azure Client ID 的值。
下一步是生成 Azure Client Secret:
- 打开你创建的应用注册。
- 在 Settings 视图中,打开 Keys。
- 输入 Key description,选择过期时间,然后选择 Save。
- Value 列中显示的生成值是需要用作 Azure Client Secret 的值。该值只会显示一次。
3. 配置应用注册权限
最后,为你的应用注册分配适当的权限:
- 前往 More services,搜索 Subscriptions 并打开它。
- 打开 Access control (IAM)。
- 选择 Add。
- 在 Role 中选择
Contributor
。 - 在 Select 中选择你创建的应用注册的名称。
- 选择 Save。
4. 设置 Azure 网络安全组名称
要使 Azure 负载均衡器正常工作,你需要自定义一个 Azure 网络安全组 (securityGroupName)。
如果你使用 Rancher Machine Azure 驱动来配置主机,则需要手动编辑主机,从而将主机分配给此网络安全组。
你需要在配置期间将自定义主机分配给此网络安全组。
只有需要成为负载均衡器后端的主机才需要分配到该组。
Rancher 中的 RKE2 集群设置
在集群配置中的云提供商下拉列表中选择 Azure。
- 配置云提供商。请注意,Rancher 会自动创建新的网络安全组、资源组、可用性集、子网和虚拟网络。如果你已经创建了其中的一部分或全部,则需要在创建集群之前指定它们。
- 你可以单击显示高级选项以查看更多自动生成的名称,并在需要的时候更新它们。你的云提供商配置必须与主机池中的字段匹配。如果你有多个池,它们必须使用相同的资源组、可用性集、子网、虚拟网络和网络安全组。
- 下面提供了一个示例。你可以根据需要对其进行修改。
云提供商配置示例
{
"cloud":"AzurePublicCloud",
"tenantId": "YOUR TENANTID HERE",
"aadClientId": "YOUR AADCLIENTID HERE",
"aadClientSecret": "YOUR AADCLIENTSECRET HERE",
"subscriptionId": "YOUR SUBSCRIPTIONID HERE",
"resourceGroup": "docker-machine",
"location": "westus",
"subnetName": "docker-machine",
"securityGroupName": "rancher-managed-KA4jV9V2",
"securityGroupResourceGroup": "docker-machine",
"vnetName": "docker-machine-vnet",
"vnetResourceGroup": "docker-machine",
"primaryAvailabilitySetName": "docker-machine",
"routeTableResourceGroup": "docker-machine",
"cloudProviderBackoff": false,
"useManagedIdentityExtension": false,
"useInstanceMetadata": true
}
在集群配置 > 高级选项、中,单击补充的 Controller Manager 参数下的添加,并添加
--configure-cloud-routes=false
标志。单击创建按钮来提交表单并创建集群。