什么是 Azure Kubernetes 服务 (AKS) 网络可观测性? (预览版)

Kubernetes 是用于管理容器化应用程序的强大工具。 随着容器化环境复杂性的增长,可能很难识别和排查 Kubernetes 群集中的网络问题。

网络可观测性是维护正常运行且性能良好的 Kubernetes 群集的重要组成部分。 通过收集和分析有关网络流量的数据,可以深入了解群集的运行方式,并在潜在问题导致中断或性能下降之前识别这些问题。

网络可观测性组件的关系图。

AKS 中网络可观测性加载项概述

重要

AKS 网络可观测性目前处于预览状态。 有关 beta 版本、预览版或尚未正式发布的版本的 Azure 功能所适用的法律条款,请参阅 Azure 预览版的补充使用条款

网络可观测性加载项在非 Cilium 和 Cilium 数据平面上无缝运行。 它为客户提供了 DevOps 和 SecOps 的企业级功能。 此解决方案为群集网络管理员、群集安全管理员和 DevOps 工程师提供了一种集中式方法来监视群集中的网络问题。

启用网络可观测性加载项后,它允许收集有用指标并将其转换为 Prometheus 格式,然后可在 Grafana 中将其可视化。

  • Azure 托管 Prometheus 和 Grafana:此选项涉及使用由 Azure 提供的托管服务。 托管服务负责处理 Prometheus 和 Grafana 的基础结构和维护,从而支持你专注于配置和可视化指标。 如果不希望管理底层基础结构,此选项会非常方便。

  • BYO Prometheus 和 Grafana:或者可以选择设置自己的 Prometheus 和 Grafana 实例。 在这种情况下,你负责预配和管理运行 Prometheus 和 Grafana 所需的基础结构。 安装并配置 Prometheus 以抓取由网络可观测性加载项生成的指标并存储它们。 同样,需要设置 Grafana 以连接到 Prometheus 并可视化收集的数据。

  • 多 CNI 支持: 网络可观测性加载项支持 Azure CNI 和 Kubenet 网络插件。

指标

网络可观测性加载项目前在 Linux 和 Windows 平台中仅支持节点级别指标。 下表概述了由网络可观测性加载项生成的不同指标。

标准名称 说明 标签 Linux Windows
networkobservability_forward_count 总转发数据包计数 Direction、NodeName、Cluster
networkobservability_forward_bytes 总转发字节计数 Direction、NodeName、Cluster
networkobservability_drop_count 总丢弃数据包计数 Reason、Direction、NodeName、Cluster
networkobservability_drop_bytes 总删除字节计数 Reason、Direction、NodeName、Cluster
networkobservability_tcp_state TCP 活动套接字计数(按 TCP 状态)。 State、NodeName、Cluster
networkobservability_tcp_connection_remote TCP 活动套接字计数(按远程地址)。 Address、Port、NodeName、Cluster
networkobservability_tcp_connection_stats TCP 连接统计信息。 (例如:Delayed ACK、TCPKeepAlive、TCPSackFailure) Statistic、NodeName、Cluster
networkobservability_tcp_flag_counters TCP 数据包计数(按标志)。 Flag、NodeName、Cluster
networkobservability_ip_connection_stats IP 连接统计信息。 Statistic、NodeName、Cluster
networkobservability_udp_connection_stats UDP 连接统计信息。 Statistic、NodeName、Cluster
networkobservability_udp_active_sockets UDP 活动套接字计数 NodeName、Cluster
networkobservability_interface_stats 接口统计信息。 InterfaceName、Statistic、NodeName、Cluster

限制

  • 不支持 Pod 级别指标。

缩放

使用 Azure 托管 Prometheus 和 Grafana 时,某些规模限制适用。

后续步骤