3. Flowmon 平台简介

Flowmon 是面向企业级网络与容器化基础设施的流量智能分析平台,定位为“网络可观测性的核心引擎”。在容器蓝绿发布场景中,Flowmon 承担流量采集、NetFlow/IPFIX 深度分析、异常检测三大职责,为自动化故障排查提供数据底座。

3.1 产品定位

维度 定位说明
目标用户 网络运维工程师、容器平台管理员、安全分析师
核心价值 从流量视角透视容器网络行为,快速定位蓝绿发布期间的流量中断、延迟、丢包
技术边界 基于流数据的轻量级采集,不侵入容器 Pod,不依赖应用层探针
集成生态 原生支持 Kubernetes、OpenShift、VMware、公有云 VPC 流日志
关键认知:Flowmon 不抓取全量报文,而是通过 NetFlow/IPFIX 流记录聚合元数据,在容器高密度场景下保持极低的资源开销。

3.2 核心功能

3.2.1 流量采集

  • 多源接入:支持物理交换机 NetFlow v5/v9、虚拟交换机 Open vSwitch sFlow、容器 CNI 插件 IPFIX 导出。
  • 容器感知:自动关联 Pod IP、Service ClusterIP、Node IP,生成容器级流量拓扑。
  • 实时流处理:单采集器最高处理 200 万流/秒,支持 1 秒粒度数据刷新。

3.2.2 NetFlow/IPFIX 分析

  • 五元组聚合:源 IP、目的 IP、源端口、目的端口、协议。
  • 容器扩展字段:Kubernetes Namespace、Deployment 名称、Service 名称、Pod 标签。
  • 时序统计:吞吐量、包速率、TCP 重传率、RTT 分布、流持续时间。

3.2.3 异常检测

  • 基线建模:基于历史 7 天流量自动建立多维度基线(吞吐、连接数、重传率)。
  • 实时告警:当蓝绿发布切换后流量偏离基线超过 3σ 时触发告警。
  • 根因定位:自动关联异常流与容器组、Service 端点,输出嫌疑路径。
实战提示:在蓝绿发布场景中,重点监控 tcp_retransmit_rate 和 flow_completion_time 两个指标,它们能最快反映新版本服务是否正常处理流量。

3.3 部署模式

Flowmon 支持三种主流部署模式,适应不同规模的容器集群环境:

部署模式 架构特点 适用场景 采集器数量
单机一体 采集器 + 分析器部署在同一节点 开发测试环境、小规模集群(≤10 节点) 1 个
分布式采集 多个采集器分散部署,中心分析器统一汇聚 生产环境、多可用区、跨机房容器集群 2~10 个
Kubernetes DaemonSet 采集器以 DaemonSet 运行在每个 Node,分析器独立部署 容器原生环境、动态扩缩容、蓝绿发布频繁 与 Node 数一致
避坑提醒:在 Kubernetes DaemonSet 模式下,务必为采集器容器设置 hostNetwork: true,否则无法捕获宿主机网络命名空间内的容器流量。
Flowmon 分布式部署架构(Kubernetes DaemonSet 模式) 采集器 DaemonSet Node 1 → Pod A/B Node 2 → Pod C/D Node 3 → Pod E/F 中心分析器 NetFlow/IPFIX 汇聚 异常检测引擎 告警 & 根因定位 自动化平台 说明: • 采集器以 DaemonSet 运行在每个 Kubernetes Node,通过 hostNetwork 捕获容器流量。 • 采集器将 IPFIX 流记录发送至中心分析器,分析器完成汇聚、基线建模、异常检测。 • 异常告警通过 REST API 推送至自动化平台,触发蓝绿发布回滚或流量切换。

3.4 数据流与集成接口

Flowmon 在容器蓝绿发布场景中的数据流转路径如下:

  1. 流量导出:容器 CNI 插件(如 Calico、Cilium)或 OVS 将流记录以 IPFIX 格式发送至 Flowmon 采集器。
  2. 流记录增强:采集器通过 Kubernetes API 获取 Pod 元数据,将 IP 地址映射为 Namespace/Deployment/Pod 名称。
  3. 分析器处理:中心分析器执行基线对比、异常评分、根因关联,生成结构化告警事件。
  4. 自动化输出:通过 Webhook 或 Kafka 将告警推送至自动化编排平台(如 Ansible、Spinnaker、ArgoCD)。
集成要点:Flowmon 提供 REST API(/api/v1/alerts、/api/v1/flows)和 Prometheus 指标暴露端点,方便与现有监控告警体系对接。