集成 DeepFlow¶
DeepFlow 是一款基于 eBPF 的可观测性产品。它的社区版已经被集成进 Insight 中,以下是集成方式。
前提条件¶
- 全局服务集群已经安装 Insight
- Insight 最低版本要求为 v0.23.0
- 了解并满足 DeepFlow 运行权限及内核要求
- 存储卷就绪
安装 DeepFlow 和配置 Insight¶
安装 DeepFlow 组件需要用到两个 Chart:
deepflow
:包含deepflow-app
、deepflow-server
、deepflow-clickhouse
、deepflow-agent
等组件。 一般deepflow
会部署在全局服务集群中,所以它也一并安装了deepflow-agent
deepflow-agent
:只包含了deepflow-agent
组件,用于采集 eBPF 数据并发送给deepflow-server
安装 DeepFlow¶
DeepFlow 需要安装在全局服务集群中。
-
进入 kpanda-global-cluster 集群,在左侧导航栏内点击 Helm 应用 -> Helm 模板 ,仓库选择 community ,搜索框找到
deepflow
: -
点击 deepflow 卡片进入详情页:
-
点击 安装 ,进入安装界面:
-
大部分 values 都有默认值。其中 Clickhouse 和 Mysql 都需要申请存储卷,它们的默认大小都是 10Gi , 可以通过 persistence 关键字搜索到相关配置并修改。
-
配置好后就可以点击 确定 ,执行安装了。
修改 Insight 配置¶
在安装 DeepFlow 后,还需要在 Insight 中开启相关的功能开关。
-
在左侧导航栏内点击 配置与密钥 -> 配置项 , 通过搜索框找到 insight-server-config 并进行编辑:
-
在 YAML 配置中找到 eBPF Flow feature 这个功能开关并将它开启:
-
保存更改,重启 insight-server 后,Insight 主界面就会出现 网络观测 :
安装 DeepFlow Agent¶
DeepFlow Agent 通过 deepflow-agent
Chart 来安装在子集群中,用于采集子集群的 eBPF 观测数据并上报到全局服务集群中。 类似于安装 deepflow
,通过 Helm 应用 -> Helm 模板 ,仓库选择 community , 通过搜索框查询 deepflow-agent
,按流程进入安装界面。
参数说明:
- DeployComponent 部署模式,默认为
daemonset
- timezone 时区,默认为
Asia/Shanghai
- DeepflowServerNodeIPS 对应 deepflow server 安装集群的节点地址
- deepflowK8sClusterID 集群 UUID
- agentGroupID agent 组 ID
- controllerPort deepflow server 的数据上报端口,可以不填,默认为
30035
- clusterNAME 集群名称
配置好后点击 确定 ,完成安装。
使用¶
在正确安装 DeepFlow 后,点击 网络观测 就可以进入 DeepFlow Grafana UI。 它内置了大量的 Dashboard 可供查看与帮助分析问题, 点击 DeepFlow Templates ,可以浏览所有可以查看的 Dashboard: