[Linux-ha-jp] Pacemaker/Corosync で snmptrap でリソース障害を通知

Zurück zum Archiv-Index

ngyuki ngyuk****@gmail*****
2015年 6月 23日 (火) 16:31:30 JST


LinuxHA Japan の RHEL/CentOS 7 リポジトリの Pacemaker/Corosync で構築したクラスタで
crm_mon コマンドを使ってリソース障害を snmptrap で通知しようとしています。

Pacemaker/Corosync は次の通りにセットアップしています。

    http://qiita.com/ngyuki/items/3c652b1e746d85d130c7

crm コマンドでのリソース定義は次のようにしています。

    primitive res1 ocf:pacemaker:Dummy \
      op monitor interval="10" timeout="20" on-fail="restart" \
      op start interval="0" timeout="20" \
      op stop interval="0" timeout="20"

    primitive res2 ocf:pacemaker:Dummy \
      op monitor interval="10" timeout="20" on-fail="restart" \
      op start interval="0" timeout="20" \
      op stop interval="0" timeout="20"

    primitive res3 ocf:pacemaker:Dummy \
      op monitor interval="10" timeout="20" on-fail="restart" \
      op start interval="0" timeout="20" \
      op stop interval="0" timeout="20"

    group g_res res1 res2 res3

次のように snmptrapd をインストールし、
snmptrap がメールで転送されることは確認しています。

    yum -y install net-snmp net-snmp-utils net-snmp-perl

    cat<<EOS> /etc/snmp/snmptrapd.conf
    disableAuthorization yes
    traphandle default /usr/bin/traptoemail root
    EOS

    cat <<EOS>/etc/snmp/snmp.conf
    mibs ALL
    EOS

次のように corosync-notifyd を用いて、
ノードの障害をトラップで通知することはできました。

    cat <<EOS> /etc/sysconfig/corosync-notifyd
    OPTIONS="-s -m 127.0.0.1"
    EOS
    systemctl restart corosync-notifyd.service

続いて、crm_mon を次のように実行して、リソース障害を
snmptrap で通知しようとしてみたのですが、

    crm_mon --snmp-traps 127.0.0.1 --snmp-community public --daemonize

res1 などのリソースを故障させてもトラップが送信されませんでした・・・

同様に、以下のようにメール通知や外部コマンドの実行?も試してみましたが
やはり通知させることができませんでした。

    crm_mon --mail-to root --daemonize
    crm_mon --external-agent /tmp/agent.sh --daemonize

以前 Pacemaker/Heartbeat で同じことを試した時には上記の手順で出来たように思うのですが・・
この手順に誤りがある、あるいは、Pacemaker/Corosync だとなにか別の手順が必要なのでしょうか?



Linux-ha-japan メーリングリストの案内
Zurück zum Archiv-Index