当前位置:Gxlcms > 数据库问题 > MySQL-MMM架构部署

MySQL-MMM架构部署

时间:2021-07-01 10:21:17 帮助过:45人阅读

root@master1 ~]# yum -y install gcc* perl-Date-Manip  perl-Date-Manip  perl-Date-Manip perl-XML-DOM-XPath perl-XML-Parser perl-XML-RegExp rrdtool perl-Class-Singleton perl perl-DBD-MySQL perl-Params-Validate perl-MailTools perl-Time-HiRes

2安装MySQL-MMM软件依赖包MySQL集群内5台服务器master1master2slave1slave2monitor均需安装软件包讲师提供

安装安装Log-Log4perl 类

  1. [root@mysql-master1 ~]# rpm -ivh perl-Log-Log4perl-1.26-1.el6.rf.noarch.rpm

安装Algorithm-Diff类

  1. [root@mysql-master1 ~]# tar -zxvf Algorithm-Diff-1.1902.tar.gz  //解压安装包

  2. .. ..

  3. [root@mysql-master1 ~]# cd Algorithm-Diff-1.1902                //切换到安装目录

  4. [root@mysql-master1 Algorithm-Diff-1.1902]# perl  Makefile.PL    //生成makefile文件

  1. [root@mysql-master1 Algorithm-Diff-1.1902]# make && make install        //编译编译安装

  2. .. ..

  3. [root@mysql-master1 Algorithm-Diff-1.1902]# cd                //切换到软件包目录

安装Proc-Daemon类

  1. [root@mysql-master1 ~]# tar -zxvf Proc-Daemon-0.03.tar.gz    //解压安装包

  2. .. ..

  3. [root@mysql-master1 ~]# cd Proc-Daemon-0.03                    //切换到安装目录

  4. [root@mysql-master1 Proc-Daemon-0.03]# perl    Makefile.PL    //生成makefile文件

  5. Checking if your kit is complete...

  6. Looks good

  7. Writing Makefile for Proc::Daemon

  8. [root@mysql-master1 Proc-Daemon-0.03]# make && make install    //编译编译安装

  9. .. ..

  10. [root@mysql-master1 Proc-Daemon-0.03]# cd                    //切换到软件包目录


安装Net-ARP虚拟IP分配工具

  1. [root@mysql-master1 ~]# gunzip Net-ARP-1.0.8.tgz    //使用gunzip解压tgz格式的安装包

  2. [root@mysql-master1 ~]# tar xvf Net-ARP-1.0.8.tar            //解压tar安装包

  3. .. ..

  4. [root@mysql-master1 ~]# cd Net-ARP-1.0.8                    //切换到安装目录

  5. [root@mysql-master1 Net-ARP-1.0.8]# perl Makefile.PL        //生成makefile文件

  1. [root@mysql-master1 Net-ARP-1.0.8]# make && make install    //编译编译安装

  2. .. ..

  3. [root@mysql-master1 Net-ARP-1.0.8]# cd                        //切换到软件包目录

安装Mysql-MMM软件包

  1. [root@mysql-master1 ~]# tar xvf mysql-mmm-2.2.1.tar.gz        //解压安装包

  2. .. ..

  3. [root@mysql-master1 ~]# cd mysql-mmm-2.2.1                    //切换到安装目录

  4. [root@mysql-master1 mysql-mmm-2.2.1]# make && make install    //编译编译安装

步骤二修改配置文件

1修改公共配置文件

本案例中MySQL集群的5台服务器master1、master2、slave1、slave2、monitor都需要配置可以先配好一台后使用scp复制。

  1. [root@master1 ~]# vim  /etc/mysql-mmm/mmm_common.conf

  2. active_master_role    writer


  3. <host default>

  4.     cluster_interface        eth0                //设置主从同步的用户


  5.     pid_path                /var/run/mmm_agentd.pid

  6.     bin_path                /usr/lib/mysql-mmm/


  7. replication_user        slaveuser            //设置主从同步的用户

  8. replication_password    pwd123            //设置主从同步用户密码


  9.     agent_user            agent                //mmm-agent控制数据库用户

  10.     agent_password        agent                //mmm-agent控制数据库用户密码

  11. </host>


  12. <host master1>                            //设置第一个主服务器

  13.     ip                    192.168.4.10            //master1 IP 地址

  14.     mode                    master

  15.     peer                    master2                //指定另外一台主服务器

  16. </host>


  17. <host master2>                            //指定另外一台主服务器

  18.     ip                    192.168.4.11

  19.     mode                    master

  20.     peer                    master1

  21. </host>


  22. <host slave1>                                //设置第一台从服务器

  23.     ip                    192.168.4.12            //slave1 IP 地址

  24.     mode                    slave                //本段落配置的是slave服务器

  25. </host>


  26. <host slave2>

  27.     ip                    192.168.4.13

  28.     mode                    slave

  29. </host>


  30. <role writer>                                //设置写入服务器工作模式

  31.     hosts                master1,master2        //提供写的主服务器

  32.     ips                    192.168.4.200        //设置VIP地址

  33.     mode                    exclusive            //排他模式

  34. </role>


  35. <role reader>                                //设置读取服务器工作模式

  36.     hosts                slave1,slave2        //提供读的服务器信息

  37.     ips                    192.168.4.201,192.168.4.202    //多个虚拟IP

  38.     mode                    balanced                        //均衡模式

  39. </role>

2修改管理主机配置文件monitor主机配置

  1. [root@monitor ~]# vim /etc/mysql-mmm/mmm_mon.conf

  2. include mmm_common.conf


  3. <monitor>

  4.     ip                        192.168.4.100        //设置管理主机IP地址

  5.     pid_path                /var/run/mmm_mond.pid

  6.     bin_path                /usr/lib/mysql-mmm/

  7.     status_path                /var/lib/misc/mmm_mond.status

  8.     ping_ips                192.168.4.10,192.168.4.11,192.168.4.12,192.168.4.13

  9.                                                 //设置被监控数据库

  10. </monitor>


  11. <host default>

  12.     monitor_user            monitor                    //监控数据库MySQL用户    monitor_password        monitor                    //监控数据库MySQL用户密码

  13. </host>


  14. debug 0

3修改客户端配置文件

master1配置

  1. [root@master1 ~]# cat /etc/mysql-mmm/mmm_agent.conf

  2. include mmm_common.conf

  3. this master1

master2配置

  1. [root@master2 ~]# cat /etc/mysql-mmm/mmm_agent.conf

  2. include mmm_common.conf

  3. this master2

slave1配置

  1. [root@slave1 ~]# cat /etc/mysql-mmm/mmm_agent.conf

  2. include mmm_common.conf

  3. this slave1

slave2配置

  1. [root@slave2 ~]# cat /etc/mysql-mmm/mmm_agent.conf

3 MySQL-MMM架构使用

3.1 问题

本案例要求基于普通版的MySQL服务器改造MMM架构完成以下任务操作

  • 启动MMM集群架构

  • 设置集群中服务器为online状态

3.2 方案

MySQL-MMM架构部署完成后需要启动数据库端启动mmm-agent进程管理端启动mmm-monitor进程启动完成后设置所有数据库主机状态为online。

3.3 步骤

实现此案例需要按照如下步骤进行。

步骤一启动MMM集群架构

1启动mmm-agent进程

master1操作

  1. [root@master1 ~]# /etc/init.d/mysql-mmm-agent start

master2操作

  1. [root@master2 ~]# /etc/init.d/mysql-mmm-agent start

slave1操作

  1. [root@master2 ~]# /etc/init.d/mysql-mmm-agent start

slave2操作

  1. [root@slave2 ~]# /etc/init.d/mysql-mmm-agent start

2启动mmm-monitor进程

monitor主机操作

  1. [root@monitor ~]# /etc/init.d/mysql-mmm-monitor start

步骤二设置集群中服务器为online状态

控制命令只能在管理端monitor服务器上执行。

查看当前集群中各服务器状态

  1. [root@monitor ~]# mmm_control show

设置4台数据库主机状态为online

  1. [root@monitor ~]# mmm_control set_online master1

  2. OK: State of ‘master1‘ changed to ONLINE. Now you can wait some time and check its new roles!

  3. [root@monitor ~]# mmm_control set_online master2

  4. OK: State of ‘master2‘ changed to ONLINE. Now you can wait some time and check its new roles!

  5. [root@monitor ~]# mmm_control set_online slave1

  6. OK: State of ‘slave1‘ changed to ONLINE. Now you can wait some time and check its new roles!

  7. [root@monitor ~]# mmm_control set_online slave2

再次查看当前集群中各服务器状态

  1. [root@monitor ~]# mmm_control show

  2. master1(192.168.4.10) master/ONLINE. Roles: writer(192.168.4.200)

  3. master2(192.168.4.11) master/ONLINE. Roles:

  4. slave1(192.168.4.12) slave/ONLINE. Roles: reader(192.168.4.201)

  5. slave2(192.168.4.13) slave/ONLINE. Roles: reader(192.168.4.202)

步骤三测试MySQL-MMM架构

1客户机安装MySQL-client软件包

  1. [root@client ~]# tar xvf MySQL-5.6.15-1.el6.x86_64.rpm-bundle.tar

  2. .. ..

  3. [root@client ~]# rpm -ivh MySQL

人气教程排行