OS は CentOS 5.7 でやってみる。インストールは、LINUX-HA JAPAN より、ローカルリポジトリ + yum を使用。
クラスタ制御部には、Corosync を使用することにする。
/etc/corosync/corosync.conf を作成。
# Please read the corosync.conf.5 manual page compatibility: whitetank aisexec { user: root group: root } service { name: pacemaker ver: 0 use_mgmtd: yes } totem { version: 2 secauth: off threads: 0 rrp_mode: active clear_node_high_bit: yes token: 4000 consensus: 10000 rrp_problem_count_timeout: 3000 interface { ringnumber: 0 bindnetaddr: 192.168.234.0 mcastaddr: 226.94.1.1 mcastport: 5405 ttl: 1 } } logging { fileline: on to_stderr: no to_logfile: yes to_syslog: no logfile: /var/log/cluster/corosync.log debug: off timestamp: on }bindnetaddr にはインターフェースの IP でなくネットワークアドレスを指定する。
ログをファイルに出力するように指定。
/etc/init.d/corosync start で起動して、crm_mon を実行して確認する。
Attempting connection to the cluster.........................帰ってこない・・・
一般ユーザで実行したからっぽい。グループに、haclient を追加したら帰ってきた。
============ Last updated: Sun Feb 12 00:54:09 2012 Stack: openais Current DC: localhost.localdomain - partition WITHOUT quorum Version: 1.0.11-1554a83db0d3c3e546cfd3aaff6af1184f79ee87 1 Nodes configured, 2 expected votes 0 Resources configured. ============ Online: [ localhost.localdomain ]
次に、 crm configure help でコマンドを確認しようとするも、
cibadmin not available, check your installationとなる、sudo でやってもダメだった。仕方ないので root になって行う。
# crm configure property no-quorum-policy="ignore" stonith-enabled="false" # crm configure rsc_defaults resource-stickiness="INFINITY" migration-threshold="1" # crm configure primitive vip ocf:heartbeat:IPaddr2 \ params ip="192.168.234.51" nic="eth0" cidr_netmask="24" op monitor interval="10s"eth0 に 192.168.234.51 の仮想 IP を作成する設定。
ifconfig で確認するも設定したアドレスが見当たらない。
eth0 にはそもそも実インターフェースの IP が割当たっているからだ。
ip addr show eth0 で確認できる。
inet 192.168.234.51/24 brd 192.168.234.255 scope global secondary eth0
最初、CentOS 6 を使用して普通に yum でインストールして開始したわけだが、こっちのほうが嵌まった。
Pacemaker が 1.1 になっており、クラスタ部に heartbeat が使えなかったり、corosync.conf の service の ver を 1 にしないとだったり、vip 指定時に nic に eth0:1 などを指定すると警告が出たりとかなり面倒だった。
結局、CentOS5.7 を使うことになり、落としたわけだが・・・