Install Mysql MMM On Redhat6.3

哈哈,年底最後一篇文章。寫完今天下午放假。

MMM官方介紹:
MMM (Multi-Master Replication Manager for MySQL) is a set of flexible scripts to perform monitoring/failover and management of MySQL master-master replication configurations (with only one node writable at any time).
The toolset also has the ability to read balance standard master/slave configurations with any number of slaves, so you can use it to move virtual IP addresses around a group of servers depending on whether they are behind in replication.
The current version of this software is stable, but the authors would appreciate any comments, suggestions, bug reports about this version to make it even better. Current version 2.0 development is led by Pascal Hofmann. If you require support, advice or assistance with deployment, please contact Percona or Open Query.


安裝環境:
一臺監控,兩臺mysql server互爲主從

Monitor:
OS:redhat6.3
Name:zbdba1
IP:192.168.56.170

Mysql Server1:
OS:redhat6.3
Name:zbdba2
IP:192.168.56.171

Mysql Server2:
OS:redhat6.3
Name:zbdba3
IP:192.168.56.172
1、安裝MMM監控
2、安裝MMM agent
3、安裝mysql
4、配置互爲主從
5、創建用戶
6、配置
7、啓動MMM
8、測試


1、安裝MMM監控
這裏安裝epel的yum源,但是安裝的是任然缺少以下幾個包:
rpm -ivh ftp://195.220.108.108/linux/dag/redhat/el6/en/x86_64/extras/RPMS/perl-Algorithm-Diff-1.1902-1.el6.rfx.noarch.rpm
rpm -ivh http://pkgs.repoforge.org/perl-Email-Date-Format/perl-Email-Date-Format-1.002-1.el6.rfx.noarch.rpm


本地源:yum install rrdtool*


rpm -ivh rrdtool-perl-1.3.8-6.el6.x86_64.rpm


最後:
yum install mysql-mmm*


 
2、安裝MMM agent
跟第一步前面都是一樣的
yum -y install mysql-mmm-agent




3、安裝mysql
4、配置互爲主從
這兩步就不詳細說明了。


5、創建用戶
在任意一臺數據庫中:

GRANT SUPER, REPLICATION CLIENT, PROCESS ON *.* TO 'mmm_agent'@'192.168.56.%'   IDENTIFIED BY 'mysql';
GRANT REPLICATION CLIENT ON *.* TO 'mmm_monitor'@'192.168.56.%' IDENTIFIED BY 'mysql';

6、配置

cat /etc/mysql-mmm/mmm_common.conf
[root@zbdba1 mysql-mmm]# cat /etc/mysql-mmm/mmm_common.conf
active_master_role      writer

<host default>
    cluster_interface       eth0
    pid_path                /var/run/mysql-mmm/mmm_agentd.pid
    bin_path                /usr/libexec/mysql-mmm/
    replication_user        replicant
    replication_password    mysql
    agent_user              mmm_agent
    agent_password          mysql
</host>

<host db1>
    ip      192.168.56.171
    mode    master
    peer    db2
</host>

<host db2>
    ip      192.168.56.172
    mode    master
    peer    db1
</host>

#<host db3>
#    ip      192.168.100.51
#    mode    slave
#</host>

<role writer>
    hosts   db1, db2
    ips     192.168.56.173
    mode    exclusive
</role>

<role reader>
    hosts   db1, db2
    ips     192.168.56.174, 192.168.56.175
    mode    balanced
</role>

在每個節點都需要配置以上內容

修改agent節點:
[root@zbdba2 mysql-mmm]# cat mmm_agent.conf
include mmm_common.conf

# The 'this' variable refers to this

[root@zbdba3 mysql-mmm]# cat mmm_agent.conf
include mmm_common.conf

# The 'this' variable refers to this server.  Proper operation requires
# that 'this' server (db1 by default), as well as all other servers, have the
# proper IP addresses set in mmm_common.conf.
this db2

7、啓動MMM

啓動agent節點:
[root@zbdba2 default]# /etc/init.d/mysql-mmm-agent start
 
[root@zbdba3 default]# /etc/init.d/mysql-mmm-agent start


啓動監控節點:
[root@zbdba1 default]#/etc/init.d/mysql-mmm-monitor start

查看狀態:

[root@zbdba1 mysql-mmm]# mmm_control show
  db1(192.168.56.171) master/ONLINE. Roles: reader(192.168.56.175), writer(192.168.56.173)
  db2(192.168.56.172) master/ONLINE. Roles: reader(192.168.56.174)

[root@zbdba2 default]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:70:d2:ad brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.171/24 brd 192.168.56.255 scope global eth0
    inet 192.168.56.175/32 scope global eth0
    inet 192.168.56.173/32 scope global eth0
    inet6 fe80::a00:27ff:fe70:d2ad/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:57:10:81 brd ff:ff:ff:ff:ff:ff
    inet 192.168.253.111/24 brd 192.168.253.255 scope global eth1
    inet6 fe80::a00:27ff:fe57:1081/64 scope link
       valid_lft forever preferred_lft forever

[root@zbdba3 mysql-mmm]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:39:b0:e7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.172/24 brd 192.168.56.255 scope global eth0
    inet 192.168.56.174/32 scope global eth0
    inet6 fe80::a00:27ff:fe39:b0e7/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:08:3b:71 brd ff:ff:ff:ff:ff:ff
    inet 192.168.253.112/24 brd 192.168.253.255 scope global eth1
    inet6 fe80::a00:27ff:fe08:3b71/64 scope link
       valid_lft forever preferred_lft forever

發現zbdba2成爲讀節點,zbdba3爲寫節點




8、測試
關閉zbdba2 的mysql
[root@zbdba2 default]# service mysql stop
Shutting down MySQL... SUCCESS!


再次查看monitor狀態:

[root@zbdba1 mysql-mmm]# mmm_control show
  db1(192.168.56.171) master/HARD_OFFLINE. Roles:
  db2(192.168.56.172) master/ONLINE. Roles: reader(192.168.56.174), reader(192.168.56.175), writer(192.168.56.173)


[root@zbdba3 mysql-mmm]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:39:b0:e7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.172/24 brd 192.168.56.255 scope global eth0
    inet 192.168.56.174/32 scope global eth0
    inet 192.168.56.175/32 scope global eth0
    inet 192.168.56.173/32 scope global eth0
    inet6 fe80::a00:27ff:fe39:b0e7/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:08:3b:71 brd ff:ff:ff:ff:ff:ff
    inet 192.168.253.112/24 brd 192.168.253.255 scope global eth1
    inet6 fe80::a00:27ff:fe08:3b71/64 scope link
       valid_lft forever preferred_lft forever



發現所有VIP都漂移到zbdba3上了。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章