你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在直接连接模式下部署数据控制器的先决条件

本文介绍如何准备在直接连接模式下为已启用 Azure Arc 的数据服务部署数据控制器。 在部署 Azure Arc 数据控制器之前,请了解计划部署已启用 Azure Arc 的数据服务中描述的概念。

在高级别上,在“直接”连接模式下创建 Azure Arc 数据控制器的先决条件包括:

  1. 具有 Kubernetes 群集的访问权限。 如果没有 Kubernetes 群集,则可以在 Azure Kubernetes 服务 (AKS) 上创建测试/演示群集。
  2. 使用已启用 Azure Arc 的 Kubernetes 将 Kubernetes 群集连接到 Azure。

请按照快速入门:部署已启用 Azure Arc 的数据服务 - 直接连接模式 - Azure 门户中的说明

使用已启用 Azure Arc 的 Kubernetes 将 Kubernetes 群集连接到 Azure

若要将 Kubernetes 群集连接到 Azure,请使用带有以下扩展或 Helm 的 Azure CLI az

安装工具

添加 Azure CLI 扩展

安装以下 az 扩展的最新版本:

  • k8s-extension
  • connectedk8s
  • k8s-configuration
  • customlocation

若要安装 az CLI 扩展,请运行以下命令:

az extension add --name k8s-extension
az extension add --name connectedk8s
az extension add --name k8s-configuration
az extension add --name customlocation

如果先前已安装k8s-extensionconnectedk8sk8s-configurationcustomlocation 扩展,则可以使用以下命令将其更新到最新版本:

az extension update --name k8s-extension
az extension update --name connectedk8s
az extension update --name k8s-configuration
az extension update --name customlocation

将群集连接到 Azure

使用已启用 Azure Arc 的 Kubernetes 将 Kubernetes 群集连接到 Azure

若要将 Kubernetes 群集连接到 Azure,请使用 Azure CLI az 或 PowerShell。

运行以下命令:

az connectedk8s connect --name <cluster_name> --resource-group <resource_group_name>
<pre>
Helm release deployment succeeded

    {
      "aadProfile": {
        "clientAppId": "",
        "serverAppId": "",
        "tenantId": ""
      },
      "agentPublicKeyCertificate": "xxxxxxxxxxxxxxxxxxx",
      "agentVersion": null,
      "connectivityStatus": "Connecting",
      "distribution": "gke",
      "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/AzureArcTest/providers/Microsoft.Kubernetes/connectedClusters/AzureArcTest1",
      "identity": {
        "principalId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "tenantId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "type": "SystemAssigned"
      },
      "infrastructure": "gcp",
      "kubernetesVersion": null,
      "lastConnectivityTime": null,
      "location": "eastus",
      "managedIdentityCertificateExpirationTime": null,
      "name": "AzureArcTest1",
      "offering": null,
      "provisioningState": "Succeeded",
      "resourceGroup": "AzureArcTest",
      "tags": {},
      "totalCoreCount": null,
      "totalNodeCount": null,
      "type": "Microsoft.Kubernetes/connectedClusters"
    }
</pre>

提示

上面未指定位置参数的命令会在资源组所在位置创建已启用 Azure Arc 的 Kubernetes 资源。 若要在其他位置创建已启用 Azure Arc 的 Kubernetes 资源,请在运行 az connectedk8s connect 命令时指定 --location <region>-l <region>

注意

如果你使用服务主体登录到 Azure CLI,则需要设置一个附加参数,用于在群集上启用自定义位置功能。

有关此任务的完整信息,请参阅将现有的 Kubernetes 群集连接到 Azure arc

验证是否创建了 azure-arc 命名空间 Pod

在执行下一步骤之前,请确保已创建所有 azure-arc- 命名空间 Pod。 运行以下命令。

kubectl get pods -n azure-arc

所有容器都返回“正在运行”状态。

当所有容器都返回运行状态时,可以将群集连接到 Azure。

(可选)保持 Log Analytics 工作区 ID 和共享访问密钥处于就绪状态

部署已启用 Azure Arc 的数据控制器后,可以在设置期间启用指标和日志的自动上传。 指标上传使用系统分配的托管标识。 但是,上传日志需要工作区 ID 和工作区的访问密钥。

部署完数据控制器后,你还可以启用或禁用指标和日志的自动上传。

有关说明,请参阅创建 Log Analytics 工作区

创建 Azure Arc 数据服务

完成这些先决条件后,可以部署 Azure Arc 数据控制器 | 直接连接模式 - Azure 门户使用 Azure CLI