在本教程 的第 4 部分(共 5 部分)中,你将了解如何:
- 启用 Container Insights 以监控现有集群。
- 验证代理是否已成功部署。
- 验证解决方案是否已启用。
本教程中的命令使用 Tutorial 1 中设置的环境变量:使用适用于 AKS 的 Azure Linux 容器主机创建群集。
在下一个和最后一个教程中,你将了解如何升级 Azure Linux 节点。
先决条件
- 在前面的教程中,你创建并部署了 Azure Linux 容器主机群集。 若要完成本教程,需要一个现有群集。 如果尚未完成这一步并想要继续操作,请从教程 1:使用适用于 AKS 的 Azure Linux 容器主机创建群集开始。
- 如果要将现有的 AKS 群集连接到其他订阅中的 Log Analytics 工作区,则必须在具有 Log Analytics 工作区的订阅中注册 Microsoft.ContainerService 资源提供程序。 有关详细信息,请参阅注册资源供应商。
- 需要最新版本的 Azure CLI。 运行
az --version即可查找版本。 如果需要进行安装或升级,请参阅安装 Azure CLI。
连接到您的集群
启用监视之前,请务必确保已连接到正确的群集。 使用 az aks get-credentials 命令获取 Azure Linux 容器主机群集的凭据,并将 kubectl 配置为使用这些凭据。
az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
启用监视
可以使用 default Log Analytics 工作区或通过指定Log Analytics工作区为 Azure Linux 容器主机群集启用监视。 以下步骤演示如何使用任一方法为群集启用监视。
选项 1:使用默认 Log Analytics 工作区
使用以下命令检查是否已为群集启用监视加载项。 如果未启用,该命令将使用 AKS 群集订阅的默认资源组中的默认 Log Analytics 工作区,为 Azure Linux 容器主机群集启用监视。 如果区域中尚不存在工作区,则创建的默认工作区类似于以下格式: 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工作区,以便监视 Azure Linux 容器主机群集。 工作区的资源 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示例输出:
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
验证解决方案配置
使用 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
}
后续步骤
在本教程中,你为 Azure Linux 容器主机群集启用了遥测和监视。 下一教程介绍如何升级 Azure Linux 节点。