部署后验证
创建时间:2025-10-24 最近修改时间:2025-10-24
#1. 部署后验证
#1.1 部署结果检查
# 查看所有 POD 状态
kubectl get pod -A
# 查看不正常的 POD
kubectl get pod -A | grep -v Run
# 查看 node 状态
kubectl get node
# 测试 DeepFlow 服务
curl 127.0.0.1
# web 页面访问
http://${任意一台节点IP}
账号:x@yunshan.net.cn
密码:admin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#1.2 常见问题排查
#1.2.1 K8s 集群无资源同步采集器
现象:页面报错——no vtap report cluster id xxx
排查方式:
- 检查采集器 yaml 配置文件中的 kubernetes_cluster_id 与云平台页面中的 ID 是否一致;
- 检查采集器日志,确认采集器状态正常;
- 检查采集器上报的控制器的日志(采集器存在切换控制器的可能,有些时候需要在同区域内的所有控制器上检索日志),是否接收到采集器上报的 kubernetes 资源消息。(关键字:kubernetes api sync ,根据日志中打印出来的采集器的控制 ip 区分不同的采集器);
- 通过以下 CLI 命令检查采集器上报的 kubernetes API 消息
# 格式化显示 genesis 解析到的采集器上报的 kubernetes api 消息
deepflow-ctl genesis k8s [kubernetes_cluster_id]
# 使用帮助,可以通过-t 参数筛选对应类型的消息,deepflow-ctl genesis k8s -h 查看类型说明
# 例,查看 x-xxxxxx 集群的 node 信息
deepflow-ctl genesis k8s x-xxxxxx -t *v1.Node
1
2
3
4
5
6
2
3
4
5
6
#1.3 升级与扩容
# 此处为65升级66
升级前操作备份 MySQL 数据 (主区域)
kubectl -n deepflow exec -it `kubectl -n deepflow get pod | awk '/mnt/{print $1}'` bash
mysqldump -hmysql -uroot -psecurity421 -P30130 deepflow --hex-blob > /usr/local/deepflow/patch/deepflow65_$(date +%Y%m%d).sql
# 卸载65版本的DeepFlow
/usr/local/deepflow/bin/deepflow-deploy -e
mv /usr/local/deepflow /usr/local/deepflow65
# 拷贝66文件
mount -o ro deepflow-docker-release-*.iso /media
mkdir -p /usr/local/deepflow/{debug,patch,mysql}
cp -a /media/* /usr/local/deepflow/
# 修改66的配置文件
vim values-custon.yaml/values.yaml
# 安装66
/usr/local/deepflow/bin/deepflow-deploy -i
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#1.4 日志与监控
- 在使用 DeepFlow 其他功能前,需先验证 DeepFlow 部署环境与核心组件状态,避免因平台自身异常导致功能不可用;其中最重要的一个排查手段为看日志
#1.4.1 前提条件
DeeepFlow 自带的 DeepFlow-Agent 需保证正常运行并打开数据集成功能
当 web 无法访问时,去 DeepFlow 后台查看组件日志
#1.4.1.1 常用组件日志路径
- Server /var/log/deepflow/deepflow
- Fauths /var/log/deepflow/
- Alarm /var/log/deepflow/
- Fpermit /var/log/deepflow/