tiup 机器安装多套tidb 集群

请问下各位老师,目前已经有一台单独的tiup 机器,已经部署了一套tidb 4.0.15 集群,打算在这台机上再部署一套tidb v5.4.0集群(与v4.0.15 不同的服务器),不同的集群用同一台tiup 机器部署、管理 是否可行?
并且存在了两个问题?
1.如果要在同一台机器上部署第二套v5.4.0版本的tidb集群,还要不要重新部署tiup 组件,如果要重新部署tiup 组件,按照官网的步骤要执行以下步骤


但是按照官网的步骤,如果执行 sh tidb-community-server-${version}-linux-amd64/local_install.sh,的话,
1、这个shell 脚本会把原有的tiup 命令会被替换成新版本tidb v5.4.0的tiup 命令,这样以后 会不会影响通过tiup管理原有的v4.0.15集群

2、这个shell 脚本会执行 m -rf $TIUP_HOME/manifests,把 $TIUP_HOME/manifests 目录删除,这个目录删除里面存放的都是些tidb集群组件的json文件,这个目录删了有没有什么影响?

2、即使不执行sh tidb-community-server-${version}-linux-amd64/local_install.sh ,通过tiup mirror set 切换到v5.4.0的mirror 后,也会发现$TIUP_HOME/manifests 目录删除,所以这个目录删了有没有什么影响?

2 个赞

1、一台tiup中控机管理多个TiDB集群是没问题的

2、考虑到你都是离线环境部署,而且集群版本不一样,建议升级到5.4的tiup版本,重新执行5.4安装包里的local_install就行,tiup镜像会被指向到5.4的目录

3、在我自己的环境上看了一下没找到你说的manifests目录,根据之前的经验重新执行local_install或tiup mirror set对已部署的集群没有影响,你可以提前备份下已有的.tiup目录以防万一

4、如果后续还需要使用4.0.15资源包,你要做一下tiup mirror merge操作,把4.0.15的安装包合并到新的tiup镜像中,tiup cluster list能看到2个版本即可。参考文档:https://docs.pingcap.com/zh/tidb/dev/tiup-command-mirror-merge

3 个赞

一个中控TiUP可以安装管理多套TiDB集群的

2 个赞

感谢兄台回复
1 用v5.4.0 高版本的tiup 命令去管理v4.0.15的tidb 集群应该没啥问题把?

2、manifests 目录在$HOME/.tiup 目录,不知道这个目录里面的文件干啥的,但是应该不是很重要

image

根据我自己的测试,如果执行另外一个版本的local_install.sh 或者tiup mirror set tidb-community-server-${version}-linux-amd64 ,例如
sh tidb-community-server-v5.4.0-linux-amd64/local_install.sh,这个目录暂时不会出现在$HOME/.tiup 目录中,如果执行tiup list 命令,这个目录就会出现了

3、如果不做 tiup mirror merge操作,假设我当前的mirror 是5.4.0,我执行tiup cluster list,只能看到5.4.0版本的集群信息?,比如之前部署4.0.15的集群信息就看不到了?要执行tiup mirror set tidb-community-server-v4.5.0-linux-amd64 切换到4.0.15的镜像才能看到4.0.15的集群信息?

2 个赞

请问,用高的tiup 版本管理低版本的tidb 集群应该没啥问题吧?

2 个赞

1、用高版本tiup没问题
2、刚具体看了下,manifests保存的是tiup的组件信息,这些json文件在tiup mirror指向的目录里都有,而且用tiup list可以生成,所以无关紧要
3、你理解是对的,举个例子,比如你要给老版本的集群扩容一个4.0.15的tikv节点,在5.4的镜像源中是找不到这个版本的,要么手动再切一下mirror地址,要么提前把4.0.15合并进来。tiup cluster display不受这个影响,两个版本的集群信息都能查出来。

2 个赞

多谢兄台,周末愉快

2 个赞

可以的,基本都是向下兼容的

1 个赞