mysql-mmm的搭建步骤
//mysql-mmm的搭建步驟
?
環境準備:
?db1?? IP:192.168.10.121
?db2?? IP:192.168.10.122
?db3?? IP:192.168.10.123
?db4?? IP:192.168.10.124
?server5?IP:192.168.10.131?監控機
?
?其中db1與db2為主主同步
?db2 為db3、db4的主從服務器
?
1.在db1、db2、db3、db4、db5上面安裝mmm
?
CentOS軟件倉庫默認是不含這些軟件的,必須要有epel這個包的支持。故我們必須先安裝epel:
wgethttp://centos.ustc.edu.cn/epel/5/x86_64/epel-release-5-4.noarch.rpm
rpm -Uvhepel-release-5-4.noarch.rpm
yum -y installmysql-mmm*
?
當出現如上圖情況時,需進行如下操作:
強制關閉yum進程
1 rm -rf/var/run/yum.pid?
2 service yum-updatesdrestart
?
?
?
2. 配置mmm代理和監控賬號的權限
在server1,server2,server3,server4上分別執行:
GRANT REPLICATION CLIENT ON *.* TO'mmm_monitor'@'192.168.10.%' IDENTIFIED BY'123456';
GRANT SUPER, REPLICATION CLIENT, PROCESS ON*.* TO 'mmm_agent'@'192.168.10.%'? ?IDENTIFIED BY '123456';
flush privileges;
復制代碼
防火墻開3306和9989端口
測試階段先關閉防火墻:service iptables stop
3. ?配置mysql-mmm
所有的配置選項都集合在了一個叫/etc/mysql-mmm/mmm_common.conf的單獨文件中,系統中所有主機的該文件內容都是一樣的,配置完后不要忘記了拷貝這個文件到所有的主機(包括監控主機)!,內容如下:
active_master_role? ???writer
?
<host default>
? ? cluster_interface??? ? eth1
? ? pid_path? ???? ?? ?? ? /var/run/mysql-mmm/mmm_agentd.pid
bin_path? ?? ???? ?? ? /usr/libexec/mysql-mmm/
#同步的帳號(這些要和前面設置的保持一致!)
? ? replication_user??? ???rep ?
? ? replication_password?? root? ?? ???#同步的密碼
? ? agent_user? ???? ?? ???mmm_agent? ?????#mmm-agent用戶名
? ? agent_password??? ?? ?123456?? ??? ???#mmm-agent用戶密碼
</host>
?
<host db1>
? ? ip? ???192.168.10.121? ?? ???#db1的ip
? ? mode? ? master
? ? peer? ? db2
</host>
?
<host db2>
? ? ip? ???192.168.10.122? ?? ???#db2的ip
? ? mode? ? master
? ? peer? ? db1
</host>
?
<host db3>
? ? ip? ???192.168.10.123? ?#從db3的ip
? ? mode? ? slave
</host>
?
<host db4>
? ? ip? ???192.168.10.124? ?#從db4的ip
? ? mode? ? slave
</host>
?
?
<role writer>
? ? hosts? ?db1, db2
? ? ips????192.168.10.105 ?? ???#設置寫入的虛擬IP
? ? mode? ? exclusive
</role>
?
<role reader>
? ? hosts? ?db1, db2,db3, db4
? ? ips????192.168.10.101, 192.168.10.102, 192.168.10.103, 192.168.10.104?? ???#設置讀取的虛擬IP
? ? mode? ? balanced
</role>
復制代碼
?
4. 在各個數據庫主機上我們需要編輯/etc/mysql-mmm/mmm_agent.conf文件,根據其他主機的不同更改db1的值(db2就將db1更改成db2…….):
include mmm_common.conf
this db1
?
5. 在監控主機上我們需要編輯/etc/mysql-mmm/mmm_mon.conf文件:
include mmm_common.conf
?
<monitor>
? ? ip? ???? ?? ?? ?? ?127.0.0.1
? ? pid_path? ???? ?? ?/var/run/mysql-mmm/mmm_mond.pid
? ? bin_path? ???? ?? ?/usr/libexec/mysql-mmm
? ? status_path??? ?? ?/var/lib/mysql-mmm/mmm_mond.status
? ? ping_ips? ???? ?? 192.168.10.121,192.168.10.122,192.168.10.123,192.168.10.124??#監控服務器ip
? ? auto_set_online????10
?
? ? # The kill_host_bin does notexist by default, though the monitor will
? ? # throw a warning about itmissing.??See the section 5.10 "Kill Host
? ? # Functionality" in thePDF documentation.
? ? #
? ? # kill_host_bin????/usr/libexec/mysql-mmm/monitor/kill_host
? ? #
</monitor>
?
<host default>
? ? monitor_user??? ???mmm_monitor? ?????#mmm_monitor用戶名
? ? monitor_password? ?123456? ?#mmm_monitor密碼
</host>
?
debug 0
復制代碼
?
6. 啟動MMM
啟動代理:(在數據庫服務器上server1、2、3、4)編輯/etc/default/mysql-mmm-agent來開啟:
ENABLED=1
復制代碼
7. 關閉防火墻
service iptables stop;
?
8. 啟動agent:
/etc/init.d/mysql-mmm-agent start
?添加到服務里面代碼如下:
1.???#?cd?/etc/init.d/??
2.???#?chkconfig?mysql-mmm-agent?on??
3.?????#?service?mysql-mmm-agent?start??
?
?
9. 啟動監控(在監控機上)
/etc/init.d/mysql-mmm-monitor start
?
1.0. 利用mmm_control監控mysql服務器狀態:
[root@server5 ~]# mmm_control show
?db1(192.168.10.121) master/ONLINE. Roles: reader(192.168.10.104)
?db2(192.168.10.122) master/ONLINE. Roles: reader(192.168.10.101), writer(192.168.10.105)
?db3(192.168.10.123) slave/ONLINE. Roles: reader(192.168.10.103)
?db4(192.168.10.124) slave/ONLINE. Roles: reader(192.168.10.102)復制代碼
?
?
?
?
總結
以上是生活随笔為你收集整理的mysql-mmm的搭建步骤的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 复大华韬会重走长征路,奏响新长征路上的盛
- 下一篇: 先锋机器人3(Pioneer3)的基础操