mysql mha佈署參考

#mysql mha佈署

1. ip規劃
1主2從,1個mha監控,1個mycat ,1個虛擬IP地址(再預留1個)

2.安裝依賴包

#先安裝yum擴展包
RHEL/CentOS 7 64 Bit
 ## RHEL/CentOS 7 64-Bit ##下邊這個鏈接不上
# wget http://dl.fedoraproject.org/pub/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm
# rpm -ivh epel-release-7-0.2.noarch.rpm

centos7擴展源:
 RHEL/CentOS 7:
    # yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm


#管理監控節點:
yum  -y install perl-Config-Tiny.noarch perl-Time-HiRes.x86_64 \
perl-Parallel-ForkManager perl-Log-Dispatch-Perl.noarch perl-DBD-MySQL ncftp

yum install  perl-Log-Dispatch-Perl  ==>yum install perl-Log-Dispatch   解決?


#數據庫節點(1主2從)
yum -y install perl-DBD-MySQL ncftp perl-DBI  #node包運行需要

yum -y install libaio*  #mysql運行依賴庫文件


#mycat需要安裝jdk8的環境 和其它環境配置

3.#創建ssh互信協議,4臺機器上執行

ssh-keygen

ssh-copy-id -i root@ip地址


4.佈署1主多從的環境mysql數據庫(3個數據庫機器上執行)
轉數據庫操作

#無法做主從同步時要留意 防火牆有無關閉:systemctl  stop firewalld

5.安裝node安裝包(除mycat外的4臺主機)
mha4mysql-node-0.57-0.57-0.3l7.noarch.rpm

rpm -ivh xxx


6.mha監控主機配置佈署
#安裝manager安裝包(mha監控主機)
rpm -ivh xxx

mkdir -p /etc/mha
mkdir -p  /home/mysql_mha/

#配置
#/etc/mha/mysql_mha.cnf

[server default]
user=mha
password=123456
manager_workdir=/home/mysql_mha
manager_log=/home/mysql_mha/manager.log
remote_workdir=/home/mysql_mha
ssh_user=root
repl_user=repl
repl_password=123456
ping_interval=1
master_binlog_dir=/application/mysql56/data
master_ip_failover_script=/usr/bin/mha_master_ip_failover
secondary_check_script=/usr/bin/masterha_secondary_check -s ip1 -s ip2 -s ip3
[server1]
hostname=ip1
candidate_master=1
[server2]
hostname=ip2
candidate_master=1
[server3]
hostname=ip3
no_master=1

#chmod 755
chmod 755 /usr/bin/mha_master_ip_failover

#一主二從上的此配置文件將此行註釋,否則vip切換時會因爲報錯而無法切換
/etc/sudoers
Defaults    requiretty  #註釋掉表示不需要控制終端。

#配置虛擬IP,要留意下實際用到的ethxxx
ifconfig enp0s3:1 xxx/24


#將mysql的bin目錄變量加入到/etc/profile文件中
或者通過類似下邊操作添加到:
ln -s /application/mysql56/bin/mysqlbinlog /usr/bin/mysqlbinlog
ln -s  /application/mysql56/bin/mysql   /usr/bin/mysql

#環境配置驗證
masterha_check_ssh --conf=/etc/mha/mysql_mha.cnf
masterha_check_repl --conf=/etc/mha/mysql_mha.cnf


#驗證通過後
#mha啓動運行
nohup masterha_manager --conf=/etc/mha/mysql_mha.cnf &

#高可用驗證
1. 主庫down後,從庫是否自動連到備用的主庫上
2. 將原來的down掉的主庫修復問題後根據日誌重連到新的主庫上作爲新的從庫
grep -i "All other slaves should start replication from here" /home/mysql_mha/manager.log 


#注意事項:
1.每次故障後會停止,如果切換成功,重新開啓manager服務時要刪除mysql_mha.failover.complete文件,否則後續故障轉移時會報錯
2.vip無法切換時要留意此文件/etc/sudoers
 

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