基於corosync軟件,製作mysql高可用共享存儲

                基於corosync軟件,製作mysql高可用共享存儲
       首先我們來了解一下這款軟件,它是從openAIS裏脫下來的新產品,與pacemaker結合後,成爲十分強大的高可用集羣管理器。

       要安裝的時候,還要有pacemaker,安裝後,還要對其進行配置!我們以兩個節點爲例來討論
      首先;準備兩臺已經安裝好數據庫的服務器,且mysql服務不能開機自動啓動,如果測試可以正常啓動了,將其關閉就可以了,
      其ip地址假設爲172.16.20.11,172.16.20.12爲例,配置雙機互信,節點名與hostname一致,並寫進配置文件內。在另一臺172.26.20.1上建立起nfs服務,
      首先創建一個邏輯卷,將其掛載載至/mydata目錄下(一般mysql掛在這個目錄),那把這個目錄給共享出去,命令如下:
#vim /etc/exports
#/mydata  172.16.20.0/16(rw)
然後,安裝corosync軟件,此軟件有許多所依賴的文件包,所以要提前下載,用yum來
安裝比較妥當,安裝完成後,還需要做一下配置:
vim /etc/corosync/corosync.conf
compatibility: whitetank

totem {
        version: 2
        secauth: on
        threads: 0
        interface {
                ringnumber: 0
                bindnetaddr: 172.16.0.0
                mcastaddr: 226.94.20.1
                mcastport: 5405
        }
}

logging {
        fileline: off
        to_stderr: no
        to_logfile: yes
        to_syslog: no
        logfile: /var/log/cluster/corosync.log
        debug: off
        timestamp: on
        logger_subsys {
                subsys: AMF
                debug: off
        }
}

amf {
        mode: disabled
}

service {
         ver: 0
         name: pacemaker
         use_mgmtd: yes
}

aisexec {
        user:  root
        group: root
}

 


接着生成authkey文件,使用命令:
corosync-keygen
然後再將生成的authkey文件複製到另一臺服務器上即可
之後再在兩個節點上建立日誌文件的目錄,
mkdir /var/log/cluster,以便和配置文件相對應,
這樣就可以在兩個節點上分別啓動corosync
稍等片刻之後就可以試着查看節點是否在線了。查看命令:
crm_mon  或者 crm-overview都可以啦!
在線後,就可以用crm 進入配置集羣服務了
爲了可以正常工作,首先需要配置一些屬性信息:
#property stonith-enabled=false
#property no-quorum-policy=ignore
#verity
#commit
還可以配置其有關粘性值:
rsc_defaults resource-stickiness=88(只要大於零,就表示願意在此節點停留)
配置後可:
以使用命令shou進行查看
下面要配置資源信息:
在配置模式下,用primitive 來實現,具體如下:

primitive IP ocf:heartbeat:IPaddr params ip=172.16.20.17(此地址爲vip)
primitive mynfs ocf:heartbeat:Filesystem params device="172.16.20.1:/mmydata" directory "/mydata" fstype="nfs" op start timeout=60s op stop timeout=60s(配置文件系統資源,並且還有時間參數,且不能小於60,否則將出錯)
primitive mysql lsb:mysqld (添加mysql資源)
由於mysql要掛載在nfs文件系統上,所以,要定義排列選項:
colocation mysql_and_mydfs inf: mynfs mysql
還有要讓mysql最後啓動,所以,定義order:
order mysql_after_mynfs mandatory: mynfs mysql
order mysql_after_IP mandatory: mysql IP
verity
commit
最後就可以測試查看這個高可用集羣了!

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