欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Orchestrator高可用管理详解

程序员文章站 2022-03-26 19:32:10
背景在MySQL高可用架构中,目前使用比较多的是Percona的PXC,Galera以及MySQL 5.7之后的MGR等,其他的还有的MHA,今天介绍另一个比较好用的MySQL高可用复制管理工具:Orchestrator(orch)。Orchestrator这是一款go编写的MySQL高可用性和复制拓扑管理工具,支持复制拓扑结构的调整,自动故障转移和手动主从切换等。后端数据库用MySQL或SQLite存储元数据,并提供Web界面展示MySQL复制的拓扑关系及状态,通过Web可更改MySQL实例的复制关...

背景

在MySQL高可用架构中,目前使用比较多的是Percona的PXC,Galera以及MySQL 5.7之后的MGR等,其他的还有的MHA,今天介绍另一个比较好用的MySQL高可用复制管理工具:Orchestrator(orch)。

Orchestrator

这是一款go编写的MySQL高可用性和复制拓扑管理工具,支持复制拓扑结构的调整,自动故障转移和手动主从切换等。后端数据库用MySQL或SQLite存储元数据,并提供Web界面展示MySQL复制的拓扑关系及状态,通过Web可更改MySQL实例的复制关系和部分配置信息,同时也提供命令行和api接口,方便运维管理。

相对比MHA来看最重要的是解决了管理节点的单点问题,其通过raft协议保证本身的高可用。GitHub的一部分管理也在用该工具进行管理。

Orchestrator大致的特点有:

  • 自动发现MySQL的复制拓扑,并且在web上展示。
  • 重构复制关系,可以在web进行拖图来进行复制关系变更。
  • 检测主异常,并可以自动或手动恢复,通过Hooks进行自定义脚本。
  • 支持命令行和web界面管理复制

安装

环境

centos 7
192.168.1.153  master
192.168.1.154  slave
192.168.1.155  slave

安装安装mysql-master(192.168.1.153)

docker安装mysql

$ docker pull mysql:5.7.22   
$ docker run -tid --restart=always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql-master mysql:5.7.22   

创建同步用户

docker exec -ti mysql-master mysql -uroot -p123456 -e "grant replication slave on *.* to 'db_sync'@'%' identified by 'abcdefg';"

安装安装mysql-slave(192.168.1.154/155)

docker安装mysql

$ docker pull mysql:5.7.22   
$ docker run -tid --restart=always -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql-slave mysql:5.7.22    

与主同步

$ docker exec -ti mysql-slave mysql -uroot -p123456 -e "stop slave;change master to master_host='192.168.1.10',master_user='db_sync',master_password='abcdefg',master_port=3306,master_auto_position=1;start slave;"

本文地址:https://blog.csdn.net/xixihahalelehehe/article/details/106099648

相关标签: mysql