【概述】
tikv磁盘紧张,现准备通过扩容缩容的办法进行磁盘替换,然而scale-out.yaml里新加节点的路径和global配置参数里的不一样(因为扩容节点和原节点在同一服务器上)像这种新节点的路径和global不一致,这样扩容的话,是否能成功?
【TiDB 版本】4.0.14
scale-out.yaml里为新扩容的节点单独指定下路径
scale-out.yaml 只对新扩容的有效,不会有影响,不过为什么要不一样呢?
能成功
因为他得先扩容在把老的缩容,现有的路径已经被老的占用了
哦哦哦。。。。
在扩容的时候,可以尝试更换一个和之前不一样的端口,再次扩容
新节点的端口号跟之前是不一样的,像这种新节点跟原来节点在同一个主机的,只是端口不同的,还需要配置其他的吗
路径也得不同
路径,端口号,都改为不同的了
我看主要报错是: multiple TiKV instances are deployed at the same host but location label missing
能看一下现在的集群状态吗,是不是之前的tikv节点还没有缩容成功呀。因为提示的是多个节点在同一个机器上,会导致 PD 无法感知集群的拓扑结构,可能将一个 Region 的多个副本调度到一台物理机上的不同 TiKV,这样这台物理机就成为了单点
设置下label
是先扩容,再缩容的,目前扩容的时候报错了,集群目前状态正常,因为扩容的节点和之前节点在同一主机上,只是新的tikv节点的路径和端口号跟之前的不一样
对新加节点设置label吗,我在scale-out.yaml文件里加上了config:
server.labels: { zone: “zone1”, dc: “dc1”, host: “host1” }
嗯,一台服务器上有两个tikv,这个相当于单机多实例安装了,参考下这个吧
https://asktug.com/t/topic/37680
临时扩容就用 --no-labels吧,反正缩容后其实还是单实例。。
加上 --no-labels
后,扩容完成了。那现在是不是可以进行缩容命令,把老的三个节点给去掉了?这样会不会导致数据丢失啊