你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
什么是 Azure Kubernetes 服务 (AKS) 网络可观测性?
Kubernetes 是用于管理容器化应用程序的强大工具。 随着容器化环境复杂性的增长,可能很难识别和排查 Kubernetes 群集中的网络问题。
网络可观测性是维护正常运行且性能良好的 Kubernetes 群集的重要组成部分。 通过收集和分析有关网络流量的数据,可以深入了解群集的运行方式,并在潜在问题导致中断或性能下降之前识别这些问题。
AKS 中网络可观测性加载项概述
网络可观测性加载项在非 Cilium 和 Cilium 数据平面上无缝运行。 它为客户提供了 DevOps 和 SecOps 的企业级功能。 此解决方案为群集网络管理员、群集安全管理员和 DevOps 工程师提供了一种集中式方法来监视群集中的网络问题。
启用网络可观测性加载项后,它允许收集有用指标并将其转换为 Prometheus 格式,然后可在 Grafana 中将其可视化。 Azure 提供用于托管式 Prometheus 和 Grafana 的产品/服务。
Azure 托管的 Prometheus 和 Grafana:一项由 Azure 提供的托管服务,负责处理 Prometheus 和 Grafana 的基础结构和维护,从而支持你专注于配置和可视化指标。
多 CNI 支持: 网络可观测性加载项支持 Azure CNI 和 Kubenet 网络插件。
指标
网络可观测性加载项目前仅支持节点级别指标。 Cilium 和非 Cilium 数据平面具有不同的指标,但 Grafana 仪表板能够无缝地适配两者。
所有指标都有以下标签:
cluster
instance
(节点名称)
在非 Cilium 数据平面上,网络可观测性加载项在 Linux 和 Windows 平台中均提供指标。 下表概述了生成的不同指标。
标准名称 | 说明 | 额外标签 | Linux | Windows |
---|---|---|---|---|
networkobservability_forward_count | 总转发数据包计数 | direction |
✅ | ✅ |
networkobservability_forward_bytes | 总转发字节计数 | direction |
✅ | ✅ |
networkobservability_drop_count | 总丢弃数据包计数 | direction 、reason |
✅ | ✅ |
networkobservability_drop_bytes | 总删除字节计数 | direction 、reason |
✅ | ✅ |
networkobservability_tcp_state | TCP 当前活动套接字计数(按 TCP 状态)。 | state |
✅ | ✅ |
networkobservability_tcp_connection_remote | TCP 当前活动套接字计数(按远程 IP/端口)。 | address (IP)、port |
✅ | ❌ |
networkobservability_tcp_connection_stats | TCP 连接统计信息。 (例如:Delayed ACK、TCPKeepAlive、TCPSackFailure) | statistic |
✅ | ✅ |
networkobservability_tcp_flag_counters | TCP 数据包计数(按标志)。 | flag |
❌ | ✅ |
networkobservability_ip_connection_stats | IP 连接统计信息。 | statistic |
✅ | ❌ |
networkobservability_udp_connection_stats | UDP 连接统计信息。 | statistic |
✅ | ❌ |
networkobservability_udp_active_sockets | UDP 当前活动套接字计数 | ✅ | ❌ | |
networkobservability_interface_stats | 接口统计信息。 | InterfaceName、statistic |
✅ | ✅ |
限制
- 不支持 Pod 级别指标。
缩放
使用 Azure 托管 Prometheus 和 Grafana 时,某些规模限制适用。 有关详细信息,请参阅在 Azure Monitor 中大规模抓取 Prometheus 指标
后续步骤
有关Azure Kubernetes 服务 (AKS) 的详细信息,请参阅什么是 Azure Kubernetes 服务 (AKS)?。
要创建具有网络可观测性以及 Azure 托管的 Prometheus 和 Grafana 的 AKS 群集,请参阅为 Azure Kubernetes 服务 (AKS) 设置网络可观测性 - Azure 托管的 Prometheus 和 Grafana。