8.3. モニタリングのリソースを使ったイベント通知

Pacemaker クラスターはイベント駆動のシステムです。イベントとはリソースの障害や設定の変更を指します。ocf:pacemaker:ClusterMon リソースではクラスターの状態をモニタリングしクラスターイベントのたびに警告を発します。このリソースは標準の間隔で crm_mon をバックグラウンドで実行し、crm_mon の機能を使って email メッセージ (SMTP) か SNMP トラップを送信します。また、extra_options パラメータを使って外部プログラムを実行することもできます。
次の例では email 通知を送信する ClusterMon-SMTP と言う名前の ClusterMon リソースを設定しています。Pacemaker イベントが発生すると email が pacemaker@nodeX.example.com から pacemaker@example.com へ送信されます。メールホストには mail.example.com が使用されます。このリソースはクローンとして作成されるためクラスター内のすべてのノードで実行されます。
# pcs resource create ClusterMon-SMTP ClusterMon --clone user=root update=30 \ extra_options="-T pacemaker@example.com -F pacemaker@nodeX.example.com \ -P PACEMAKER -H mail.example.com" 
次の例では ClusterMon-SNMP と言う名前の ClusterMon リソースを設定しています。このリソースの場合は root SNMP ユーザーで SNMP トラップを snmphost.example.com ホストに送信します。クローンとして作成されるためクラスター内のすべてのノードで実行されます。
# pcs resource create ClusterMon-SNMP ClusterMon user=root update=30 \ extra_options="-S snmphost.example.com -C public" --clone 
次の例では ClusterMon-External と言う名前の ClusterMon リソースを設定しています。このリソースの場合はクラスター通知を受け取った場合に行う動作を判断する /usr/local/bin/example.sh プログラムを実行します。クローンとして作成されるためクラスター内のすべてのノードで実行されます。
# pcs resource create ClusterMon-External ClusterMon --clone user=root \ update=30 extra_options="-E /usr/local/bin/example.sh -e 192.168.12.1"