[Linux-ha-jp] heartbeat NIC1つでの設定について

アーカイブの一覧に戻る

Keisuke Noda ksuke****@gmail*****
2011年 9月 29日 (木) 17:15:52 JST


お世話になります。野田と申します。
現在、heartbeat+MySQLでHAクラスターを構築しております。
NIC1つでのheartbeatの設定について、質問させていただきます。

まず構成は下記になります。
サーバー構成:稼働1(node01)/待機1(node02)
OS:CentOS 5.5
heartbeat:3.0.3
pacemaker:1.0.11
NIC:1つ(1本でheartbeat線、サービス用、ping用全て同じ線)

環境の制限によりNICが1つしか使えませんが
少しでも可用性を高めるために今回構築しております。

質問ですが
障害テストで通信断を発生させた際、
location制約設定により、停止する挙動は確認できたのですが
復旧時にスプリットブレインが発生してしまいました。
その対策として、ping監視にて、
一旦deadと判断されたホストでは、自動復旧させない
設定ができれば、スプリットブレインは発生しないと考えています。
何かよい設定はありますでしょうか?
STONISHの設定は、復旧までの時間を考えるとできれば避けたいと考えております。
(そもそもNIC1つだと無意味?)

何か間違いなどありましたら、ご指摘いただけると助かります。

また、同様の構成で運用されている方がいらっしゃいましたら
何か良い設定や運用上の注意点などアドバイスいただけますと幸いです。

よろしくお願いいたします。

下記、各設定になります。
-------------------------------
■ha.cfの内容(node01)

crm yes
debugfile /var/log/ha-debug
logfile /var/log/ha-log
keepalive 2
deadtime 30
warntime 10
initdead 60
udpport 694
auto_failback off
ucast eth1 IPADDRESS-node02
node node01
node node02
uuidfrom nodename
deadping 20


■crm configure showの結果

primitive clnPrmPingd ocf:pacemaker:pingd \
       params name="default_ping_set" host_list="IPADDRESS-gw"
multiplier="100" dampen="0" attempts="3" timeout="5s" \
       op start interval="0" timeout="60s" on-fail="restart" \
       op monitor interval="20s" timeout="60s" on-fail="stop" \
       op stop interval="0" timeout="60s" on-fail="ignore"
primitive ipaddr ocf:heartbeat:IPaddr \
       params ip="IPADDRESS-vip" cidr_netmask="24" nic="eth1" \
       op monitor interval="10" timeout="20s" on-fail="restart" \
       op start interval="0" timeout="120s" on-fail="stop"
group group01 ipaddr
clone clnPingd clnPrmPingd
location location-01 group01 \
       rule $id="location-01-rule" 200: #uname eq node01 \
       rule $id="location-01-rule-0" 100: #uname eq node02 \
       rule $id="location-01-rule-1" -inf: not_defined default_ping_set
or default_ping_set lt 100
property $id="cib-bootstrap-options" \
       dc-version="1.0.11-1554a83db0d3c3e546cfd3aaff6af1184f79ee87" \
       cluster-infrastructure="Heartbeat" \
       stonith-enabled="false" \
       default-resource-stickiness="INFINITY" \
       no-quorum-policy="ignore" \
       last-lrm-refresh="1317022188"
rsc_defaults $id="rsc-options" \
       migration-threshold="1"


■復旧時の各ノードでのコマンド、状態

node01:active
node02:standby

○障害発生
node01>ifconfig eth1 down
=> deadtime秒でnode02が障害検知し、node02で上がる

○復旧
node01>/etc/init.d/network restart
=> node01が上がろうとして、スプリットブレイン状態
-------------------------------

--
Keisuke Noda
ksuke****@gmail*****





Linux-ha-japan メーリングリストの案内
アーカイブの一覧に戻る