将 Azure Monitor 用于 Azure Stack Hub 上的容器

可以使用用于容器的 Azure Monitor 监视在 Azure Stack Hub 中部署的 AKS 引擎 Kubernetes 群集中的容器。

重要

用于 Azure Stack Hub 上的容器的 Azure Monitor 目前以公共预览版提供。 此预览版在提供时没有附带服务级别协议,不建议将其用于生产工作负荷。 某些功能可能不受支持或者受限。

可以通过通过指标 API 从 Kubernetes 中提供的控制器、节点和容器收集内存和处理器指标来查看容器性能。 此外,该服务还会收集容器日志。 可以使用这些日志从 Azure 诊断本地群集中的问题。 从 Kubernetes 群集设置监视后,会自动收集这些指标和日志。 适用于 Linux 的 Azure Monitor Log Analytics 代理的容器化版本收集日志。 Azure Monitor 将指标和日志存储在 Azure 订阅中可访问的 Log Analytics 工作区中。

可通过两种方法在群集上启用 Azure Monitor。 这两种方法都需要在 Azure 中设置 Azure Monitor Log Analytics 工作区。

先决条件

这两种方法都需要 Azure Monitor - 容器中列出的先决条件

方法 1

还可以使用 Helm 图表在群集中安装监视代理。 请按照《Azure Monitor - 容器》这篇文章中的说明进行操作。

方法 2

可以在 AKS 引擎群集规范 json 文件中指定 加载项 。 该文件也称为 API 模型。 在此加载项中,提供 Azure Log Analytics 工作区的 WorkspaceGUIDWorkspaceKey 的 base64 编码版本,用于存储监视信息。

在此示例中可以找到 Azure Stack Hub 群集支持的 API 定义: kubernetes-container-monitoring_existing_workspace_id_and_key.json。 具体而言,请在 kubernetesConfig 中查找 addons 属性:

 "orchestratorType": "Kubernetes",
       "kubernetesConfig": {
         "addons": [
           {
             "name": "container-monitoring",
             "enabled": true,
             "config": {
               "workspaceGuid": "<Azure Log Analytics Workspace Guid in Base-64 encoded>",
               "workspaceKey": "<Azure Log Analytics Workspace Key in Base-64 encoded>"
             }
           }
         ]
       }

后续步骤