RAの設定
RAを設定するコマンドは,
# crm configure primitive help usage: primitive <rsc> [<class>:[<provider>:]]<type> [params <param>=<value> [<param>=<value>...]] [meta <attribute>=<value> [<attribute>=<value>...]] [operations id_spec [op op_type [<attribute>=<value>...] ...]]
- <rsc>:リソースの名前を指定
- <class>:lsb, ocfまたはstonithを指定
(Pacemakerでは通常はocf仕様のRAを使用します) - <provider>:標準では,
heartbeatまたはpacemakerを指定 - <type>:RA名を指定
- <params>:RAの設定パラメータを指定
- <op>:start,monitor,stopなどのPacemakerからのコマンドに対する設定を指定
RAの情報は, crm raコマンドを使用することで多くの情報を得ることができます。
今回primitive設定するRAについて,
表3 primitive設定するRA
リソース | リソース名 | RA | 設定情報の表示コマンド |
---|---|---|---|
Apache | httpd | apache | crm ra info apache |
仮想IP | vip | IPaddr2 | crm ra info IPaddr2 |
ネットワーク監視 | ping | pingd | crm ra info ocf:pacemaker:pingd |
リソース名は,
Apacheを管理するためのRAは,
# crm configure primitive httpd ocf:heartbeat:apache params configfile="/etc/httpd/conf/httpd.conf" statusurl="http://localhost/" testregex="service" op monitor interval="10s"
クラスタの状態を確認します。
# crm_mon ============ Last updated: Wed Mar 23 10:00:20 2011 Stack: Heartbeat Current DC: pm02 (53a7615f-6b2f-4f71-9597-6b9a44e7f803) - partition with quorum Version: 1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a3 2 Nodes configured, unknown expected votes 1 Resources configured. ============ Online: [ pm02 pm01 ] httpd (ocf::heartbeat:apache): Started pm02
サーバpm02でApacheが動作していることがわかります。
次に,
# crm configure primitive vip ocf:heartbeat:IPaddr2 params ip="192.168.68.100" nic="eth0" cidr_netmask="24" op monitor interval="10s"
仮想IPとApacheは常に同じサーバで動作させるためgroup設定にします。このために,
# crm configure group web vip httpd
クラスタの状態を確認します。
# crm_mon ============ Last updated: Wed Mar 23 10:19:29 2011 Stack: Heartbeat Current DC: pm02 (53a7615f-6b2f-4f71-9597-6b9a44e7f803) - partition with quorum Version: 1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a3 2 Nodes configured, unknown expected votes 1 Resources configured. ============ Online: [ pm02 pm01 ] Resource Group: web vip (ocf::heartbeat:IPaddr2): Started pm02 httpd (ocf::heartbeat:apache): Started pm02
vipとhttpdが同じサーバで動作していることを確認してください。この例では,
Webブラウザで http:// と表示されるはずです。 Apacheでサービスを提供するためには, ネットワーク監視をするためのRAは, pingdの設定内容について補足します。 host_ クラスタの状態を確認します。default_ どちらのサーバの値も, ネットワーク監視に失敗したサーバではApacheは動作しないように設定します。このために, 最後に, すべてのサーバのリソースを停止します。このための簡単な方法は, 次にリソース設定を削除 第2回では, では, Linux-HA Japanプロジェクトで作ったこの新ロゴですが, 人気投票の結果, Linux-HA Japanプロジェクトでは応援キャラクターも作成し本家に提案しましたが,
本文では, crmのバッチモードを使う場合は次のようになります。 crm configure loadコマンドを使う場合は, 次のコマンドを実行します。
pm02 is on service.
ネットワーク監視
# crm configure primitive ping ocf:pacemaker:pingd params name="default_ping_set" host_list="192.168.68.2"multiplier="100" dampen="1" op monitor interval="10s"
# crm configure clone clone_ping ping
# crm_mon -A
============
Last updated: Wed Mar 23 20:43:18 2011
Stack: Heartbeat
Current DC: pm02 (53a7615f-6b2f-4f71-9597-6b9a44e7f803) - partition with quorum
Version: 1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a3
2 Nodes configured, unknown expected votes
2 Resources configured.
============
Online: [ pm02 pm01 ]
Resource Group: web
vip (ocf::heartbeat:IPaddr2): Started pm01
httpd (ocf::heartbeat:apache): Started pm01
Clone Set: clone_ping
Started: [ pm02 pm01 ]
Node Attributes:
* Node pm02:
+ default_ping_set : 100
+ pm01-eth1 : up
+ pm01-eth2 : up
* Node pm01:
+ default_ping_set : 100
+ pm02-eth1 : up
+ pm02-eth2 : up
# crm configure location web_location web rule -inf: not_defined default_ping_set or default_ping_set lt 100
リソース設定の初期化方法
# crm node standby pm01
# crm node standby pm02
# crm configure erase
# crm node online pm01
# crm node online pm02
まとめ
コラム: Pacemakerロゴあれこれ [その2]
付録:リソース設定手順の補足
# crm <<EOF
configure
property no-quorum-policy="ignore" stonith-enabled="false"
rsc_defaults resource-stickiness="INFINITY" migration-threshold="1"
primitive httpd ocf:heartbeat:apache params configfile="/etc/httpd/conf/httpd.conf"
statusurl="http://localhost/" testregex="service" op monitor interval="10s"
primitive vip ocf:heartbeat:IPaddr2 params ip="192.168.68.100" nic="eth0" cidr_netmask="24" op monitor interval="10s"
group web vip httpd
primitive ping ocf:pacemaker:pingd params name="default_ping_set" host_list="192.168.68.2" multiplier="100" dampen="1" op monitor interval="10s"
clone clone_ping ping
location web_location web rule -inf: not_defined default_ping_set or default_ping_set lt 100
commit
EOF
property no-quorum-policy="ignore" stonith-enabled="false"
rsc_defaults resource-stickiness="INFINITY" migration-threshold="1"
primitive httpd ocf:heartbeat:apache params configfile="/etc/httpd/conf/httpd.conf"
statusurl="http://localhost/" testregex="service" op monitor interval="10s"
primitive vip ocf:heartbeat:IPaddr2 params ip="192.168.68.100" nic="eth0" cidr_netmask="24" op monitor interval="10s"
group web vip httpd
primitive ping ocf:pacemaker:pingd params name="default_ping_set" host_list="192.168.68.2" multiplier="100" dampen="1" op monitor interval="10s"
clone clone_ping ping
location web_location web rule -inf: not_defined default_ping_set or default_ping_set lt 100
# crm configure load update apache.crm