PXC基于docker搭建mysql集群全过程

之前用mysql自带的bin-log复制,总是因为各种冲突,同步就阻塞掉了,一旦阻塞掉了,不主动发现,同步就终止了。还需要想办法手动去处理。所以考虑重新搭建集群。发现PXC方案不错,可以上两台,对服务器数量要求低些。尝试中

第一天:

看了官方文档要配ssl证书,大聪明的按照以前经验,不用证书也可以,所以docker启动把证书给去掉了。

集群未果。由于是使用两台机器,所以想着可能是桥接网卡没搞定,于是查到方案可以加swarm

第二天:

研究swarm集群,弄了半天,把两个服务给起来了,但卡在虚拟网卡上互相访问不通,以为是公司禁了IP段造成两台服务不通,恳求网管开了ip段同行,结果扑街。

第三天:

老老实实对着证书看了半天,查了查资料,发现有文章明确提出要用证书,老老实实在一台机器测试生成证书的方式搭建集群,结果用官方例子,证书跑不出来,扑街。

第四天:

总算调查明白了,官方文档生成不了证书,是因为权限不够,手动进入docker root用户下,生成了证书,给拷了出来,终于例子跑出来了。经测试,集群成功。而后屁颠屁颠的开始用swarm搭建不同ip段的集群,不出意外,果然出了意外,两台机器不同,挠头想了想,貌似只是防火墙的问题,把两台机器防火墙关了,果然成功了,于是开始测试集群,双向同步十分完美,然后想着关闭主数据库,只保留从数据库进行测试,结果发现主数据库再也起不来了。。。。。。。提示集群连接不上:

It may not be safe to bootstrap the cluster from this node. It was not the last one to leave the cluster and may not contain all the updates. To force cluster bootstrap with this node, edit the grastate.dat file manually and set safe_to_bootstrap to 1 .

 Provider/Node (gcomm://) failed to establish connection with cluster (reason: 7)

呵,tui!!!

-------------未完待续--------------------------

你可能感兴趣的:(docker,mysql,容器)