renay****@ybb*****
renay****@ybb*****
2011年 6月 21日 (火) 17:01:41 JST
上畑さん 山内です。 cibを忘れていました。 以下、抜粋します。(stonithなど考慮していませんのでご注意ください) <resources> <primitive id="vip1" class="ocf" type="IPaddr2" provider="heartbeat"> <instance_attributes id="vip1-instance_attributes"> <nvpair id="vip1-params1" name="nic" value="eth0" /> <nvpair id="vip1-params2" name="ip" value="192.168.40.77" /> <nvpair id="vip1-params3" name="cidr_netmask" value="24" /> </instance_attributes> <operations> <op name="start" interval="0" id="op-vip1-start" timeout="300s" on-fail="restart" /> <op name="monitor" interval="10s" id="op-vip1-monitor" timeout="60s" on-fail="restart"/> <op name="stop" interval="0" id="op-vip1-stop" timeout="300s" on-fail="block"/> </operations> </primitive> <primitive id="vip2" class="ocf" type="IPaddr2" provider="heartbeat"> <instance_attributes id="vip2-instance_attributes"> <nvpair id="vip2-params1" name="nic" value="eth0" /> <nvpair id="vip2-params2" name="ip" value="192.168.40.78" /> <nvpair id="vip2-params3" name="cidr_netmask" value="24" /> </instance_attributes> <operations> <op name="start" interval="0" id="op-vip2-start" timeout="300s" on-fail="restart" /> <op name="monitor" interval="10s" id="op-vip2-monitor" timeout="60s" on-fail="restart"/> <op name="stop" interval="0" id="op-vip2-stop" timeout="300s" on-fail="block"/> </operations> </primitive> <clone id="clnApache"> <primitive class="ocf" id="clnApache-instance" provider="heartbeat" type="apache"> <instance_attributes id="clnApache-instance_attributes"> <nvpair id="clnApache-params2" name="configfile" value="/etc/httpd/conf/httpd.conf" /> <nvpair id="clnApache-params3" name="port" value="80" /> <nvpair id="clnApache-params4" name="statusurl" value="http://localhost/" /> <nvpair id="clnApache-params5" name="httpd" value="/usr/sbin/httpd" /> <nvpair id="clnApache-params6" name="testregex" value="*" /> </instance_attributes> <operations> <op id="clnApache-start" interval="0" name="start" on-fail="restart" timeout="60s"/> <op id="clnApache-monitor" interval="10s" name="monitor" on-fail="restart" timeout="60s"/> <op id="clnApache-stop" interval="0" name="stop" on-fail="block" timeout="60s"/> </operations> </primitive> </clone> </resources> <constraints> <rsc_location id="rulvip1_location" rsc="vip1"> <rule id="rule_vip_1_rule1" score="200"> <expression attribute="#uname" id="expression.vip_1_rule1" operation="eq" value="srv01"/> </rule> <rule id="rule_vip_1_rule2" score="100"> <expression attribute="#uname" id="expression.vip_1_rule2" operation="eq" value="srv02"/> </rule> </rsc_location> <rsc_location id="rulevip2_location" rsc="vip2"> <rule id="rule_vip_2_rule1" score="100"> <expression attribute="#uname" id="expression.vip_2_rule1" operation="eq" value="srv01"/> </rule> <rule id="rule_vip_2_rule2" score="200"> <expression attribute="#uname" id="expression.vip_2_rule2" operation="eq" value="srv02"/> </rule> </rsc_location> <rsc_colocation id="rsc_colocation-vip1" rsc="vip1" score="INFINITY" with-rsc="clnApache"/> <rsc_colocation id="rsc_colocation-vip2" rsc="vip2" score="INFINITY" with-rsc="clnApache"/> <rsc_order first="clnApache" id="rsc_order-clnApache1" score="0" symmetrical="true" then="vip1"/> <rsc_order first="clnApache" id="rsc_order-clnApache2" score="0" symmetrical="true" then="vip2"/> </constraints> 以上です。 --- On Tue, 2011/6/21, renay****@ybb***** <renay****@ybb*****> wrote: > 上畑さん > > こんにちは、メイトリックスの山内です。 > > Failback設定は考慮していませんが、VIPを引き継いで両apcheがサービスを継続するということなので、基本的に両apacheは同じ設定が動いているということでいけば、 > > 1)apacheをclone > 2)両vipをprimitive > > で設定可能と思います。 > #ただし、リソースの起動順は、apache->vipの順で制約と依存をかけています。 > #pingdの依存もかけていません。 > > ●起動後 > ============ > Last updated: Wed Jun 22 01:42:07 2011 > Stack: Heartbeat > Current DC: srv02 (dc6ef1be-dcd0-4fdb-af8b-9a46a4b1428d) - partition with quorum > Version: 1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b > 2 Nodes configured, unknown expected votes > 3 Resources configured. > ============ > > Online: [ srv01 srv02 ] > > vip1 (ocf::heartbeat:IPaddr2): Started srv01 > vip2 (ocf::heartbeat:IPaddr2): Started srv02 > Clone Set: clnApache > Started: [ srv01 srv02 ] > > ●srv01のapacheをapache_ctlで停止してモニターエラーからFO後 > ============ > Last updated: Wed Jun 22 01:42:34 2011 > Stack: Heartbeat > Current DC: srv02 (dc6ef1be-dcd0-4fdb-af8b-9a46a4b1428d) - partition with quorum > Version: 1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b > 2 Nodes configured, unknown expected votes > 3 Resources configured. > ============ > > Online: [ srv01 srv02 ] > > vip1 (ocf::heartbeat:IPaddr2): Started srv02 > vip2 (ocf::heartbeat:IPaddr2): Started srv02 > Clone Set: clnApache > Started: [ srv02 ] > Stopped: [ clnApache-instance:0 ] > > Migration summary: > * Node srv02: > * Node srv01: > clnApache-instance:0: migration-threshold=1 fail-count=1 > > Failed actions: > clnApache-instance:0_monitor_10000 (node=srv01, call=6, rc=7, status=complete): not running > > ●srv01をモニターエラーを起こさずに停止してFO > ============ > Last updated: Wed Jun 22 01:48:28 2011 > Stack: Heartbeat > Current DC: srv02 (dc6ef1be-dcd0-4fdb-af8b-9a46a4b1428d) - partition with quorum > Version: 1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b > 2 Nodes configured, unknown expected votes > 3 Resources configured. > ============ > > Online: [ srv02 ] > OFFLINE: [ srv01 ] > > vip1 (ocf::heartbeat:IPaddr2): Started srv02 > vip2 (ocf::heartbeat:IPaddr2): Started srv02 > Clone Set: clnApache > Started: [ srv02 ] > Stopped: [ clnApache-instance:0 ] > > Migration summary: > * Node srv02: > > #上記のように動いてはいますが、十分な動作確認が必要かと思います。 > > > その他、vipとApacheをそれぞれpritiveに設定してみる方法、vipとApacheをgroupのままでcolocated=falseに設定してみる方法などあるかも知れません。 > > また、確認したバージョンは少し古いバージョンで、色々とclone周りなどにも問題がある為、最新のバージョンの組み合わせを利用されることを望みます。 > > 以上、よろしく御願いいたします。 > > > > > --- On Sat, 2011/6/18, uehat****@first***** <uehat****@first*****> wrote: > > > > > すみません。 > > > > 2台のHA構成で片方にApacheとVIP、もう片方にもApacheとVIPが動いている場合に > > VIPだけフェイルオーバーさせる事はできるのでしょうか > > (ただしApacheの停止時にもVIPをフェイルオーバさせる) > > ※()の中の条件がなければ Apacheをprimitiveに設定しなければいいだけなので > > す > > が。。。 > > > > 一応下の設定で、ほぼ上記の動作が実現可能なのですが、フェイルオーバー時に > > もう片方のApacheが起動しているノードにApacheとVIPの両方が移動するため、 > > Apacheに関しては、fail-countが発生してしまいます。 > > > > また、フェイルバック時に一旦、フェイルオーバ側のApacheが停止してからフェ > > イルバックしてしまう。 > > > > ---------------------------------------------- > > # STONITHの無効 > > property $id="cib-bootstrap-options" stonith-enabled="false" no-quorum-policy="ignore" > > > > # Fail-backは有効に > > #rsc_defaults $id="rsc-options" resource-stickiness="-INFINITY" > > > > # Apache(node1)設定 > > primitive apache_node1 ocf:heartbeat:apache \ > > params configfile="/etc/httpd/conf/httpd.conf" port="80" statusurl="http://localhost/" httpd="/usr/sbin/httpd" testregex="*" \ > > op start interval="0s" timeout="40s" on-fail="restart" \ > > op monitor interval="10s" timeout="60s" on-fail="restart" \ > > op stop interval="0s" timeout="60s" on-fail="block" > > > > # Apache(node2)設定 > > primitive apache_node2 ocf:heartbeat:apache \ > > params configfile="/etc/httpd/conf/httpd.conf" port="80" statusurl="http://localhost/" httpd="/usr/sbin/httpd" testregex="*" \ > > op start interval="0s" timeout="40s" on-fail="restart" \ > > op monitor interval="10s" timeout="60s" on-fail="restart" \ > > op stop interval="0s" timeout="60s" on-fail="block" > > > > # VIP(node1-vip)設定 > > primitive vip1 ocf:heartbeat:IPaddr2 \ > > params ip="192.168.0.101" nic="eth0" cidr_netmask="24" \ > > op start interval="0s" timeout="90s" on-fail="restart" \ > > op monitor interval="10s" timeout="60s" on-fail="restart" \ > > op stop interval="0s" timeout="100s" on-fail="block" > > > > # VIP(node2-vip)設定 > > primitive vip2 ocf:heartbeat:IPaddr2 \ > > params ip="192.168.0.102" nic="eth0" cidr_netmask="24" \ > > op start interval="0s" timeout="90s" on-fail="restart" \ > > op monitor interval="10s" timeout="60s" on-fail="restart" \ > > op stop interval="0s" timeout="100s" on-fail="block" > > > > # apacheとvipをグループ化する(Apache -> Vip) > > group Group_rs1 apache_node1 vip1 > > group Group_rs2 apache_node2 vip2 > > > > # Gateway-PING監視 > > primitive ping_gw ocf:pacemaker:pingd \ > > params name="default_ping_set_gw" host_list="192.168.0.254" dampen="0" \ > > op start interval="0" timeout="90s" on-fail="restart" \ > > op monitor interval="10s" timeout="60s" on-fail="restart" \ > > op stop interval="0" timeout="100s" on-fail="block" > > > > # NODE全てでPING監視 > > clone Clone_ping ping_gw \ > > meta master-max="1" master-node-max="1" \ > > clone-max="2" clone-node-max="1" \ > > notify="true" > > > > # pingが切れたときにGroup_rs1を移動 > > location Location_vip1 Group_rs1 \ > > rule 200: #uname eq node1 \ > > rule 100: #uname eq node2 \ > > rule -inf: default_ping_set_gw eq 0 > > > > # pingが切れたときにGroup_rs2を移動 > > location Location_vip2 Group_rs2 \ > > rule 200: #uname eq node2 \ > > rule 100: #uname eq node1 \ > > rule -inf: default_ping_set_gw eq 0 > > ---------------------------------------------- > > > > _______________________________________________ > > Linux-ha-japan mailing list > > Linux****@lists***** > > http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan > > > > _______________________________________________ > Linux-ha-japan mailing list > Linux****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan >