高可用性マスターキープアライブ+ MySQLのレプリケーションから

インストールのキープアライブ

 

インストールは、プラグインを依存します。

yumを-yのgccのopenssl-develののPOPT-develのインストール

wgetの- Qのhttp:// www.keepalived.org /ソフトウェア/ keepalivedの- 1.213 .tar.gzの タール- zxvf keepalivedの- 1.213 .tar.gzの CDはkeepalivedの- 1.213 /のconfigure &&作る&& make installを CPを/ USR /ローカル/など/ rc.dの/ init.dディレクトリ/ keepalivedの/など/rc.dの/ init.dディレクトリ/ CP / USR /ローカル/など/のsysconfig / keepalivedの/などの/のsysconfig / MKDIR /など/ keepalivedの CP / USR /ローカル/など/ keepalivedの/ keepalived.conf /など/ keepalivedの/ CP / USR /ローカル/ sbinに/ keepalivedの/USR / sbinに/ chkconfigを- keepalivedの追加 のchkconfigを- レベル345は、上のkeepalivedの

 

マスターホスト上で設定

 

CAT /など/ keepalivedの/ keepalived.conf 

vrrp_script chk_mysql_port {#は、MySQLサービスが実行され検出します。このようなプロセスとして多くの方法、スクリプトのテストなどがあります
    スクリプト「/ OPT / ここで#スクリプトchk_mysql.shは、」監視することにより、
    インターバル2                    ごとに2秒後にテストした#スクリプトの実行間隔、
    重量- 5                     #結果のスクリプトの優先順位変化検出故障(非スクリプト戻り0)、プライオリティ- 。5 
    フォール2                     #2の連続した検出障害は真の故障を判定するために考えられています。優先順位は、重量削減されます(1 - 255)
    ライズ1                     成功した場合には#1の検出に成功してもします。しかし、優先順位の変更はありません
} 
{vrrp_instanceのVI_1を
    マスタ状態
    ens33#IP指定された仮想ネットワーク・インタフェースのインタフェースは、必ずしもifconfigコマンドはeth0と判断によるものではない
    virtual_router_id 51である#ルータ識別は、マスタとバックアップが一貫していなければならない
    優先順位100 位の優先順位を定義し、より多く、より高い優先順位、同じ次vrrp_instanceは、MASTERの優先順位は、BACKUPの優先度よりも高くなければなりません。このような障害の後MASTER回復、あなたは再びVIPリソース取り戻すことができ
    advert_int 1 
    認証{ 
        AUTH_TYPE PASS 
        AUTH_PASS 123456 
    } 
    virtual_ipaddress { 
        192.16811.25 
    } 
    track_script { 
       chk_mysql_portを
    } 
}

 

スレーブに設定されました

/など/ keepalivedの/ keepalived.conf 

vrrp_script chk_mysql_port {      
    スクリプト" / OPT / chk_mysql.sh" 
    インターバル2 
    重量- 5 
    落下2 
    立ち上がり1 
} 
VI_1 {vrrp_instance 
    状態BACKUPの
    インターフェースens33 
    virtual_router_idが51 
    優先99 
    advert_int 1 
    認証{ 
        AUTH_TYPEパス
        auth_pass 123456 
    }
    virtual_ipaddress { 
        192.16811.25 
    } 
    track_script { 
       chk_mysql_port 
    } 
}

検出スクリプトの設定

 

/ OPT / chk_mysql.sh 

#!/ binに/ バッシュ
カウンタ= $(netstatの- NA |はgrep "LISTEN" | grepを" 3306 " | WC - L)
 なら [ "$ {カウンタ}" -eq 0 ] 
、次いで 
   ## /など/ init.dディレクトリ/ keepalivedの停止
サービスが停止keepalivedの
エコー"実行中..." >> / OPT / keepalivedのを-実行しています-情報。ログ 睡眠5000 Fiの

 

#マスターとスレーブ上で実行
sudoの/など/ init.dディレクトリ/ keepalivedのスタート

サービスは// keepalivedの启动開始keepalivedの

サービスkeepalivedのストップ//キープアライブ停止

おすすめ

転載: www.cnblogs.com/dkws/p/12098058.html