如何安全地修改 TiDB 各组件的 IP 地址和端口

Tiit 651 2024-03-18

前言

        TiDB 是一个开源的分布式关系型数据库,它具有水平扩展性、高可用性和强一致性的特点。在实际应用中,可能会需要对 TiDB 各个组件的 IP 地址和端口进行修改,以适应不同的网络环境或需求。修改 IP 地址和端口需要谨慎操作,以确保 TiDB 集群的稳定性和可靠性。在进行修改之前,请务必备份关键数据,并确保对 TiDB 集群的影响有清晰的认识。接下来,我们将详细介绍如何安全地修改 TiDB 各组件的 IP 地址和端口,以满足您的需求。

集群拓扑信息

image.png

修改TiDB Server IP地址

停止tidb服务

tiup cluster stop tidb-test1 -N 192.168.2.86:4000

image.png

修改tidb启动脚本IP信息

vi /tidb/tidb-deploy/tidb-4000/scripts/run_tidb.sh

image.png

修改主机网络,重启网络服务

vi /etc/sysconfig/network-scripts/ifcfg-ens33

systemctl restart network

中控机修改meta.yaml信息

将192.168.2.86改为192.168.2.81

vi ~/.tiup/storage/cluster/clusters/tidb-test1/meta.yaml

重新加载下tidb节点 

tiup cluster reload tidb-test1 -N 192.168.2.81:4000

更新监控节点信息(可选)

tiup cluster restart tidb-test1 -N 192.168.2.81:3000

tiup cluster restart tidb-test1 -N 192.168.2.81:9090

修改TiKV Server IP地址

停止tikv服务

tiup cluster stop tidb-test1 -N 192.168.2.84:20160

image.png

修改tikv启动脚本IP信息

vi /tidb/tidb-deploy/tikv-20160/scripts/run_tikv.sh

image.png

修改主机网络,重启网络服务

vi /etc/sysconfig/network-scripts/ifcfg-ens33

systemctl restart network

中控机修改meta.yaml信息

将192.168.2.84改为192.168.2.82

vi ~/.tiup/storage/cluster/clusters/tidb-test1/meta.yaml

重新加载下tikv节点 

tiup cluster reload tidb-test1 -N 192.168.2.82:20160

更新监控节点信息 (可选)

tiup cluster restart tidb-test1 -N 192.168.2.81:3000

tiup cluster restart tidb-test1 -N 192.168.2.81:9090

修改pd server IP地址

PD 不建议直接修改 IP 地址,先进行扩容,再缩容

扩容一台pd节点

tiup cluster scale-out tidb-test1 scale-pd.yaml -uroot -p

 

停止原来pd节点

tiup cluster stop tidb-test1 -N 192.168.2.80:2379

 

修改主机网络,重启网络服务

vi /etc/sysconfig/network-scripts/ifcfg-ens33

systemctl restart network

 

中控机修改meta.yaml信息

vi ~/.tiup/storage/cluster/clusters/tidb-test1/meta.yaml

将192.168.2.80改为192.168.2.86

重新加载下pd节点 

tiup cluster reload tidb-test1 -N 192.168.2.86:20160

 

更新监控节点信息 (可选)

tiup cluster restart tidb-test1 -N 192.168.2.81:3000

tiup cluster restart tidb-test1 -N 192.168.2.81:9090

修改TiDB Server端口

停止tidb服务

tiup cluster stop tidb-test1 -N 192.168.2.80:4000

image.png

确认修改端口是否占用

netstat -an|grep 4001

netstat -an|grep 10081

 

修改tidb启动脚本端口信息

vi  /tidb-deploy/tidb-4000/scripts/run_tidb.sh

 

中控机修改meta.yaml信息

将4000改为4001,10080改为10081

vi ~/.tiup/storage/cluster/clusters/tidb-test1/meta.yaml

 

重新加载下tidb节点 

tiup cluster reload tidb-test1 -N 192.168.2.80:4001

 

更新监控节点信息 (可选)

tiup cluster restart tidb-test1 -N 192.168.2.81:3000

tiup cluster restart tidb-test1 -N 192.168.2.81:9090

 

修改TiKV Server端口

停止tikv服务

tiup cluster stop tidb-test1 -N 192.168.2.82:20160

 

确认修改端口是否占用

netstat -an|grep 20161

netstat -an|grep 20181

 

修改tidb启动脚本端口信息

vi  /tidb-deploy/tidb-4000/scripts/run_tidb.sh

中控机修改meta.yaml信息

将20160改为20161,20180改为20181

vi ~/.tiup/storage/cluster/clusters/tidb-test1/meta.yaml

 

重新加载下tikv节点 

tiup cluster reload tidb-test1 -N 192.168.2.82:20161

更新监控节点信息 (可选)

tiup cluster restart tidb-test1 -N 192.168.2.81:3000

tiup cluster restart tidb-test1 -N 192.168.2.81:9090

 

修改pd server端口

PD 不建议直接修改 IP端口,先进行扩容,再缩容

扩容一台pd节点

tiup cluster scale-out tidb-test1 scale-pd.yaml -uroot -p

 

停止原来pd节点

tiup cluster stop tidb-test1 -N 192.168.2.80:2379

 

确认修改端口是否被占用

nestat -an |grep 2479

netstat -an|grep 2480

中控机修改meta.yaml信息

vi ~/.tiup/storage/cluster/clusters/tidb-test1/meta.yaml

将2379改为2479,2380改为2480

重新加载下pd节点 

tiup cluster reload tidb-test1 -N 192.168.2.80:2379

 

更新监控节点信息 (可选)

tiup cluster restart tidb-test1 -N 192.168.2.81:3000

tiup cluster restart tidb-test1 -N 192.168.2.81:9090

总结

在线修改IP和端口在机房搬迁,网络发生变更或者端口安全方面等场景使用比较频繁。此文章是给大家分享现网修改TiDB集群各组件的IP或端口的方法,可以做为平时运维上的操作参考。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:TiDB v7.5 LTS版本比TiDB v6.5新增的Hint
下一篇:TIDB 列转行及行转列的操作(附SQL实战)
相关文章