教程:为 Azure 容器 Linux (ACL) 群集启用遥测和监视

在本教程 的第 4 部分(共 5 部分)中,你将了解如何:

  • 启用 Container Insights 以监控现有集群。
  • 验证代理是否已成功部署。
  • 验证解决方案是否已启用。

本教程中的命令使用教程 1 中设置的环境变量 :使用 AKS 的 ACL 创建群集

下一教程介绍如何升级 ACL 节点。

先决条件

  • 在前面的教程中,你已创建并部署了 ACL 群集。 若要完成本教程,需要一个现有群集。 如果尚未完成此步骤并想要继续执行,请从 教程 1 开始:使用 AKS 的 ACL 创建群集
  • 如果要将现有 AKS 群集连接到另一订阅中的 Log Analytics 工作区,则需要在订阅中向 Log Analytics 工作区注册 Microsoft.ContainerService 资源提供程序。 有关详细信息,请参阅注册资源供应商
  • Azure容器 Linux 需要Azure CLI 2.86.0 或更高版本。 使用az version命令查找版本。 若要升级到最新版本,请使用 az upgrade 命令。

Azure容器 Linux (ACL) 注意事项和限制

在开始之前,请了解以下有关 ACL 的注意事项和限制:

连接到您的集群

启用监视之前,请务必确保已连接到正确的群集。 获取 ACL 集群的凭据,并使用 az aks get-credentials 命令将 kubectl 配置为使用这些凭据。

az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME

启用监视

你可以使用默认 Log Analytics 工作区指定 Log Analytics 工作区为 ACL 群集启用监控。 以下步骤演示如何使用任一方法为群集启用监视。

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

使用以下命令检查是否已为群集启用监视加载项。 如果不可用,该命令将使用位于 AKS 群集订阅默认资源组中的默认 Log Analytics 工作区为 ACL 群集启用监视。 如果区域中尚不存在工作区,则创建的默认工作区类似于以下格式: DefaultWorkspace-< GUID >-< Region >

# Check if monitoring addon is already enabled
MONITORING_ENABLED=$(az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --query "addonProfiles.omsagent.enabled" -o tsv)

if [ "$MONITORING_ENABLED" != "true" ]; then
  az aks enable-addons --addons monitoring --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
fi

选项 2:指定 Log Analytics 工作区

可以指定Log Analytics工作区来启用对 ACL 群集的监视。 工作区的资源 ID 采用以下格式:"/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<workspace-name>"

使用 az aks enable-addons 命令并指定工作区来启用监控。 将 <workspace-resource-id> 替换为Log Analytics工作区的资源 ID。

az aks enable-addons --addons monitoring --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --workspace-resource-id <workspace-resource-id>

验证代理和解决方案部署

  1. 使用以下命令验证是否已成功部署代理:

    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
    
  2. 使用以下命令验证解决方案的部署:

    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
    

验证解决方案配置

使用 az aks show 命令获取解决方案的配置。 使用此命令,可以检查解决方案是否已启用、Log Analytics工作区资源 ID 是什么,并获取有关群集的摘要信息。

az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --query "addonProfiles.omsagent"

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

{
  "config": {
    "logAnalyticsWorkspaceResourceID": "/subscriptions/xxxxx/resourceGroups/xxxxx/providers/Microsoft.OperationalInsights/workspaces/xxxxx"
  },
  "enabled": true
}

后续步骤

在本教程中,你为 ACL 群集启用了遥测和监视。 下一教程介绍如何升级 ACL 节点。