<!-- AI_TASK_START: AI标题翻译 -->
[新产品/新功能] 为 AKS 引入容器网络日志及高级容器网络服务
<!-- AI_TASK_END: AI标题翻译 -->
<!-- AI_TASK_START: AI竞争分析 -->
# 产品功能分析
## 新功能/新产品概述
Azure 推出的 **Container Network Logs** 是 **Advanced Container Networking Services** 在 **Azure Kubernetes Service (AKS)** 中的公共预览功能。该功能提供对 Kubernetes 集群内网络流量的深度洞察,捕获关键元数据,包括源和目标 IP、**Pod** 和 **Service** 名称、端口、协议及流量方向。它监控 **Layer 3 (IP)**、**Layer 4 (TCP/UDP)** 和 **Layer 7 (HTTP/gRPC/Kafka)** 流量,旨在加速故障排除、网络可视化和安全执行。背景是针对 AKS 用户的需求,解决复杂容器网络监控的痛点,适用于生产环境中的应用连接性和安全合规场景,目标用户群为企业级开发者和运维团队,市场定位聚焦于提升云原生网络的可观测性。
## 关键客户价值
- **更快的问题解决**:通过详细日志快速识别连接性和性能问题,与传统手动调试相比,显著减少排查时间,支持 **Connectivity monitoring** 和 **Troubleshooting network errors** 用例,实现高效的根因分析,但可能在高负载场景下增加初始配置开销。
- **操作效率提升**:高级过滤机制减少数据管理负担,支持 **Stored-logs** 和 **On-demand logs** 模式,优化成本;相比传统网络监控工具,该功能通过用户定义过滤器(如命名空间或协议)定制日志收集,适用于资源受限的环境。
- **增强应用可靠性**:主动监控确保 smoother operations,并通过 **Security policy enforcement** 检测可疑流量模式,支持合规审计;在不同场景中,如突发流量或多集群环境,该优势体现为实时可视化,但需注意日志存储策略以避免潜在的数据冗余。
- **成本优化**:自定义日志范围最小化存储和数据摄取成本,例如 **Managed storage** 使用 **Azure Log Analytics** 提供可扩展存储,而 **Unmanaged storage** 自动旋转日志以管理本地空间;相较于全量日志方案,该设计在资源利用上更具优势,但大规模部署时可能面临存储配置复杂性的挑战。
## 关键技术洞察
- **技术独特性**:该功能基于 **eBPF** 技术和 **Cilium** 代理捕获网络流,支持从 AKS 节点收集流量,并以 JSON 格式存储日志。工作原理是用户通过自定义资源 (**CRs**) 启用日志收集,指定监控类型(如命名空间、**Pod** 或协议),Cilium 代理处理并转发日志到 **Azure Log Analytics** 或本地存储,实现高效的数据捕获和分析。
- **技术创新点**:引入 **eBPF** 提升了网络流量的实时监控能力,对性能影响包括毫秒级响应和减少资源开销;在安全性和可用性方面,支持异常检测和历史趋势分析,但挑战在于 eBPF 的内核依赖,可能在某些 AKS 版本中需要额外配置;相较于传统 IaaS 网络监控,该创新降低了运维复杂度,却需关注 eBPF 实现的潜在兼容性问题,如节点升级时的中断风险。
- **实现挑战和解决方式**:日志收集默认禁用,用户可通过 **Azure CLI** 或 **ARM templates** 启用(如 `az aks enable-addons` 命令),这解决了手动配置的繁琐性;然而,在高并发场景下,可能面临数据洪流问题,该功能通过过滤器和存储模式优化缓解,但原文未提及具体性能指标,因此需基于实际测试评估。
## 其他信息
- **可视化工具**:用户可在 **Azure managed Grafana** 仪表板中查看日志,包括 **Flow logs dashboard**(显示请求总数、丢包率等)、**Error logs dashboard**(聚焦错误日志)和 **Service dependency graph**(可视化服务关系),这些工具简化了监控分析,支持过滤特定日志如 DNS 错误,提升了整体用户体验。
- **启用指南**:通过启用 **Advanced Container Networking Services** 并配置自定义资源,用户可快速集成日志功能,结合 **Azure Monitoring** 实现长期存储和分析,适合初次部署的场景。
<!-- AI_TASK_END: AI竞争分析 -->
<!-- AI_TASK_START: AI全文翻译 -->
# 引入 AKS 的高级容器网络服务中的容器网络日志
**原始链接:** [https://techcommunity.microsoft.com/blog/azurenetworkingblog/introducing-container-network-logs-with-advanced-container-networking-services-f/4422171](https://techcommunity.microsoft.com/blog/azurenetworkingblog/introducing-container-network-logs-with-advanced-container-networking-services-f/4422171)
**发布时间:** 2025-06-10
**厂商:** AZURE
**类型:** TECH-BLOG
---
Azure 网络博客
# 引入 AKS 的高级容器网络服务中的容器网络日志
2025 年 6 月 10 日
## 我们很高兴宣布 Azure Kubernetes Service (AKS) 的高级容器网络服务 (Advanced Container Networking Services) 中的容器网络日志功能进入公开预览。此功能为 Kubernetes 集群中的网络流量提供深入洞察,捕获关键元数据,如源和目标 IP、pod 和服务名称、端口、协议以及流量方向。通过监控第 3 层 (Layer 3, IP)、第 4 层 (Layer 4, TCP/UDP) 和第 7 层 (Layer 7, HTTP/gRPC/Kafka) 流量,容器网络日志可实现更快的故障排除、网络可视化和安全执行。
**容器网络日志概述**
容器网络日志为 AKS 集群中的网络流量提供全面监控方式。支持两种模式:存储日志 (stored-logs) 和按需日志 (on-demand logs),以提供调试灵活性和成本优化。按需模式提供日志快照,并使用 Hubble CLI UI 进行查询和可视化,适用于特定场景,且不使用日志存储来持久化日志。启用存储日志模式后,会根据用户定义的过滤器持续收集和持久化日志。日志可存储在 Azure Log Analytics (managed) 或本地 (unmanaged)。
- **托管存储 (Managed storage)**:日志转发到 Azure Log Analytics,用于安全、可扩展且合规的存储。这支持高级分析、异常检测和历史趋势分析。支持基本和分析表计划用于存储。
- **非托管存储 (Unmanaged storage)**:日志存储在主机节点的 /var/log/acns/hubble 下。这些日志在达到 50 MB 时自动轮转,以高效管理存储。这些日志可导出到外部日志系统或收集器进行进一步分析。
**使用场景**
1. **连接性监控**:识别和可视化 Kubernetes 工作负载在集群内与外部端点之间的通信,有助于高效解决应用程序连接问题。
2. **故障排除网络错误**:获取对丢弃数据包、配置错误或错误的细粒度可见性,包括错误发生的位置和原因 (TCP/UDP、DNS、HTTP),以实现更快根本原因分析。
3. **安全策略执行**:检测和分析可疑流量模式,以加强集群安全并确保合规性。
**工作原理**
容器网络日志使用 eBPF 技术与 Cilium 捕获 AKS 节点的网络流量。日志收集默认禁用。用户可以通过定义自定义资源 (CRs) 来启用日志收集,指定要监控的流量类型,如命名空间、pod、服务或协议。Cilium 代理收集并处理此流量,将日志以 JSON 格式存储。这些日志可保留在本地,或与 Azure Monitoring 集成,用于长期存储和高级分析及可视化(使用 Azure 托管 Grafana)。

图 1: 容器网络日志概述
如果使用托管存储,用户将使用 Azure CLI 或 ARM 模板启用 Azure 监视日志收集。下面是一个快速示例,使用 CLI 在 Azure 监视上启用容器网络日志:
az aks enable-addons -a monitoring --enable-high-log-scale-mode -g $RESOURCE_GROUP -n $CLUSTER_NAME
az aks update --enable-acns \
\--enable-retina-flow-logs \
-g $RESOURCE_GROUP \
-n $CLUSTER_NAME
**关键优势**
- **更快问题解决**:详细日志启用快速识别连接性和性能问题。
- **运营效率**:高级过滤减少数据管理开销。
- **增强应用程序可靠性**:主动监控确保更顺畅的操作。
- **成本优化**:自定义日志范围最小化存储和数据摄取成本。
- **简化合规性**:全面日志支持审计和安全要求。
**在 Azure 托管 Grafana 仪表板中观察日志**
用户可以在 Azure 托管 Grafana 仪表板中可视化容器网络日志,从而简化监控和分析:
1. **流量日志仪表板**:查看 Kubernetes 工作负载之间的内部通信。该仪表板突出显示指标,如总请求数、丢弃数据包和错误率。
2. **错误日志仪表板**:轻松放大仅显示错误的日志,以更快日志解析。
3. **服务依赖图**:可视化服务之间的关系,检测瓶颈并优化网络流量。
这些仪表板提供过滤选项,以隔离特定日志,如 DNS 错误或流量模式,从而实现高效根本原因分析。摘要统计和顶级指标进一步增强对集群健康和活动的理解。

图 2: Azure 托管 Grafana 容器网络日志仪表板
**结论**
AKS 的容器网络日志提供一种强大且成本优化的方式来监控和分析网络活动、增强故障排除、安全性并确保合规性。要开始使用,请在您的 AKS 集群中启用 [高级容器网络服务](<https://learn.microsoft.com/en-us/azure/aks/advanced-container-networking-services-overview?tabs=cilium>) 并配置自定义资源用于日志。在 Grafana 仪表板和 Azure Log Analytics 中可视化您的日志,以解锁可操作洞察。了解更多 [这里](<https://learn.microsoft.com/en-us/azure/aks/container-network-observability-logs>)。
更新于 2025 年 6 月 10 日
版本 1.0
<!-- AI_TASK_END: AI全文翻译 -->