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

教程:为 Azure Linux 容器主机群集启用遥测和监视

在本教程的第四部分(共五部分)中,你将设置容器见解来监视 Azure Linux 容器主机群集。 将了解如何执行以下操作:

  • 启用对现有群集的监视。
  • 验证代理是否已成功部署。
  • 验证是否启用了解决方案。

在下一个教程,也是最后一个教程中,你将了解如何升级 Azure Linux 节点。

先决条件

  • 在前面的教程中,你创建并部署了 Azure Linux 容器主机群集。 若要完成本教程,需要一个现有群集。 如果尚未完成这一步并想要继续操作,请从教程 1:使用适用于 AKS 的 Azure Linux 容器主机创建群集开始。
  • 如果要将现有的 AKS 群集连接到其他订阅中的 Log Analytics 工作区,则必须在具有 Log Analytics 工作区的订阅中注册 Microsoft.ContainerService 资源提供程序。 有关详细信息,请参阅注册资源提供程序
  • 需要最新版本的 Azure CLI。 运行 az --version 即可查找版本。 如果需要进行安装或升级,请参阅安装 Azure CLI

1 - 启用监视

选项 1:使用默认的 Log Analytics 工作区

以下步骤使用 Azure CLI 为 Azure Linux 容器主机群集启用监视。 在此示例中,不需要预先创建或指定现有的工作区。 此命令在 AKS 群集订阅的默认资源组中创建默认工作空间,从而简化了流程。 如果区域中尚不存在一个工作区,则创建的默认工作区将类似于 DefaultWorkspace-< GUID >-< Region > 格式。

az aks enable-addons -a monitoring -n testAzureLinuxCluster -g testAzureLinuxResourceGroup

输出的前几行应在 addonProfiles 配置中包含以下内容:

{
  "aadProfile": null,
  "addonProfiles": {
    "omsagent": {
      "config": {
        "logAnalyticsWorkspaceResourceID": "/subscriptions/<WorkspaceSubscription>/resourceGroups/DefaultResourceGroup-EUS2/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-<WorkspaceSubscription>-EUS2",
        "useAADAuth": "true"
      },
      "enabled": true,
      "identity": null
    }
  },
}

选项 2:指定 Log Analytics 工作区

在此示例中,可以指定 Log Analytics 工作区来启用 Azure Linux 容器主机群集的监视。 工作区的资源 ID 的格式为 "/subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.OperationalInsights/workspaces/<WorkspaceName>"

az aks enable-addons -a monitoring -n testAzureLinuxCluster -g testAzureLinuxResourceGroup --workspace-resource-id <workspace-resource-id>

输出类似于以下示例:

provisioningState       : Succeeded

2 - 验证代理和解决方案部署

运行以下命令,验证代理是否已成功部署。

kubectl get ds ama-logs --namespace=kube-system

输出应类似于以下示例,指示已正确部署:

User@aksuser:~$ kubectl get ds ama-logs --namespace=kube-system
NAME       DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-logs   3         3         3       3            3           <none>          3m22s

若要验证解决方案的部署,请运行以下命令:

kubectl get deployment ama-logs-rs -n=kube-system

输出应类似于以下示例,指示已正确部署:

User@aksuser:~$ kubectl get deployment ama-logs-rs -n=kube-system
NAME       DESIRED   CURRENT   UP-TO-DATE   AVAILABLE    AGE
ama-logs-rs   1         1         1            1            3h

3 - 验证解决方案配置

使用 aks show 命令确定是否已启用解决方案、Log Analytics 工作区资源 ID 是什么,以及有关群集的摘要信息。

az aks show -g testAzureLinuxResourceGroup -n testAzureLinuxCluster

片刻之后,该命令将会完成,并返回有关解决方案的 JSON 格式信息。 命令结果应显示监视加载项配置文件,并类似于以下示例输出:

"addonProfiles": {
    "omsagent": {
      "config": {
        "logAnalyticsWorkspaceResourceID": "/subscriptions/<WorkspaceSubscription>/resourceGroups/<DefaultWorkspaceRG>/providers/Microsoft.OperationalInsights/workspaces/<defaultWorkspaceName>"
      },
      "enabled": true
    }
  }

后续步骤

在本教程中,你为 Azure Linux 容器主机群集启用了遥测和监视。 你已了解如何执行以下操作:

  • 启用对现有群集的监视。
  • 验证代理是否已成功部署。
  • 验证是否启用了解决方案。

在下一个教程中,你将了解如何升级 Azure Linux 节点。