tidb binlog部署后start_drainer失败

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:3.0.11
  • 【问题描述】:

我在原tidb集群上增加部署tidb binlog,同步至下游kafka中,节点信息如下:

172.16.10.21 pump

172.16.10.20 drainer

inventory.ini中相关配置:


drainer_kafka_drainer.toml配置如下:

ansible-playbook deploy_drainer.yml 执行成功

ansible-playbook start_drainer.yml 执行失败,截图如下:

中控机及drainer所在机器上没有其它错误信息,请问这是什么问题?在wait until the drainer port is up这个阶段等待差不多有几分钟,然后出错

您好:

    1. 请查看drainer目标机器安装目录,是否安装成功
    2. 麻烦发送drainer日志
    3. ps -ef | grep drainer 看下是否有drainer进程已经启动?

安装应该是成功了,目录中都脚本都在的,但是drainer下没有日志,也没有drainer进程存在

另外:这台机器之前已经安装过drainer,设置的下游接收binlog的类型为file,当时测试都正常,文件也可以正常生成。然后我今天是把drainer停掉,然后deploy目录直接 rm 了 ,然后按照文档重新部署的

您好:

     1.  麻烦反馈drainer_stderr.log日志
     2.  麻烦检查drainer端口是否放通,是否关闭防火墙
     3.  能否尝试使用scritps下的start 脚本启动drainer,看看是否有报错

drainer_stderr.log是空的

防火墙是关闭的

scripts下的start脚本执行,无输出,也没有错误

操作详见截图

您好: 能否尝试使用ansible 添加 -vvv 参数 启动, 反馈中控机目录下/log/ansible.log ,多谢。

ansible_20200422.log (50.9 KB)

您好:
1. 从报错看,应该是中控机无法连接drainer这台服务器


2. 可以先尝试能否ping通, 再试试telnet 能否访问端口,检查下这个用户的连通性,多谢

中控机是172.16.11.10,drainer机器是172.16.11.20,网络连通性没问题的,如果有问题的话,deploy的步骤就报错了

发现一个问题,好像之前没有正常关掉drainer

我刚看了下

然后我修改状态为offline,再次执行start_drainer,仍然不行,也没有任何错误

请问怎么彻底下线drainer,不知道是不是这个原因导致启动不了的?

您好:
1. 看这个drainer的状态是20号,新安装是21号吗?
2. 尝试用binlogctl尝试下线,之后重新安装流程启动,或者重新安装试试
https://pingcap.com/docs-cn/v3.0/reference/tidb-binlog/maintain/

1、20号前安装过,当时设置的是file模式,一切正常。然后昨天我可能没有下线drainer,直接执行scripts下的stop_drainer.sh,然后中控机修改相关配置,改为kafka。后面就是启动失败。然后我直接把drainer节点的deploy目录直接rm了,重新安装还是失败

2、已经尝试过很多次,binlogctl下线,提示服务不存在,连接不上。然后反复重新安装了几次,都不行

3、现在可能是pd中还存在drainer的信息,无法清除,不知道怎么彻底清除掉

现在可能是在异常退出drainer时,怎么操作可以重新安装drainer

您好:

   1. 尝试journalctl -u drainer-8249.service 看看日志
   2. 手工启动你的这个脚本,看看是否有报错

image

1、journalctl -u drainer-8249.service 这个没看出有用的信息

2、执行scripts/run_drainer.sh,报错如下

conf/drainer.toml对应配置如下

您好:

    1.  我查看对比了官方文档配置,好像都是正确的,能否再检查下,是否有中文符合之类的? 
    2.  试着把[syncer.to] 也放开试下

https://pingcap.com/docs-cn/v3.0/reference/tidb-binlog/deploy/

[syncer.to]这个放开可以启动了。

原来是配置错误,在中控机上编辑drainer_kafka_drainer.toml文件时忘了打开[syncer.to],就顾着填写zk、kafka这些信息了,失误

好的,感谢反馈

你好,刚这个启动好以后,看到drainer.log中有如下warn信息:

这个是什么问题?我看配置也没打开mysql相关的选项