如何监控容器间的流量?

简介

由于容器具有简化部署、多环境支持、快速启动、服务编排、易于迁移等特点,目前已经被广泛使用。作为下一代虚拟化技术,正在改变我们开发、测试、部署应用的方式。容器的使用给我们的带来了诸多便利,但是同时也带来一个问题,如何监控容器间的流量?同一主机上容器间的通信是很常见的,但他们之间通信的流量不会到物理链路,所以很难监控。nProbe agent 是一个自省探针,能够提供进程、用户、容器的可见性。
在这里插入图片描述

为什么要使用容器?

在没有使用容器之前,我们把大部分的业务应用跑在虚拟机(或云主机)上面,遇到了两个问题,一个问题是虚拟化Hypervisor管理软件本身的资源消耗与磁盘IO性能降低,另一个是虚拟机仍然还是一个独立的操作系统,导致我们在处理虚拟机的扩缩容与配置管理工作时效率低下。所以,我们后来发现了容器的好处,所有业务应用可以直接运行在物理主机的操作系统之上,可以直接读写磁盘,应用之间通过计算、存储和网络资源的命名空间进行隔离,为每个应用形成一个逻辑上独立的“容器操作系统”。
什么是nProbe agent?

nProbe™代理(以前称为nProbe mini)是一个轻量级探测器,它实现了基于事件的低开销监视,主要基于libebpfflow(基于eBPF)和Netlink等技术。

此小型代理通过系统自检增强网络可见性,同时使用最少的CPU和内存。它使用系统自省的进程、用户、容器、协调器和其他性能指标来丰富传统网络数据,如IP地址、字节和数据包。这使nProbe™Agent非常有效地回答了通常仍未解决的一系列新问题,其中:

  • 向恶意软件主机生成流量的过程是什么?谁是此过程的所有者?

  • 我的容器彼此通信时经历的通信延迟是多少?
    在这里插入图片描述

nProbe agent的特征

nProbe™ Agent能够提取的信息包括:

  1. 所有TCP和UDP网络通信(对等,端口,状态)
  2. TCP计数器,包括重传,乱序和往返时间
  3. 通信背后的用户,进程和可执行文件
  4. 容器ID和名称,协调器POD和命名空间

nProbe agent用例

  1. 跟踪网络活动背后的用户和进程

想知道尝试从恶意软件主机下载文件的用户是谁吗?他/她正在运行哪个进程?nProbe agent为您提供答案,跟踪与主机上运行的客户端或服务的所有通信,并使用套接字提取所有详细信息,包括用户和进程。
在这里插入图片描述

  1. 对容器间网络通信具有可见

在同一主机上部署多个相互通信的容器是很常见的。在这种情况下,他们的通信流量永远不会到达线缆,因为它始终停留在主机上。因此,使用镜像端口或TAP监视其流量的任何尝试都将失败。幸运的是,nProbe agent还可以在主机上进行网络活动时检测,计数和衡量网络活动。
以下是nProbe™Agent发现的网络通信,该通信在进程之间进行/sidecar在容器内运行/sidecarKubernetes POD的一部分kube-dns-6bfbdd666c-jjt75,和进程/usr/bin/dnsmasq在容器内运行dnsmasq同一Kubernetes POD的一部分。
在这里插入图片描述

  1. 每个POD的网络活动和性能指标

使用nProbe™Agent,您可以使用例如测量的通信往返时间来发现容器和POD的活动和性能。
在这里插入图片描述

关注我们

官网
https://hongwangle.com/

微信公众号:
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值