簡単なhttp HAクラスタkeepalivedの構成例


以下はkeepalivedの例です。master:192.168.200.11  運行サービスhttpd slaave:192.168.200.12運行サービスhttpd
仮想ip:192.168.200.16
global_defs {
   notification_email {
     [email protected]
     [email protected]
     [email protected]
   }
   notification_email_from [email protected]
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   router_id HTTPD
}

vrrp_script check_httpd{
 script "killall -0 httpd"
 interval 2
}
vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
 notify_master "/etc/keepalived/master.sh"
 notify_master "/etc/keepalived/backup.sh"
 notify_master "/etc/keepalived/fault.sh"
 track_script {
 check_httpd
}
    virtual_ipaddress {
        192.168.200.16/24 dev eth0
    
    }
}
vim master.sh
LOGFIELE=/var/log/keepalived-state.log
echo "[Master]" >> $LOGFILE
date +"%F %T" >>$LOGFILE

vim backup.sh
LOGFIELE=/var/log/keepalived-state.log
echo "[Backup]" >> $LOGFILE
date +"%F %T" >>$LOGFILE
vim master.sh
LOGFIELE=/var/log/keepalived-state.log
echo "[Fault]" >> $LOGFILE
date +"%F %T" >>$LOGFILE
 
上記のファイルをbackupノードにコピーして、二つのパラメータを変更します。stateをBACKUPに変更して、prority 80で結構です。
 
パラメータ詳細:
vrrp_instance VI1  :実例はvrrp_によるinstanceを表示として、後に実例の名称があります。
state:keepalivedのキャラクターを指定するためのもの(MASTER or BACKUP)
インターフェース:HA監視ネットワークを指定するためのインターフェース
vritual.router_id:仮想ルートの識別です。この識別は数字です。同じ例の中の識別は一意で、マスターとBACKUPの識別は一致します。
prority:ノード優先度を定義するために、数字が大きいほど優先度が高いことを示します。
advert_ポイント:MASTERとBACKUPホスト間の同期チェックの時間間隔を設定します。デフォルトはsです。
mcast_srcusip:マルチキャストパケットを送信するアドレスを設定するために、設定していない場合は、バインディングされたネットワークカードで対応するIPアドレスを設定します。
garp_マスターdelay:MASTER状態に切り替えてから延長してGrathuitous arp要求する時間を設定します。
nopreempt:利用可能なクラスタの非占有機能を設定します。高い利用可能なクラスタでは、マスタノードが死んだら、予備ノードはマスタノードになり、マスタノードになる。
障害が回復したら再度資源を奪い取って、現在運行しているノードから資源を自分のノードに戻します。もしこの項目を設置したら、メインノードが故障して回復したら、再度は発生しません。
資源を略奪して、現在の運行状態を維持します。既存のマスタノードが故障した後に、リソース転送が発生します。
preemtp_delay:占有の遅延時間を設定するために、単位はsです。このオプションは主に設備システムが再起動された後、ネットワークは一定の時間を経て正常に動作する必要があります。
この場合発生する時間間隔を設定するために、主従切替を行う必要はありません。この時間内に発生する故障は切り替えません。
virtual.ipad ddress:切り替え時に追加または削除するための関連ルート項目trockuを設定します。scrip:vrrp_を呼び出しますスクリプト
キラル-0信号は、プログラムの運転状態を監視します。もし、プロセスのクローズや他の異常が発見されたら、ステータスコード1に戻ります。
 
vrrp_についてscriptでの設定パラメータの説明:
vrrp_script chk_ポルノ script「killall-0 haproxy」 インターバル2  #モニタリングサイクル weight-2  # モニタリングに失敗した場合、現在のノードの優先度が2%減少します。 fail 2  #失敗回数は、要求が2回失敗した場合、このノードのリソースが故障したとみなして切り替えます。   クリス1  #モニタリングが成功したらすぐに成功します。成功を要求したら、このノードのリソースは正常に回復します。