やる夫がCLUSTERPROを操作するようです。
CLUSTERPRO モニタ状況
| # /usr/sbin/clpstat -m ===================== MONITOR RESOURCE STATUS ===================== Cluster : cluster server0 : indigo01 *server1 : indigo02 ←こちらが主系で活躍中 Monitor0 [Postgresexecmonitor : Normal] -------------------------------------------------------------------- server0 [o] : Offline server1 [o] : Online ←indigo02でDBが生きてるかの監視稼動中 Monitor1 [Webipwmonitor : Caution] -------------------------------------------------------------------- server0 [o] : Suspend server1 [o] : Suspend Monitor2 [eth0monitor : Normal] -------------------------------------------------------------------- server0 [o] : Online server1 [o] : Online Monitor3 [eth1monitor : Normal] -------------------------------------------------------------------- server0 [o] : Online server1 [o] : Online Monitor4 [failipwmonitor : Caution] -------------------------------------------------------------------- server0 [o] : Suspend server1 [o] : Suspend Monitor5 [sdb2rawwmonitor : Normal] -------------------------------------------------------------------- server0 [o] : Online server1 [o] : Online Monitor6 [sdc2rawwmonitor : Normal] -------------------------------------------------------------------- server0 [o] : Online server1 [o] : Online Monitor7 [sdd2rawwmonitor : Normal] -------------------------------------------------------------------- server0 [o] : Online server1 [o] : Online Monitor8 [userw : Normal] -------------------------------------------------------------------- server0 [o] : Online server1 [o] : Online ===================================================================== |
CLUSTERPRO FIP表示
| # /usr/sbin/clpstat --rsc ======================= CLUSTER INFORMATION ======================= [Resource0 : WebManagerFIP1] Type : fip Comment : floating ip resource IP Address : 192.168.2.20 [Resource0 : Postgresexec] Type : exec Comment : Start Script Path : start.sh Stop Script Path : stop.sh [Resource1 : PostgresexecMON] Type : exec Comment : Start Script Path : start.sh Stop Script Path : stop.sh [Resource2 : fip1] Type : fip Comment : IP Address : 192.168.2.19<--これ! [Resource3 : sdb3disk] Type : disk Comment : Device Name : /dev/sdb3 File System : ext3 Mount Point : /service/data0 [Resource4 : sdc3disk] Type : disk Comment : Device Name : /dev/sdc3 File System : ext3 Mount Point : /service/data1 [Resource5 : sdd3disk] Type : disk Comment : Device Name : /dev/sdd3 File System : ext3 Mount Point : /service/data2 ===================================================================== |
Monitor0 監視スクリプト
下記ディレクトリ配下にある、シェルスクリプトで、PostgreSQL、MySQLの上げ下げを行っています。
| # cat /opt/nec/clusterpro/scripts/failover1/PostgresexecMON/start.sh # cat /opt/nec/clusterpro/scripts/failover1/MySQLexecMON/start.sh |
その中で「clp_mysql50mon」などの監視プロセスを下記のように立ち上げている。
| # clp_mysql50mon mysqlwatch -d mysql -a 192.168.2.20 |
clp_mysql50monはmysqlwatchというテーブルを”mysql”というDBに対して作成および更新をかけるプロセスで、そのプロセスがDBにアクセス出来なかった場合落下するので、その落下が監視項目にひっかかるという具合。下記にその例を示す。
| CLUSTERPRO: <type: rm><event: 1> Monitor MySQLexecmonitor start. CLUSTERPRO: <type: mysql50mon><event: 1> The clp_mysql50mon has started watching MySQL. [ID:mysqlwatch] CLUSTERPRO: <type: mysql50mon><event: 0> MySQL:Lost connection to MySQL server during query CLUSTERPRO: <type: mysql50mon><event: 21> Failed to connect to the database 'vote'. [ID:mysqlwatch] CLUSTERPRO: <type: mysql50mon><event: 6> The clp_mysql50mon will terminate. [ID:mysqlwatch] CLUSTERPRO: <type: rm><event: 9> Monitor MySQLexecmonitor failed. (1 : Process does not exist. (pid=23986)) CLUSTERPRO: <type: rm><event: 2> Monitor MySQLexecmonitor stop. CLUSTERPRO: <type: rm><event: 14> failover1 was failover for failure in MySQLexecmonitor. |
この場合はstart.sh経由でclp_mysql50monがスタートするが、MySQL:user:rootが何らかの理由でDB[vote]にアクセスできずにclp_mysql50monプロセスが落下。そのモニタ項目であるMonitor MySQLexecmonitorが検知されfailoverが始まる。
これを改善するには、mysql> SHOW GRANTS FOR DB名;などでアクセス権限を確認して、間違いがあれば修正する。
CLUSTERPRO 稼動ログ
こんな感じで引っ掛ければよいです。
| # tail -f /var/log/messagesgrep |grep CLUSTERPRO |
CLUSTERPRO 監視停止+起動
監視停止 ※両サーバで実施すること
| # clpmonctrl -s # clpstat |
- <server>が”Online”と”Normal”であることを確認。
- <group>が”Online”であることを確認。
- <monitor>が”Caution”であることを確認。
| # clpstat -m |
- モニタリソースが”Suspend”になっている筈。
監視起動 ※両サーバで実施すること
| # clpmonctrl -r # clpstat |
- <server>が”Online”と”Normal”であることを確認。
- <group>が”Online”であることを確認。
- <monitor>が”Normal”であることを確認。
| # clpstat -m |
- モニタリソースが”Online”になっている筈。
おまけ
リファレンスガイド
http://www.ace.comp.nec.co.jp/CLUSTERPRO/clp/linux/document/x10_l.html
| 固定リンク
「アプリケーション」カテゴリの記事
- [sendmail] やる夫がsendmailで転送設定をするようです。(2007.12.27)
- やる夫がpostfix-2.1.6-1をインストールするようです。(2007.12.20)
- やる夫がログ管理をするようです。(2008.01.09)
- やる夫がSELinuxを無効化にするようです。(2008.01.09)
- やる夫がTrac接続エラーに直面しているようです。(2008.01.21)

コメント