MMM部署

目录

一,配置主主复制及主从同步集群

1,建立复制账号

2,配置基于日志点的复制

三,安装主从节点所需要的支持包

四,安装及配置MMM工具集

五,启动mmm集群

六,故障转移,出从切换测试


192.168.195.139
192.168.195.140
192.168.195.141
其中,139和140配置相同(cpu,内存等),为主主,139和141为主从

一,配置主主复制及主从同步集群

1,建立复制账号

mysql> select user,host from mysql.user where user="zhaoheng";
+----------+---------------+
| user     | host          |
+----------+---------------+
| zhaoheng | 192.168.195.% |
+----------+---------------+
1 row in set (0.01 sec)

2,配置基于日志点的复制

<1>对节点1数据备份,并初始化节点2,3 的数据

扫描二维码关注公众号,回复: 8801227 查看本文章
 mysqldump  -u root -p  --single-transaction --master-data --triggers --routines --all-databases --events > all.sql

scp all.sql [email protected]:/home
scp all.sql [email protected]:/home


mysql -uroot -p <all.sql

<2>配置主从(139和141为主从)

<3>配置主主

保证139和140数据一致后,查看140的日志点


mysql> show master status\G
*************************** 1. row ***************************
             File: bin-log.000024
             Position: 120
             Binlog_Do_DB: 
             Binlog_Ignore_DB: 
             Executed_Gtid_Set: 6f998ec8-b89c-11e9-96ad-000c29b388f2:1
             1 row in set (0.00 sec)

然后在139,140下分别做change-master操作,MASTER_LOG_FILE指的是对方上面的日志名字以及偏移量

mysql> change master to master_host='192.168.195.140',
    -> master_user='zhaoheng', 
    -> master_password='zh179883', 
    -> MASTER_LOG_FILE='bin-log.000024', MASTER_LOG_POS=120;
Query OK, 0 rows affected, 7 warnings (0.01 sec)

然后可以看到139的主是140,140的主是139

三,安装主从节点所需要的支持包

(所有数据库服务器都要安装)

在home目录下,建立一个存放yum源的地址

mkdir tools
cd tools

配置epel和remi源

wget http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-6.rpm
#安装
rpm -ivh epel-release-latest-6.noarch.rpm
rpm -ivh remi-release-6.rpm 

对yum源进行配置

vim /etc/yum.repos.d/remi.repo 将enabled=0改为1
vim /etc/yum.repos.d/epel.repo 将baseurl前的#去掉,在mirrors前加#

四,安装及配置MMM工具集

yum search mmm

yum install mysql-mmm-agent.noarch -y

安装监控服务需要的包:

yum -y install mysql-mmm*

mysql -u root -p

创建代理账号:

mysql> grant super,replication client,process on *.* to 'mmm_agent'@'192.168.195.%' identified by 'zh179883';

创建监控账号:

mysql> grant replication client on *.* to 'mmm_monitor'@'192.168.195.%' identified by 'zh179883';

mmm_monitor用户:mmm监控用于对mysql服务器进程健康检查

mmm_agent用户:mmm代理用来更改只读模式,复制的主服务器等

复制用户在建立集群的时候已经好了

mmm-common.conf配置

<host default>
    cluster_interface       eth0(网卡)
    pid_path                /var/run/mysql-mmm/mmm_agentd.pid
    bin_path                /usr/libexec/mysql-mmm/
    replication_user        zhaoheng(复制用户)
    replication_password    zh179883(复制用户的密码)
    agent_user              mmm_agent(代理用户)
    agent_password          RepAgent(代理用户的密码)
</host>

<host db1>
    ip      192.168.195.139(主库1)
    mode    master
    peer    db2
</host>

<host db2>
    ip      192.168.195.140(主库2)
    mode    master
    peer    db1
</host>

<host db3>
    ip      192.168.195.141(从库)
    mode    slave
</host>

<role writer>
    hosts   db1, db2
    ips     192.168.195.100(写的虚拟ip)
    mode    exclusive
</role>

<role reader>
    hosts   db1, db2,db3(读的虚拟ip)
    ips     192.168.195.101, 192.168.195.102,192.168.195.103
    mode    balanced
</role>

将文件拷贝到其他服务器上确保所有服务器的此文件内容相同

scp mmm_common.conf [email protected]:/etc/mysql-mmm/

mmm_agent.conf

分别改为db1,db2,db3

现在已经完成了数据库的节点配置

现在要配置监控节点

五,启动mmm集群

先启动3个节点上的mmm代理

agent用来启动代理,monitor用来启动监控

[root@two-centos6 ~]# /etc/init.d/mysql-mmm-
mysql-mmm-agent    mysql-mmm-monitor  
[root@two-centos6 ~]# /etc/init.d/mysql-mmm-agent start
Starting MMM Agent Daemon:                                 [确定]
[root@one-centos6 mysql-mmm]# /etc/init.d/mysql-mmm-monitor start
Starting MMM Monitor Daemon:                               [确定]

查看集群状态:

[root@one-centos6 mysql-mmm]# mmm_control show
  db1(192.168.195.139) master/ONLINE. Roles: reader(192.168.195.101), writer(192.168.195.100)
  db2(192.168.195.140) master/ONLINE. Roles: reader(192.168.195.103)
  db3(192.168.195.141) slave/ONLINE. Roles: reader(192.168.195.102)

六,故障转移,主从切换测试

停掉节点1

结果:

[root@one-centos6 mysql-mmm]# mmm_control show
  db1(192.168.195.139) master/HARD_OFFLINE. Roles: 
  db2(192.168.195.140) master/ONLINE. Roles: reader(192.168.195.103), writer(192.168.195.100)
  db3(192.168.195.141) slave/ONLINE. Roles: reader(192.168.195.101), reader(192.168.195.102)

可以看到,节点1被设置成了离线状态,且写ip迁移到了db2上

可以看到,节点3已经进行了主从切换

发布了107 篇原创文章 · 获赞 18 · 访问量 6345

猜你喜欢

转载自blog.csdn.net/qq_43109978/article/details/99286782
mmm