[Linux-ha-jp] 多対1のフェイルオーバ動作について

アーカイブの一覧に戻る

Shinjiro Hamaguchi hamag****@agile*****
2016年 9月 13日 (火) 11:10:27 JST


山内さん


ご回答いただき、誠にありがとうございます。
ご教示いただきましたUtilizationを調査、検証してみます。

>#colocationの-inf制約を利用することで、うまく行きそうな気もしますが・・たぶん、うまく行かないと思います。
こちらで以下の2パターンを検証しましたが、どちらともうまく行きませんでした。。。

パターン1 (組み合わせ)
colocation -inf: groupA groupB
colocation -inf: groupA groupC
colocation -inf: groupA groupD
colocation -inf: groupA groupE
colocation -inf: groupB groupC
colocation -inf: groupB groupD
colocation -inf: groupB groupE
colocation -inf: groupC groupD
colocation -inf: groupC groupE
colocation -inf: groupD groupE

パターン2(順列)
colocation -inf: groupA groupB
colocation -inf: groupA groupC
colocation -inf: groupA groupD
colocation -inf: groupA groupE
colocation -inf: groupB groupA
colocation -inf: groupB groupC
colocation -inf: groupB groupD
colocation -inf: groupB groupE
colocation -inf: groupC groupA
colocation -inf: groupC groupB
colocation -inf: groupC groupD
colocation -inf: groupC groupE
colocation -inf: groupD groupA
colocation -inf: groupD groupB
colocation -inf: groupD groupC
colocation -inf: groupD groupE

2016-09-10 8:08 GMT+09:00 <renay****@ybb*****>:

> 濱口さん
>
> おはようございます。山内です。
>
> Utilizationを利用して、ノードとリソースに重みを付けて、制御することになると思います。
>  * http://clusterlabs.org/doc/en-US/Pacemaker/1.1-pcs/html/
> Pacemaker_Explained/ch11.html
>
> 私は、Utilizationの利用の詳細はあまり詳しくないので、有識者の方のコメントを待つか、実際に試されることをお勧めいたします。
>
> #colocationの-inf制約を利用することで、うまく行きそうな気もしますが・・たぶん、うまく行かないと思います。
>
> 以上です。
>
>
>
> ----- Original Message -----
> >From: Shinjiro Hamaguchi <hamag****@agile*****>
> >To: linux****@lists*****
> >Date: 2016/9/9, Fri 12:58
> >Subject: [Linux-ha-jp] 多対1のフェイルオーバ動作について
> >
> >
> >お世話になります。
> >濱口と申します。
> >
> >
> >
> >
> >pacemaker + cmanで5対1の冗長化をしようとしているのですが
> >うまくいっておらず、質問させていただきました。
> >
> >
> >
> >
> >【問題】
> >フェイルオーバ時に同一のリソースが2つのノードで動作してしまう
> >
> >
> >
> >【環境】
> >OS: CentOS 6.8
> >pacemaker:1.1.14-8.el6_8.1
> >cman:3.0.12.1-78.el6
> >
> >
> >
> >
> >【構成】
> >ノード:pm1.local - pm6.local
> >
> >リソースグループ:groupA - groupE
> >
> >
> >※リソースグループと当該リソースを活性化するノードの対応は以 下の通り。
> >
> >
> >
> >groupA, pm1.local
> >groupB, pm2.local
> >groupC, pm3.local
> >groupD, pm4.local
> >groupE, pm5.local
> >pm6.local (groupA - groupEのフェイルオーバ先)
> >
> >
> >
> >
> >【問題発生の手順】
> >1. pm1.localから順にpm6. localまでのノードをクラスターに参加させる
> >2. pm1.localのリソースを故障させる(例:service asterisk stop)
> >3. pm2.localのリソースを故障させる(例:service asterisk stop)
> >
> >
> >
> >上記手順の1でそれぞれのノードで意図した通りのリソースが起動 します。
> >手順の2でgroupAがpm1.localからpm6.localへフェイルオーバします。
> >手順の3でgroupBがpm2.localからpm6.locaへフェイルオーバします。
> >
> >
> >
> >
> >【期待する動作】
> >手順の3でgroupBがpm6.localへフェイルオーバせず(すでにgroupAが動作しているため)、故障した状態でpm2.localに残る
> >
> >
> >
> >
> >【/etc/cluster/cluster.conf 】
> ><cluster config_version="15" name="clusterpm666">
> >  <fence_daemon/>
> >  <clusternodes>
> >    <clusternode name="pm1.local" nodeid="1">
> >      <fence>
> >        <method name="pcmk-redirect">
> >          <device name="pcmk" port="pm1.local"/>
> >        </method>
> >      </fence>
> >    </clusternode>
> >
> >    <clusternode name="pm2.local" nodeid="2">
> >      <fence>
> >        <method name="pcmk-redirect">
> >          <device name="pcmk" port="pm2.local"/>
> >        </method>
> >      </fence>
> >    </clusternode>
> >
> >    <clusternode name="pm3.local" nodeid="3">
> >      <fence>
> >        <method name="pcmk-redirect">
> >          <device name="pcmk" port="pm3.local"/>
> >        </method>
> >      </fence>
> >    </clusternode>
> >
> >    <clusternode name="pm4.local" nodeid="4">
> >      <fence>
> >        <method name="pcmk-redirect">
> >          <device name="pcmk" port="pm4.local"/>
> >        </method>
> >      </fence>
> >    </clusternode>
> >
> >    <clusternode name="pm5.local" nodeid="5">
> >      <fence>
> >        <method name="pcmk-redirect">
> >          <device name="pcmk" port="pm5.local"/>
> >        </method>
> >      </fence>
> >    </clusternode>
> >
> >    <clusternode name="pm6.local" nodeid="6">
> >      <fence>
> >        <method name="pcmk-redirect">
> >          <device name="pcmk" port="pm6.local"/>
> >        </method>
> >      </fence>
> >    </clusternode>
> >
> >  </clusternodes>
> >  <cman/>
> >  <fencedevices>
> >    <fencedevice agent="fence_pcmk" name="pcmk"/>
> >  </fencedevices>
> >  <rm>
> >    <failoverdomains/>
> >    <resources/>
> >  </rm>
> ></cluster>
> >
> >
> >
> >
> >【crm configure showの出力】
> >node pm1.local \
> >attributes
> >node pm2.local \
> >attributes
> >node pm3.local \
> >attributes
> >node pm4.local \
> >attributes
> >node pm5.local \
> >attributes
> >node pm6.local \
> >attributes
> >primitive asteriskA lsb:asterisk \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive asteriskB lsb:asterisk \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive asteriskC lsb:asterisk \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive asteriskD lsb:asterisk \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive asteriskE lsb:asterisk \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive changeSrcIpA ocf:pacemaker:changeSrcIp \
> >params vip=192.168.12.215 mask=23 device=eth0 \
> >op start interval=0s timeout=0 \
> >op monitor interval=10s \
> >op stop interval=0s on-fail=ignore
> >primitive changeSrcIpB ocf:pacemaker:changeSrcIp \
> >params vip=192.168.12.216 mask=23 device=eth0 \
> >op start interval=0s timeout=0 \
> >op monitor interval=10s \
> >op stop interval=0s on-fail=ignore
> >primitive changeSrcIpC ocf:pacemaker:changeSrcIp \
> >params vip=192.168.12.217 mask=23 device=eth0 \
> >op start interval=0s timeout=0 \
> >op monitor interval=10s \
> >op stop interval=0s on-fail=ignore
> >primitive changeSrcIpD ocf:pacemaker:changeSrcIp \
> >params vip=192.168.12.218 mask=23 device=eth0 \
> >op start interval=0s timeout=0 \
> >op monitor interval=10s \
> >op stop interval=0s on-fail=ignore
> >primitive changeSrcIpE ocf:pacemaker:changeSrcIp \
> >params vip=192.168.12.219 mask=23 device=eth0 \
> >op start interval=0s timeout=0 \
> >op monitor interval=10s \
> >op stop interval=0s on-fail=ignore
> >primitive cronA lsb:crond \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive cronB lsb:crond \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive cronC lsb:crond \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive cronD lsb:crond \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive cronE lsb:crond \
> >params \
> >meta migration-threshold=2 \
> >op monitor interval=20s start-delay=5s timeout=15s \
> >op stop interval=0s on-fail=ignore
> >primitive sipsakA ocf:pacemaker:sipsak \
> >params sipuri="sip:201****@192*****" \
> >meta migration-threshold=2 \
> >op start interval=0s \
> >op monitor interval=20s start-delay=10s timeout=10s \
> >op stop interval=0s on-fail=fence
> >primitive sipsakB ocf:pacemaker:sipsak \
> >params sipuri="sip:201****@192*****" \
> >meta migration-threshold=2 \
> >op start interval=0s \
> >op monitor interval=20s start-delay=10s timeout=10s \
> >op stop interval=0s on-fail=fence
> >primitive sipsakC ocf:pacemaker:sipsak \
> >params sipuri="sip:201****@192*****" \
> >meta migration-threshold=2 \
> >op start interval=0s \
> >op monitor interval=20s start-delay=10s timeout=10s \
> >op stop interval=0s on-fail=fence
> >primitive sipsakD ocf:pacemaker:sipsak \
> >params sipuri="sip:201****@192*****" \
> >meta migration-threshold=2 \
> >op start interval=0s \
> >op monitor interval=20s start-delay=10s timeout=10s \
> >op stop interval=0s on-fail=fence
> >primitive sipsakE ocf:pacemaker:sipsak \
> >params sipuri="sip:201****@192*****" \
> >meta migration-threshold=2 \
> >op start interval=0s \
> >op monitor interval=20s start-delay=10s timeout=10s \
> >op stop interval=0s on-fail=fence
> >primitive vip-local-checkA VIPcheck \
> >params target_ip=192.168.12.215 count=1 wait=5 \
> >op start interval=0s on-fail=restart timeout=60s \
> >op monitor interval=10s timeout=60s \
> >op stop interval=0s on-fail=ignore timeout=60s
> >primitive vip-local-checkB VIPcheck \
> >params target_ip=192.168.12.216 count=1 wait=5 \
> >op start interval=0s on-fail=restart timeout=60s \
> >op monitor interval=10s timeout=60s \
> >op stop interval=0s on-fail=ignore timeout=60s
> >primitive vip-local-checkC VIPcheck \
> >params target_ip=192.168.12.217 count=1 wait=5 \
> >op start interval=0s on-fail=restart timeout=60s \
> >op monitor interval=10s timeout=60s \
> >op stop interval=0s on-fail=ignore timeout=60s
> >primitive vip-local-checkD VIPcheck \
> >params target_ip=192.168.12.218 count=1 wait=5 \
> >op start interval=0s on-fail=restart timeout=60s \
> >op monitor interval=10s timeout=60s \
> >op stop interval=0s on-fail=ignore timeout=60s
> >primitive vip-local-checkE VIPcheck \
> >params target_ip=192.168.12.219 count=1 wait=5 \
> >op start interval=0s on-fail=restart timeout=60s \
> >op monitor interval=10s timeout=60s \
> >op stop interval=0s on-fail=ignore timeout=60s
> >primitive vip-localA IPaddr2 \
> >params ip=192.168.12.215 cidr_netmask=23 nic=eth0 iflabel=0
> broadcast=192.168.13.255 \
> >op start interval=0s timeout=20s \
> >op monitor interval=5s timeout=20s \
> >op stop interval=0s on-fail=ignore
> >primitive vip-localB IPaddr2 \
> >params ip=192.168.12.216 cidr_netmask=23 nic=eth0 iflabel=0
> broadcast=192.168.13.255 \
> >op start interval=0s timeout=20s \
> >op monitor interval=5s timeout=20s \
> >op stop interval=0s on-fail=ignore
> >primitive vip-localC IPaddr2 \
> >params ip=192.168.12.217 cidr_netmask=23 nic=eth0 iflabel=0
> broadcast=192.168.13.255 \
> >op start interval=0s timeout=20s \
> >op monitor interval=5s timeout=20s \
> >op stop interval=0s on-fail=ignore
> >primitive vip-localD IPaddr2 \
> >params ip=192.168.12.218 cidr_netmask=23 nic=eth0 iflabel=0
> broadcast=192.168.13.255 \
> >op start interval=0s timeout=20s \
> >op monitor interval=5s timeout=20s \
> >op stop interval=0s on-fail=ignore
> >primitive vip-localE IPaddr2 \
> >params ip=192.168.12.219 cidr_netmask=23 nic=eth0 iflabel=0
> broadcast=192.168.13.255 \
> >op start interval=0s timeout=20s \
> >op monitor interval=5s timeout=20s \
> >op stop interval=0s on-fail=ignore
> >group groupA vip-local-checkA vip-localA changeSrcIpA cronA asteriskA
> sipsakA
> >group groupB vip-local-checkB vip-localB changeSrcIpB cronB asteriskB
> sipsakB
> >group groupC vip-local-checkC vip-localC changeSrcIpC cronC asteriskC
> sipsakC
> >group groupD vip-local-checkD vip-localD changeSrcIpD cronD asteriskD
> sipsakD
> >group groupE vip-local-checkE vip-localE changeSrcIpE cronE asteriskE
> sipsakE
> >location location-groupA-pm1.local-INFINITY groupA inf: pm1.local
> >location location-groupA-pm2.local--INFINITY groupA
> resource-discovery=never -inf: pm2.local
> >location location-groupA-pm3.local--INFINITY groupA
> resource-discovery=never -inf: pm3.local
> >location location-groupA-pm4.local--INFINITY groupA
> resource-discovery=never -inf: pm4.local
> >location location-groupA-pm5.local--INFINITY groupA
> resource-discovery=never -inf: pm5.local
> >location location-groupA-pm6.local-100 groupA 100: pm6.local
> >location location-groupB-pm1.local--INFINITY groupB
> resource-discovery=never -inf: pm1.local
> >location location-groupB-pm2.local-INFINITY groupB inf: pm2.local
> >location location-groupB-pm3.local--INFINITY groupB
> resource-discovery=never -inf: pm3.local
> >location location-groupB-pm4.local--INFINITY groupB
> resource-discovery=never -inf: pm4.local
> >location location-groupB-pm5.local--INFINITY groupB
> resource-discovery=never -inf: pm5.local
> >location location-groupB-pm6.local-100 groupB 100: pm6.local
> >location location-groupC-pm1.local--INFINITY groupC
> resource-discovery=never -inf: pm1.local
> >location location-groupC-pm2.local--INFINITY groupC
> resource-discovery=never -inf: pm2.local
> >location location-groupC-pm3.local-INFINITY groupC inf: pm3.local
> >location location-groupC-pm4.local--INFINITY groupC
> resource-discovery=never -inf: pm4.local
> >location location-groupC-pm5.local--INFINITY groupC
> resource-discovery=never -inf: pm5.local
> >location location-groupC-pm6.local-100 groupC 100: pm6.local
> >location location-groupD-pm1.local--INFINITY groupD
> resource-discovery=never -inf: pm1.local
> >location location-groupD-pm2.local--INFINITY groupD
> resource-discovery=never -inf: pm2.local
> >location location-groupD-pm3.local--INFINITY groupD
> resource-discovery=never -inf: pm3.local
> >location location-groupD-pm4.local-INFINITY groupD inf: pm4.local
> >location location-groupD-pm5.local--INFINITY groupD
> resource-discovery=never -inf: pm5.local
> >location location-groupD-pm6.local-100 groupD 100: pm6.local
> >location location-groupE-pm1.local--INFINITY groupE
> resource-discovery=never -inf: pm1.local
> >location location-groupE-pm2.local--INFINITY groupE
> resource-discovery=never -inf: pm2.local
> >location location-groupE-pm3.local--INFINITY groupE
> resource-discovery=never -inf: pm3.local
> >location location-groupE-pm4.local--INFINITY groupE
> resource-discovery=never -inf: pm4.local
> >location location-groupE-pm5.local-INFINITY groupE inf: pm5.local
> >location location-groupE-pm6.local-100 groupE 100: pm6.local
> >property cib-bootstrap-options: \
> >have-watchdog=false \
> >dc-version=1.1.14-8.el6_8.1-70404b0 \
> >cluster-infrastructure=cman \
> >stonith-enabled=false \
> >no-quorum-policy=ignore \
> >maintenance-mode=false \
> >startup-fencing=false \
> >dc-deadtime=20s \
> >last-lrm-refresh=1473360195
> >rsc_defaults rsc_defaults-options: \
> >migration-threshold=1 \
> >resource-stickiness=INFINITY
> >
> >
> >
> >
> >長文で誠に恐縮ですが、 何か情報ございましたらご教示いただきたく存じます。
> >何卒、よろしくお願いいたします。
> >
> >
> >_______________________________________________
> >Linux-ha-japan mailing list
> >Linux****@lists*****
> >http://lists.osdn.me/mailman/listinfo/linux-ha-japan
> >
> >
> >
>
> _______________________________________________
> Linux-ha-japan mailing list
> Linux****@lists*****
> http://lists.osdn.me/mailman/listinfo/linux-ha-japan
>
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
ダウンロード 



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