kubernetes Tcp流量可视化

kubernetes Tcp流量可视化

使用k8spacket和grafana的node graph插件可以查看kubernetes pod的TCP相关信息,如connection、bytes、和duration。下面是接收和响应的字节数信息:

image

安装k8spacket

  helm repo add k8spacket https://k8spacket.github.io/k8spacket-helm-chart
  helm install k8spacket --namespace k8spacket k8spacket/k8spacket --create-namespace

k8spacket是daemonset,安装完之后每个节点都有一个k8spacket pod。

安装node graph

node graph包括两部分:nodegraph 插件和Node Graph API。前者是dashboard中的dashboard插件,后者是获取k8spacket数据的datasource。

安装Node Graph API

在grafana的datasource中添加Node Graph API即可:

image

Node Graph API的URL中添加k8spacket的地址:

kubernetes Tcp流量可视化

使用k8spacket和grafana的node graph插件可以查看kubernetes pod的TCP相关信息,如connection、bytes、和duration。下面是接收和响应的字节数信息:

image

安装k8spacket

  helm repo add k8spacket https://k8spacket.github.io/k8spacket-helm-chart
  helm install k8spacket --namespace k8spacket k8spacket/k8spacket --create-namespace

k8spacket是daemonset,安装完之后每个节点都有一个k8spacket pod。

安装node graph

node graph包括两部分:nodegraph 插件和Node Graph API。前者是dashboard中的dashboard插件,后者是获取k8spacket数据的datasource。

安装Node Graph API

在grafana的datasource中添加Node Graph API即可:

image

Node Graph API的URL中添加k8spacket的地址:

image

创建node graph dashboard

k8spacket官方给出了k8s-packet-node-graph.yaml将其黏贴在grafana中即可,注意需要修改uidversion字段(即先创建一个空的dashboard,然后将k8s-packet-node-graph.yaml中的这两个字段修改为新建的dashboard的中的对应字段值)。

image

至此完成node graph dashboard的安装,该dashboard支持connection、bytes、和duration三种视角,支持命名空间和pod名称筛选。

拓展

使用caretta也可以达到同样的效果,且安装起来也更加方便,但对内核有如下要求:

  1. Linux 内核版本 >= 4.16
  2. x64系统
  3. 支持CO-RE,暂不支持MAC

参考

posted @ 2022-10-09 12:33  charlieroro  阅读(859)  评论(0编辑  收藏  举报