操作目的为将task从一个worker迁移到另一台机器上的worker执行,所做操作如下:
1.事先已经在新的work配置好relay.meta,拉取binlog正常
2.停掉老的task任务
3.启动新的worker上的任务
启动后报错
query-error返回的错误信息如下
已经用相同方法迁移了其他几个task都正常
其他信息:
老的worker版本Release Version: v1.0.0-alpha-30-g76218b6
新的worker版本Release Version: v1.0.1
尝试重新stop服务,删除原来已拉取的binlog文件,设置一个新的relay.meta,启动服务后,binlog拉取依旧正常,start-task还是报图中的错误
麻烦整理一下问题描述:具体的 dm-worker 的迁移动作 step by step 操作描述一下。
1.新dm集群,stop对应的worker服务
2.新dm集群,配置relay.meta
3.新dm集群,start对应worker服务,可正常拉取binlog
4.老dm集群,通过dmctl执行stop-task停掉对应task
5.新dm集群,通过dmctl执行start-task启动task
6.新dm集群执行query-status可看到上文中提到的错误
请排查一下 dm-worker 版本,如果存在新老版本差异是出现这个问题 gRPC 协议不兼容问题。
1.一个集群的所有组件版本都是一致的
2.我的做法也是从老的集群直接copy的relay.meta
3.其他很多任务这样迁移都没有问题,只有这个出了问题
relay log 的目录一致吗?注意最后的 .000002,以及 server-uuid.index
老的是f68005b4-7703-11e9-b3d1-98039b6e2fb8.000002
新的是f68005b4-7703-11e9-b3d1-98039b6e2fb8.000001
应该就是这个原因,我删掉新的relaylog目录重新启动服务获取的也是000001,该如何解决?
重启copy了整个relaylog目录,已经解决问题,感谢
目前task启动运行正常,dm-worker.log看起来也没问题
system
(system)
关闭
17
此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。