你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
用于 Kubernetes 监视的 Azure Monitor 功能
适用于 Prometheus 的 Azure Monitor 托管服务和容器见解协同工作,以全面监视 Kubernetes 环境。 本文介绍了功能以及它们收集的数据。
- 适用于 Prometheus 的 Azure Monitor 托管服务是一项完全托管的服务,它基于 Cloud Native Computing Foundation (CNCF) 中的 Prometheus 项目。 它允许你大规模收集和分析 Kubernetes 群集中的指标,并使用 Grafana 中的预生成仪表板对其进行分析。
- 容器见解是 Azure Monitor 的一项功能,它从 Azure Kubernetes 群集或者已启用 Azure Arc 的 Kubernetes 群集及其组件分析容器日志并分析这些日志。 可以使用一组视图和预生成的工作簿来分析为群集中不同组件收集的数据。
重要
除了日志之外,容器见解还会从群集收集指标数据。 此功能已被适用于 Prometheus 的 Azure Monitor 托管服务所取代。 可以使用托管 Grafana 中的内置仪表板分析这些数据,并使用预生成的 Prometheus 警报规则针对它们生成警报。
你可以继续让容器见解收集指标数据,以便可以使用容器见解监视体验。 另外,你也可以禁用此收集并使用 Grafana 进行指标分析,以便节省成本。 有关配置选项,请参阅使用数据收集规则在容器见解中配置数据收集。
收集的数据
容器见解将数据发送到 Log Analytics 工作区;在这里,可以使用 Azure Monitor 的不同功能分析这些数据。 托管 Prometheus 将数据发送到一个 Azure Monitor 工作区,托管 Grafana 可以在该工作区中访问这些数据。 有关此数据的详细信息,请参阅监视数据。
支持的配置
容器见解支持以下环境:
- Azure Kubernetes 服务 (AKS)
- 以下已启用 Azure Arc 的 Kubernetes 群集发行版:
- Azure Stack HCI 上的 AKS
- AKS Edge Essentials
- Canonical
- Azure 上的群集 API 提供商
- Azure Stack Edge 上的 K8s
- Red Hat OpenShift 版本 4.x
- SUSE Rancher(Rancher Kubernetes 引擎)
- SUSE Rancher K3s
- VMware (TKG)
注意
容器见解支持 AKS 上的 ARM64 节点。 有关支持 ARM64 节点的已启用 Azure Arc 的群集的详细信息,请参阅群集要求。
容器见解对 Windows Server 2022 操作系统的支持目前为公共预览版。
安全性
- 从代理版本 3.1.17 (Linux)和 Win-3.1.17 (Windows) 开始,容器见解支持启用了 FIPS 的 Linux 和 Windows 节点池。
- 从代理版本 3.1.17 (Linux)和 Win-3.1.17 (Windows) 开始,容器见解代理映像(包括 Linux 和 Windows)都已签名,并且对于 Windows 代理,容器内的二进制文件也已签名
访问容器见解
从“监视”菜单中的“容器”或直接从所选 AKS 群集访问 Azure 门户中的容器见解,方法是选择“见解”。 使用 Azure Monitor 菜单,可以从全局角度查看已部署和已监视的所有容器。 使用此信息可以搜索和筛选订阅和资源组。 然后,你可以从所选容器向下钻取到容器见解。 通过特定群集在 Azure 门户中的页面访问该群集的容器见解。
Agent
容器见解和托管 Prometheus 依赖适用于 Linux 的容器化 Azure Monitor 代理。 此专用代理从群集中的所有节点收集性能和事件数据。 代理在部署期间部署并注册到指定的工作区。 在群集上启用容器见解时,会使用名称 MSCI-<cluster-region>-<cluster-name>
创建数据收集规则 (DCR),其中包含 Azure Monitor 代理应收集的数据的定义。
自 2023 年 3 月 1 日以来,容器见解使用兼容 semver 的代理版本。 代理版本为 mcr.microsoft.com/azuremonitor/containerinsights/ciprod:3.1.4 或更高版本。 当该代理的新版本发布时,会在承载于 AKS 上的托管 Kubernetes 群集上自动升级该代理。 若要跟踪已发布的版本,请参阅代理发布公告。
Log Analytics 代理
没有使用托管标识身份验证时,容器见解依靠适用于 Linux 的容器化 Log Analytics 代理。 代理版本为 microsoft/oms:ciprod04202018 或更高版本。 当该代理的新版本发布时,在承载于 AKS 上的托管 Kubernetes 群集上自动升级该代理。 若要跟踪已发布的版本,请参阅代理发布公告。
随着 Windows Server AKS 支持的正式发布,具有 Windows Server 节点的 AKS 群集在每个单独的 Windows Server 节点上安装了一个预览代理,作为一个 DaemonSet Pod 来收集日志并将其转发给 Log Analytics。 对于性能指标,在标准部署过程中自动部署在群集中的 Linux 节点将为该群集中的所有 Windows 节点收集数据并将其转发到 Azure Monitor。
常见问题解答
本部分提供常见问题的解答。
是否支持为 ARO 群集收集 Kubernetes 审核日志? 不是。 容器见解不支持收集 Kubernetes 审核日志。
容器见解是否支持 Pod 沙盒? 是,容器见解可通过对 Kata 容器的支持来支持 Pod 沙盒。 请参阅使用 Azure Kubernetes 服务 (AKS) 的 Pod 沙盒(预览版)。
单个 AKS 群集是否可以在容器见解中使用多个 Log Analytics 工作区? 错误。 容器见解仅接受每个 AKS 群集的容器见解中的一个 Log Analytics 工作区。
后续步骤
- 请参阅为 Kubernetes 群集启用监视,了解如何在群集上启用托管 Prometheus 和容器见解。