服务器因为安全升级要重启,集群tiup部署的,服务器的重启有顺序要求吗?如果一台一台的重启是否可以不影响集群正常运行

服务器因为安全升级要重启生效。tidb集群tiup部署的。环境有限 ,2台pd 和 tidb 同主机,剩下1台pd和3台tikv 单独部署。如果服务器逐个重启等待重启成功,是否可以不影响集群正常运行。如果全部重启,集群是自启动的吗?需要保证服务器重启 顺序吗?

1 个赞

可以先停指定的机器上服务,确认没问题了再重启机器

1 个赞

先stop集群,等待机器重启完成,再启动集群

1 个赞

自己stop 的集群 ,机器重启后不会自动启动吗?需要自己再 tiup cluster xx start 吗

1 个赞

建议是停集群后再重启服务。
理论上,这个配置,逐台停服务重启,应该不影响集群正常运行。

1 个赞

你考虑的是对的,我都忘记会自动启动了,关闭重启自动启动可以用这个命令: tiup cluster disable | PingCAP 文档中心
开启自动启动用这个: tiup cluster enable | PingCAP 文档中心
3台tikv 单独部署说的是每个tikv都是一个独立的机器,那其实重启机器没啥影响,如果都放在一个机器上了,还是建议先stop集群。

1 个赞

如果不能全部重启的话,其实是可以单台一台一台重启的,
2台pd 和 tidb 同主机,剩下1台pd和3台tikv 单独部署(tikv三副本)—这个环境的话,假设是这样
1 pd/tidb-server
2 pd/tidb-server
3 pd
4 tikv
5 tikv
6 tikv
可以先按1/2/3/4/5/6这种顺序一台一台重启的,但是必须要保证机器重启后,节点正常了,才能重启其他的机器。。。例如1重启之后,需要保证1上的pd和tidb-server都正常之后,才能重启2,4/5/6只能重启一个之后,待重启节点上tikv启动完成才能其他后面的节点

多谢多谢。中控是在第1台这个pd/tidb-server 上的,开始是通过它部署的tiup启动的集群。这几台按照这个顺序的话,是不是都可以不在中控上执行停止组件操作(tiup cluster stop xx -R pd),直接重启服务器就行,重启后观察集群状态,每个组件都保证在线后就可以了,再操作后续服务器。3台tikv 必须有两台是在线的吗?。按照上面朋友的答复,如果一起重启的话,最好也是保证pd 的服务器先启动好,tikv 启动时 pd 要在线

中控上执行停止节点操作(tiup cluster stop xx -N 1.1.1.1:7390)—停止完确认下节点状态,是重启对应机器上的节点,不是重启-R pd,这样所有的pd都停止了。。。例如你有3个pd,停止1个pd,其他pd会自动称为pd的leader,你在停止这个节点的pd之后,看到其他节点的pd正常,就可以重启这个pd对应的机器了。
tidbs-server的话只要保证起码有一个up的节点就能对外提供服务。
tikv一般是三副本,你可以看下max-replica参数,三副本的话,起码得有2个在线才能正常提供对外服务,所以必须保证起码有两个节点在线。。。
如果统一重启的话,建议像上面同学说的一样,先禁止自动启动,停止集群,然后重启机器,因为tidb 集群重启是有顺序的,pd→tikv→tidb这样,如果你机器启动有先后,tidb集群的自动启动可能并不能正常成功。启动集群不需要单独角色一个一个启动,可以等所有机器都重启完成,在统一tiup cluster start 集群名这样启动,但这样启动的前提是所有机器都启动完成,加入pd节点的机器还没启动完成,你肯定起不来。

1 个赞

:+1: 还有一点,单台服务器重启后 会自动启动组件吗?还需要手动执行 tiup cluster start xx -N 1.2.3.4:2379 ?自启动是能自动拉起组件的节点吧

tiup安装的组件都注册成服务了 会随着服务器启动

会的,实际你装tidb集群的时候,每个机器生成了一个类似这种的unit tidb-4000.service,然后都配置了自动启动,类似这种命令systemctl enable tidb-4000.service,重启机器,他会自动重启组件。。。

逐个重启 PD 和 TiDB

顺序其实可以参考这里:

启动集群操作会按 PD → TiKV → Pump → TiDB → TiFlash → Drainer → TiCDC → Prometheus → Grafana → Alertmanager 的顺序启动整个 TiDB 集群所有组件

关闭集群操作会按 Alertmanager → Grafana → Prometheus → TiCDC → Drainer → TiFlash → TiDB → Pump → TiKV → PD 的顺序关闭整个 TiDB 集群所有组件(同时也会关闭监控组件)

https://docs.pingcap.com/zh/tidb/stable/maintain-tidb-using-tiup#启动集群