radondb-mysql-kubernetes icon indicating copy to clipboard operation
radondb-mysql-kubernetes copied to clipboard

when restart a mysql cr with 3 replicas, the last one pod will do full amount of backup

Open wangyanyan66 opened this issue 1 year ago • 7 comments

radondb-mysql版本是2.1.4 比如建一个3副本的mysql实例,当重启mysql的时候,最后一个pod的init-sidecar会做全量备份,如果数据量比较大的时候,会卡住很长时间,而pod重启不应该做全量备份

wangyanyan66 avatar Sep 13 '22 06:09 wangyanyan66

这难道不是bug吗

wangyanyan66 avatar Sep 20 '22 02:09 wangyanyan66

这难道不是bug吗

如果节点启动的时候数据目录是空的,是会从已有的节点获取数据的,这个操作是为了支持重建节点和扩节点。

runkecheng avatar Sep 20 '22 03:09 runkecheng

如果集群数据量比较大的时候重建或者新增节点,确实会需要比较长的时间同步数据,这是正常的。

runkecheng avatar Sep 20 '22 03:09 runkecheng

你可以看下sidecar的代码,只要service通了,就会做备份操作,其实需要加个判断,如果没有数据目录再做备份,我说的bug是指备份前没做判断

wangyanyan66 avatar Sep 20 '22 03:09 wangyanyan66

你可以看下sidecar的代码,只要service通了,就会做备份操作,其实需要加个判断,如果没有数据目录再做备份,我说的bug是指备份前没做判断

https://github.com/radondb/radondb-mysql-kubernetes/blob/main/sidecar/init.go#L109

runkecheng avatar Sep 20 '22 03:09 runkecheng

main分支已经改了,我看的2.1.4分支

wangyanyan66 avatar Sep 20 '22 03:09 wangyanyan66

main分支已经改了,我看的2.1.4分支

建议升级到v2.2.1,目前版本持续迭代中,有问题欢迎随时提出。

升级时需要手动升级crd。 版本内容以release为准,main分支会包含开发中的功能。

runkecheng avatar Sep 20 '22 03:09 runkecheng