tiup cluster edit-config 报错不能修改

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
【概述】场景+问题概述


修改drainer
commit_ts: 431948192049790977

【背景】做过哪些操作
【现象】业务和数据库现象
【业务影响】
【TiDB 版本】
【附件】

  1. TiUP Cluster Display 信息

  2. TiUP Cluster Edit Config 信息

  3. TiDB- Overview 监控

  • 对应模块日志(包含问题前后1小时日志)

https://docs.pingcap.com/zh/tidb/stable/tiup-cluster-topology-reference#drainer_servers

可以把之前的 drainer 缩容然后重新部署

tiup不支持这个字段的变更,可以参考楼上的做法先把drainer下线再扩容进去

怎么缩容?drainer怎么重新部署?

commit_ts 一直是0

vi .tiup/storage/cluster/clusters/{cluster-name}/meta.yaml
配置可以手动改

缩容可以参考这里
https://docs.pingcap.com/zh/tidb/stable/tiup-component-cluster-scale-in
https://docs.pingcap.com/zh/tidb/stable/scale-tidb-using-tiup#缩容-tidbpdtikv-节点

怎么重新部署一个新的drainer,使用tiup还是?

是的,要使用tiup

怎么重新部署?麻烦发一个命令

tiup cluster scale-out <cluster-name> scale-out.yaml

code = Unknown desc = cluster ID are mismatch, 0 vs 6828 这个是什么原因?

检查一下集群名称是否是对的

是的,就是要先缩容,然后扩容。
缩容用scale-in命令,扩容用scale-out命令。

我来回答:
1、查看集群状态tiup cluster display 集群名
2、找到drainer的那行,ip:port drainer
3、停止drainer # tiup cluster stop 集群名 -N ip:port
4、清除drainer节点# tiup cluster scale-in 集群名 --node ip:port
5、清理集群# tiup cluster prune 集群名


新增drainer节点,编辑配置文件,如下
global:
user: “tsp-tidb”
ssh_port: 22
deploy_dir: “/data/tidb-deploy”
data_dir: “/data/tidb-data”

drainer_servers:

  • host: ip######这里改成自己的ip
    port: 8249
    deploy_dir: “/data/tidb-deploy/drainer-8249”
    data_dir: “/data/tidb-data/drainer-8249”

    config:
    syncer.db-type: “tidb”
    syncer.to.host: “10.20##这里改成自己的ip
    syncer.to.user: “user这里改成自己的user”
    syncer.to.password: “password这里改成自己的password”
    syncer.to.port: 4000

—使用tiup增加drianer节点

tiup cluster scale-out 集群名 ./drainer.yaml --user root -p 输入操作系统密码

3 个赞

必须要这样才能恢复同步吗?

按照我们的测试经验是需要这么做的,您可以在测试环境试验一下

缩容一个drainer之后display之后drainer还在,直接扩容一个drainer,drainer还是报错code = Unknown desc = cluster ID are mismatch, 0 vs 6828

缩容之后drianer还在这个也不会影响再扩容一个drainer的,这个可以有多个drainer的,只是你的pump状态是什么呢

pump是online状态