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的健康检查端口,打包发版,问题解决。

相关推荐
Hadoop_Liang24 分钟前
使用Kubernetes Gateway API实现域名访问应用
容器·kubernetes·gateway
java_cj3 小时前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
步步为营DotNet5 小时前
基于.NET Aspire 实现云原生应用的高效监控与可观测性
云原生·.net·wpf
源图客6 小时前
【AI向量数据库】Weaviate介绍与部署
运维·docker·容器
牛奶咖啡137 小时前
KVM虚拟化与企业应用实践——给远端主机创建虚拟机
云原生·qemu·kvm·给远端主机创建虚拟机·创建uefi模式的虚拟机·安装openeulersp2·vnc与虚拟机环境搭建
码云骑士9 小时前
28-Docker部署Django(下)-docker-compose编排与静态文件处理
docker·容器·django
java_cj10 小时前
从kubectl学Visitor模式:如何优雅处理多态数据结构的遍历
云原生·golang·k8s·访问者模式
木雷坞10 小时前
Firecrawl Docker Compose 自托管排查:镜像、Redis、队列和 Playwright
redis·docker·容器·firecrawl
就改了10 小时前
微服务异步场景链路断裂完整解决方案
微服务·云原生·架构
whyfail11 小时前
Colima:把 Docker Desktop 从 Mac 上“瘦身”的那把刀
macos·docker·容器