dolphinscheduler部署排错记录

dolphinscheduler部署至K8S集群上的遇到的坑

问题

问题出现场景:

​ 在部署完ui, worker, master, api四个模块之后,随手建了一个工作流,点击运行的时候,在master节点上出现这个报错。

猜测原因

发送方发送的消息和接收方接收的消息格式不一致,导致报的这个错,但是程序在本地环境上打包成镜像是可以正常跑流程的,部署到K8S之后就出现了这个问题,代码中间也没有改动过,master和worker之间的RPC消息格式一定是一致的。

因此猜测是有其它请求访问了master或者worker节点,导致出现了这个问题。

排错过程

首先是寻找K8S集群和本地打包镜像的区别,网络通信会有区别,查看dolphinscheduler注册的k8s上的node信息。

在worker和master的pod上分别ping对应的ip,发现都可以通。随后陷入了很长一段时间的懵逼过程。

最后在dolphinscheduler的issue中找到同款报错。

内心狂喜,因为K8S上存在健康检查,而本地搭建镜像并不存在每隔一段时间的健康检查。随后查看健康检查的脚本,发现了在worker节点中,K8S系统会每隔一段时间去访问worker的1234端口,正好是worker用来和master进行RPC通信的端口,随后重写了一个http的健康检查端口,打包发版,问题解决。

相关推荐
guo_wen_qiang3 小时前
docker的备份与迁移
运维·docker·容器
寻林写彡5 小时前
云安全 | Docker 容器逃逸复盘(一):从隔离边界到运行时链路,如何确认自己身处容器
安全·云原生
小小龙学IT6 小时前
Kubernetes 深度实践:架构、API 与避坑指南
容器·架构·kubernetes
MrSYJ10 小时前
别人再问你路由表是啥,这篇文章摔它脸上
docker·云原生·kubernetes
羑悻11 小时前
穿越Docker内核迷雾:揭秘镜像分层存储的叠加态与卷挂载的多维空间穿梭技术
后端·docker·容器
运维开发王义杰11 小时前
ingress-nginx 退役后怎么选:Istio、Kong、Traefik 与 APISIX
云原生
吴声子夜歌12 小时前
Nginx应用与运维——Nginx在Kubernetes中的应用(一)
运维·nginx·kubernetes
for_ever_love__12 小时前
容器类型全家桶——list、tuple、dict、set 与推导式
python·容器·数据类型·大模型开发
筑梦之路12 小时前
docker-compose方式部署kafka集群(Kraft方式)——筑梦之路
docker·容器·kafka
JavaPub-rodert13 小时前
Docker 镜像地址总失效?基于 DockerHub 项目用 GitHub Actions 做一个自动检测状态页
docker·容器·github