ZABBIXで回復処置と復旧処置を別にする
うーん、自分でタイトルを書いていてわけが分からない。
いまウェブで障害が発生するとこういう処置を一つのアクションで済ましています。
- Apacheの設定ファイルを編集して、反応しなくなったZopeインスタンスを戦力から外してリクエストが行かないようにする。
- Zopeインスタンスを再起動する。
- テスト用のフロントエンドを利用して、再起動したZopeインスタンスが元気に動作していることを確認する。
- Apacheの設定ファイルを編集して、復旧したZopeインスタンスをへリクエストが行くようにする。
1〜3が回復処理。4が復旧処理ですね。
ところが、再起動をしても復旧しないことがあり、このアクションがなんどもなんども動作することがあるんです。
そうするとApacheがなんどもなんども再起動してしまい、あまりおいしくないことが起きるみたい。
そこで1〜3を「障害」のイベントが発生した場合のアクションとして無限回実施するようにし、4を「正常」イベントのアクションとして実施。
これなら復旧がうまくいかなくても影響があるのはZopeインスタンスのみ。しかも「正常」になるまでは戦力外なのでフロントエンドには影響がない。
うまくいきますように。