追蹤
NEIL's_學而時習之x不學無術~私藏IT技術經驗分享部落
關於部落格
NEIL. Cheng....寫作只是為了日後工作之備忘操作參考

本部落格文章撰寫前進邁向第五年(since 2009 ~至今)仍繼續推進分享IT學習!!About Windows/Linux Server,Virtualization


分享網誌: 由於,本人預先完成LAB後,才補上撰寫文章與截圖,若發現文圖對照說明有誤..本人將盡快校正,也請不吝指教! Thanks!

  • 163898

    累積人氣

  • 99

    今日人氣

    0

    追蹤人氣

MySQL Master to Master by KEYNES(MMM_Cluster部署(下)


1)資料庫權限配置,由於我們於前章 Master to Master 已配置相關SLAVE 複寫帳號等

     (
這裡就不再多說)
 
     以下是本人DB2(mail) : 權限配置: 新增一個rep_monitor  資料庫帳號,

     
等會擔任Moniter (g1) 會派上用場
 
GRANT ALL PRIVILEGES on *.* to 'rep_monitor'@'192.168.0.188' identified by 'RepMonitor';
    
GRANT ALL PRIVILEGES on *.* to 'rep_agent'@'192.168.0.111' identified by 'RepAgent';  


#指配rep_agent給nodea
 
GRANT replication slave on *.* to 'replication'@'%' identified by 'c30819';    

 
 #讓所有node之間可以具slave 與replication 身份
 
以下是本人DB1(nodea) : 權限配置: 新增一個rep_monitor  資料庫帳號,等會

擔任Moniter (g1) 會派上用場
 
GRANT ALL PRIVILEGES on *.* to 'rep_monitor'@'192.168.0.188 identified by 'RepMonitor';

GRANT ALL PRIVILEGES on *.* to

 
'rep_agent'@'192.168.0.195' identified by 'RepAgent'; 

#指配rep_agent給mail GRANT replication slave on *.* to 'replication'@'%' identified by 'c30819';    

#讓所有node之間可以具slave 與replication 身份
 
 
     檢視DB2(mail) 是否Master to Master 運行已ok
 
   
 
      檢視DB1(nodea) 是否Master to Master 運行已ok
    
 
(2) 接下來我們必須安裝mmm架構所需相關Perl mod
 
     請在 nodea,mail > 下指令安裝需要使用的Perl mod
 
     
cpan Algorithm::Diff DBI DBD::mysql File::stat Log::Dispatch Log::

Log4perl Mail::Send Net::ARP Proc::Daemon Time::HiRes
 
      請在 g1 > 下指令安裝需要使用的Perl mod
 
  cpan Algorithm::Diff Class::Singleton DBI DBD::mysql File::Basename File::stat File::Temp Log::Dispatch Log::Log4perl Mail::
Send Net::Ping Proc::Daemon Thread::Queue Time::HiRes

 

(3) 接下來我們必須在 nodea,mail,g1 這三台主機上安裝 Mysql-mmm 安裝套件,並依以下安裝
 
     shell> wget  http://mysql-mmm.org/_media/:mmm2:mysql-mmm-2.2.1.tar.gz   

                 #目前最新版本
 
     shell> tar   zxvf mysql-mmm-2.2.1
 
     shell> make install
 
(4.) D1_mmm_client 與D2_mmm_client 編輯

       (
幾乎相同在此僅修改D1_MMM_Client,DB2留給讀者去設定)
 
       vi /etc/mysql-mmm/mmm_common.conf            # mmm_client 設定檔
 
       主要修改參數有
 
  
       <host default>
       
        cluster_interface               eth0
       
        pid_path                                /var/run/mmm_agentd.pid
       
         bin_path                                /usr/lib/mysql-mmm/
       
        replication_user        replication
        
        replication_password    c30819  # 若您之前設置帳號密碼修改,請在此修正replication帳密
        
        agent_user              rep_agent
       
       agent_password       RepAgent    # 若您之前設置帳號密碼修改,請在此修正agent帳密
      
       </host>
     
 
      <host db1>
        ip                                      192.168.0.111        #設置第一台DB設置
        mode                                   master
        peer                                     db2
      </host>
 
       <host db2>
        ip                                       192.168.0.195     #設置第二台DB設置
        mode                                  master
        peer                                     db1
       </host>
 
    <role writer>                                                                     #設置writer設置
        hosts                                   db1, db2
        ips                                     192.168.0.171
        mode                                    exclusive
       </role>
    
    <role reader>
        hosts                                   db1, db2                                    #設置reader設置
         ips                                     192.168.0.172,192.168.0.173
         mode                                    balanced
      </role>                                              

      
*修改組態檔完成後,請至DB2_(mail)完成上述修改如下

   

     修改nodea & mail組態檔ok後我們必須啟動此兩台mmm_client

     /etc/init.d/mysql-mmm-agent  start

 

     (5.) g1_mmm_moniter 編輯         vi /etc/mysql-mmm/mmm_mon.conf      

       
#將ping_ips 修正為監控nodes (db1,db2 的ip) ,並修正Moniter 帳號密碼後儲存檔案

        vi /etc/mysql-mmm/mmm_common.conf   

       #
此檔案設置與我們上述設置nodea (db1)大同小異,請將其訂正ok

      重啟mmm_moniter

      /etc/init.d/mysql-mmm-monitor  restart
    

(6
.) mmm_control show

       shell> mmm_control show    #查看目前個節點健康狀況,

                   mmm_control set_online db1     #初次建立mmm結點我們必須將其推上線

                   mmm_control set_online db2  

    

(7.) 容錯移轉測試: 
 
      
目前我們可以看到,Reder,Writer 角色初步掛在DB1,當DB1掛點時

       將移轉至DB2
以下我們故意將DB1停止運作,當DB1 FILE 時將移轉到DB2運行
  

          接者我們將D1 重新啟動, Awaiting Rocovery 中
 

        DB1又重為崗位了

               如何設置開機自動啟用MMM_MONITER 與MMM_CLIENT

                shell> cd  /etc/init.d

                shell> chkconfig --add mysql-mmm-moniter

                shell> chkconfig --add  mysql-mmm-agent

                接者我們就可以用 chkconfig mysql-mmm-moniter on  開機自動啟動該程式

                 或是

               ntsysv  將其勾選即可完成開機自動啟動

                  參考資料

                  http://www.xuan-lu.net/blog/index_586.html   

 

 

 

相簿設定
標籤設定
相簿狀態