在本教程 的第 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 自 AKS v1.34 起正式发布。
- ACL 需要有安全启动和 vTPM 的受信任启动。 非受信任的启动变体不可用。
- Arm64 上的 ACL 要求使用基于 Cobalt 的 (v6) SKU,以支持受信任启动兼容性。
-
NodeImage并且None是唯一受支持的 操作系统(OS)升级通道。Unmanaged和SecurityPatch由于不可变的/usr目录而与 ACL 不兼容。 - 不支持工件流式传输。
- 不支持 Pod Sandboxing。
- 不支持机密虚拟机(CVM)。
- 不支持第 1 代 VM。
- 不支持启用 FIPS 的节点。
连接到您的集群
启用监视之前,请务必确保已连接到正确的群集。 获取 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>
验证代理和解决方案部署
使用以下命令验证是否已成功部署代理:
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示例输出:
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 节点。