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,否则无法捕获宿主机网络命名空间内的容器流量。
3.4 数据流与集成接口
Flowmon 在容器蓝绿发布场景中的数据流转路径如下:
- 流量导出:容器 CNI 插件(如 Calico、Cilium)或 OVS 将流记录以 IPFIX 格式发送至 Flowmon 采集器。
- 流记录增强:采集器通过 Kubernetes API 获取 Pod 元数据,将 IP 地址映射为 Namespace/Deployment/Pod 名称。
- 分析器处理:中心分析器执行基线对比、异常评分、根因关联,生成结构化告警事件。
- 自动化输出:通过 Webhook 或 Kafka 将告警推送至自动化编排平台(如 Ansible、Spinnaker、ArgoCD)。
集成要点:Flowmon 提供 REST API(
/api/v1/alerts、/api/v1/flows)和 Prometheus 指标暴露端点,方便与现有监控告警体系对接。