MHA安裝及等效性配置,mha配置

來源:互聯網
上載者:User

MHA安裝及等效性配置,mha配置

    MHA由MHA節點(可以理解為子節點)及MHA管理節點2部分組成。因此對於MHA的安裝,相應的也分為2個部分,即安裝MHA節點,安裝MHA管理節點。本文基於CentOS 5.9 64bit簡要描述了MHA的安裝,同時也描述了在配置MHA時需要完成的等效性配置。供大家參考。

 

1、MHA的組成
MHA consists of MHA Manager and MHA Node packages. MHA Manager runs on a manager server, and MHA Node runs on each MySQL server. MHA Node programs do not run always, but are invoked from MHA manager programs when needed (at configuration check, failover, etc). Both MHA Manager and MHA Node are written in Perl.

 

2、安裝MHA Node
MHA Node has scripts and dependent perl modules that do the following.
    save_binary_logs: Saving and copying dead master's binary logs
    apply_diff_relay_logs: Identifying differential relay log events and applying all necessary log events
    purge_relay_logs: Purging relay log files
You need to install MHA Node to all MySQL servers (both master and slave). You also need to install MHA Node on a management server because MHA Manager modules internally depend on MHA Node modules. MHA Manager internally connects to managed MySQL servers via SSH and executes MHA Node scripts. MHA Node does not depend on any external Perl modules except DBD::mysql so you should be able to install easily.

 

###本次安裝環境
# cat /etc/issue
CentOS release 5.9 (Final)
Kernel \r on an \m

 

###本次的示範環境
# more /etc/hosts
192.168.1.6  dbsrv1          #DB master
192.168.1.7  dbsrv2          #DB slave1
192.168.1.8  dbsrv3          #DB slave2
192.168.1.82 mysql-manager   #DB manager node

 

###以下安裝包,建議node和manger都安裝
# yum install perl-DBD-MySQL
# yum install perl-Config-Tiny
# yum install perl-Log-Dispatch
# yum install perl-Parallel-ForkManager

 

###如果yum時相關相關包時,無法擷取到,建議配置epel後再安裝,需要注意對應的相關版本號碼。
# wget http://mirrors.ustc.edu.cn/fedora/epel/5/x86_64/epel-release-5-4.noarch.rpm
# rpm -Uvh epel-release-5-4.noarch.rpm

 

###以下安裝包從網路上搜集整理,大家可根據情形自行決定是否安裝
# yum  -y install perl-Config-IniFiles  ncftp perl-Params-Validate  perl-CPAN perl-Test-Mock-LWP.noarch \
> perl-LWP-Authen-Negotiate.noarch perl-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker

# ls -hltr
total 172K
-rw-r--r-- 1 root root 112K Dec  5 15:46 mha4mysql-manager-0.56.tar.gz
-rw-r--r-- 1 root root  49K Dec  5 15:46 mha4mysql-node-0.56.tar.gz

# tar -xvf mha4mysql-node-0.56.tar.gz
# cd mha4mysql-node-0.56
# perl Makefile.PL         
# make && make install

 

###驗證安裝後的幾個檔案
[root@dbsrv1 bin]# ls apply_diff_relay_logs save_binary_logs filter_mysqlbinlog purge_relay_logs
apply_diff_relay_logs  filter_mysqlbinlog  purge_relay_logs  save_binary_logs

 

3、安裝MHA Manager
MHA Manager has administrative command line programs such as masterha_manager, masterha_master_switch, etc, and dependent Perl modules. MHA Manager depends on the following Perl modules. You need to install them before installing MHA Manager. Do not forget to install MHA Node.
  MHA Node package
  DBD::mysql
  Config::Tiny
  Log::Dispatch
  Parallel::ForkManager
  Time::HiRes (included from Perl v5.7.3)

###以下部分為管理節點上的安裝,注,管理節點也要安裝MHA Node,此處省略
# tar -xvf mha4mysql-manager-0.56.tar.gz
# perl Makefile.PL
# make && make install

# ls /usr/bin/mast*
/usr/bin/masterha_check_repl    /usr/bin/masterha_conf_host       /usr/bin/masterha_master_switch
/usr/bin/masterha_check_ssh     /usr/bin/masterha_manager         /usr/bin/masterha_secondary_check
/usr/bin/masterha_check_status  /usr/bin/masterha_master_monitor  /usr/bin/masterha_stop

 

4、配置等效性
###為各節點配置hosts檔案
# for i in  6 7 8;do scp /etc/hosts 192.168.1.$i:/etc/;done

[root@mysql-manager #]$ whoami
root
###配置等效性
[root@mysql-manager ~]# ssh-keygen
[root@mysql-manager ~]# ls -a ./.ssh/
.  ..  id_rsa  id_rsa.pub
[root@mysql-manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.6
[root@mysql-manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.7
[root@mysql-manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.8

###使用上面的方法在其餘的幾個節點如法炮製後驗證等效性
[root@dbsrv2 ~]# ssh dbsrv1 date;ssh dbsrv2 date;ssh dbsrv3 date; ssh mysql-manager date;

###在管理節點端使用MHA命令驗證等效性
[root@mysql-manager ~]# masterha_check_ssh --conf=/etc/app1.cnf
Mon Feb 16 15:12:43 2015 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Mon Feb 16 15:12:43 2015 - [info] Reading application default configuration from /etc/app1.cnf..
Mon Feb 16 15:12:43 2015 - [info] Reading server configuration from /etc/app1.cnf..
Mon Feb 16 15:12:43 2015 - [info] Starting SSH connection tests..
Mon Feb 16 15:12:45 2015 - [debug]
Mon Feb 16 15:12:43 2015 - [debug]  Connecting via SSH from mysql@192.168.1.6(192.168.1.6:22) to mysql@192.168.1.7(192.168.1.7:22)..
Mon Feb 16 15:12:44 2015 - [debug]   ok.
Mon Feb 16 15:12:44 2015 - [debug]  Connecting via SSH from mysql@192.168.1.6(192.168.1.6:22) to mysql@192.168.1.8(192.168.1.8:22)..
Mon Feb 16 15:12:44 2015 - [debug]   ok.
Mon Feb 16 15:12:45 2015 - [debug]
Mon Feb 16 15:12:44 2015 - [debug]  Connecting via SSH from mysql@192.168.1.7(192.168.1.7:22) to mysql@192.168.1.6(192.168.1.6:22)..
Mon Feb 16 15:12:44 2015 - [debug]   ok.
Mon Feb 16 15:12:44 2015 - [debug]  Connecting via SSH from mysql@192.168.1.7(192.168.1.7:22) to mysql@192.168.1.8(192.168.1.8:22)..
Mon Feb 16 15:12:44 2015 - [debug]   ok.
Mon Feb 16 15:12:45 2015 - [debug]
Mon Feb 16 15:12:44 2015 - [debug]  Connecting via SSH from mysql@192.168.1.8(192.168.1.8:22) to mysql@192.168.1.6(192.168.1.6:22)..
Mon Feb 16 15:12:45 2015 - [debug]   ok.
Mon Feb 16 15:12:45 2015 - [debug]  Connecting via SSH from mysql@192.168.1.8(192.168.1.8:22) to mysql@192.168.1.7(192.168.1.7:22)..
Mon Feb 16 15:12:45 2015 - [debug]   ok.
Mon Feb 16 15:12:45 2015 - [info] All SSH connection tests passed successfully.

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.