メンテナンス中の障害が解決しているにもかかわらずメンテナンス期間後に通知される

メンテナンス中の障害が解決しているにもかかわらずメンテナンス期間後に通知されるため、困っております。
原因をつかもうと、以下の検証を実施してみました。
利用しているバージョンは、3.4.11。

気になっていた項目は以下の3つ。
 ①データ収集あり/なし(メンテナンス設定画面のところ)
 ②メンテナンスの状態 期間外 メンテナンス(アクションの実行条件のところ)
 ③メンテナンス期間内の実行内容保留(アクションの実行内容のところのチェックボックス)

これらをチェックリストで全パターン確認。
       ①    ②    ③    結果
 パターン1 あり   あり   あり   通知される
 パターン2 あり   あり   なし   通知される   
 パターン3 あり   なし   あり   通知される
 パターン4 あり   なし   なし   通知される
 パターン5 なし   あり   あり   通知される
 パターン6 なし   あり   なし   通知される
 パターン7 なし   なし   あり   通知される
 パターン8 なし   なし   なし   通知される

全滅でした。どの設定でもメンテナンス中に意図的に起こしている障害が、メンテナンス終了後に
通知されてしまいます。

どなたかアドバイスをお願いいたします。

【Zabbixの設定情報】
 <アクション設定>
  A メンテナンスの状態 期間外 メンテナンス
  B トリガーの深刻度 <> 情報

 <実行内容の詳細>
  ユーザーグループにメッセージを送信 SES
  実行条件 設定なし

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

「解決しているにもかかわらず」とのことですが、メンテナンス期
間の終了時点で、対象のトリガーの状態が正常になっているかを確
認してください。

サービスが起動しているとか値は正常な状態になっているはずとい
う判断基準ではなく、トリガーの状態が正常と判断されていなけれ
ば障害の通知はされてしまうと思います。

ユーザー mameshiba の写真

返信ありがとうございます。

具体例をお話しさせていただきますと、とある1時間をメンテナンス期間とし、
その期間中にスケジュールされた再起動アクションが実行されます。
再起動は、1分程度です。

その後、メンテナンス期間が終了すると、Zabbixからマシンが再起動されたこと
を示す、アラート(メール)が通知されます。

再起動が終わって10分以上は確実に経過しているので、トリガーの状態は正常
になっていると判断していましたが、そうでないとなると、逆になぜトリガーの
状態が正常になるのにこんなに時間がかかるのでしょうか。再起動が完了した時
点でトリガーが正常に戻ってくれないと困るのですが…。何か設定があるのでし
ょうか?

トリガーの様子を見ながら、再度検証してみようと思います。

ユーザー mameshiba の写真

わかった気がします、おっしゃる通りですね。
まとめますので少々お待ちください。

ユーザー mameshiba の写真

再度検証。こんどはメンテナンス期間が終わる5分前には再起動が終わっている状態にして検証した。
検証条件は同じ。

 ①データ収集あり/なし(メンテナンス設定画面のところ)
 ②メンテナンスの状態 期間外 メンテナンス(アクションの実行条件のところ)
 ③メンテナンス期間内の実行内容保留(アクションの実行内容のところのチェックボックス)

これらをチェックリストで全パターン確認。
       ①    ②    ③    結果
 パターン1 あり   あり   あり   通知されなかった
 パターン2 あり   あり   なし   通知されなかった   
 パターン3 あり   なし   あり   通知されなかった
 パターン4 あり   なし   なし   メンテナンス中に通知された
 パターン5 なし   あり   あり   通知されなかった
 パターン6 なし   あり   なし   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン7 なし   なし   あり   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン8 なし   なし   なし   メンテナンス期間が終わった後にイベントが生成され、通知された

という結果になりました。

ユーザー mameshiba の写真

ついでに、メンテナンス中に障害が発生し、メンテナンス期間終了後に障害が継続していた場合は通知が欲しいので、
追加検証を実施。

<要望>
・メンテナンス中に障害が発生&解決した件については通知してほしくない。
・メンテナンス中に障害が発生し、メンテナンス後に障害が継続している(解決していない)ものは、通知してほしい。

上記要望を満たすのは、再検証の結果から、パターン1,2,3,5のいずれかなので、それらのパターン内で検証。
<検証条件>
・メンテナンス中に障害を発生させる。
・その障害を解決させずにメンテ終了させる。

 ①データ収集あり/なし(メンテナンス設定画面のところ)
 ②メンテナンスの状態 期間外 メンテナンス(アクションの実行条件のところ)
 ③メンテナンス期間内の実行内容保留(アクションの実行内容のところのチェックボックス)

       ①    ②    ③    結果
 パターン1 あり   あり   あり   通知されなかった ⇒要望満たさず。
 パターン2 あり   あり   なし   通知された。   
 パターン3 あり   なし   あり   通知されなかった ⇒要望満たさず。
 パターン5 なし   あり   あり   通知された。

結論として、パターン2、パターン5が要望を満たしてくれました。

が、まったく規則性が見出せません・・・。

ユーザー mameshiba の写真

結果として、パターン2かパターン5で設定すればやりたいことが実現できることがわかりましたが、
規則性がないため、理屈がわかりません。

なぜこうなるのか、ご教示お願いいたします。

ユーザー TNK の写真

Zabbix 3.4.11や3.4.15の環境を構築して試してみましたが、確か
に動作の規則性を把握することは難しそうです。
Zabbix 4.0であれば想定されているような動作になると思いますの
で、別途環境を構築して試してみてください。

3.4は、昨年の10月にサポートが終了しているので、脆弱性の問題
や不具合があっても公式には修正されません。継続して利用される
場合はご注意ください。

ユーザー mameshiba の写真

わざわざ試してくださりありがとうございました。
不具合と分かれば逆に納得できます。

グレードアップを視野に入れてみようと思います。
本当にありがとうございました!

ユーザー mameshiba の写真

>再度検証。こんどはメンテナンス期間が終わる5分前には再起動が終わっている状態にして検証した。
>検証条件は同じ。
>
> ①データ収集あり/なし(メンテナンス設定画面のところ)
> ②メンテナンスの状態 期間外 メンテナンス(アクションの実行条件のところ)
> ③メンテナンス期間内の実行内容保留(アクションの実行内容のところのチェックボックス)
>
>これらをチェックリストで全パターン確認。
>       ①    ②    ③    結果
> パターン1 あり   あり   あり   通知されなかった
> パターン2 あり   あり   なし   通知されなかった   
> パターン3 あり   なし   あり   通知されなかった
> パターン4 あり   なし   なし   メンテナンス中に通知された
> パターン5 なし   あり   あり   通知されなかった
> パターン6 なし   あり   なし   メンテナンス期間が終わった後にイベントが生成され、通知された
> パターン7 なし   なし   あり   メンテナンス期間が終わった後にイベントが生成され、通知された
> パターン8 なし   なし   なし   メンテナンス期間が終わった後にイベントが生成され、通知された
>
>という結果になりました。

上記に誤りがあったようです。
パターン5で設定したのに通知されたので、再度検証したところ、正しくは

 パターン1 あり   あり   あり   通知されなかった
 パターン2 あり   あり   なし   通知されなかった
 パターン3 あり   なし   あり   通知されなかった
 パターン4 あり   なし   なし   メンテナンス中に通知された
 パターン5 なし   あり   あり   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン6 なし   あり   なし   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン7 なし   なし   あり   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン8 なし   なし   なし   メンテナンス期間が終わった後にイベントが生成され、通知された

でした。

すなわち、わたしの要望を満たしてくれる条件はパターン2しかないようです。
できればデータ収集なしで運用したかったのですが…。

ユーザー mameshiba の写真

パターン2でもなかったです、すみません。
以下、まとめます。

===================================================

 ①データ収集あり/なし(メンテナンス設定画面のところ)
 ②メンテナンスの状態 期間外 メンテナンス(アクションの実行条件のところ)
 ③メンテナンス期間内の実行内容保留(アクションの実行内容のところのチェックボックス)

       ①    ②    ③    結果
 パターン1 あり   あり   あり   通知されなかった
 パターン2 あり   あり   なし   通知されなかった、メンテ中に落ちたままでも鳴ってくれなかった
 パターン3 あり   なし   あり   通知されなかった、メンテ中に落ちたままで鳴ってくれた
 パターン4 あり   なし   なし   メンテナンス中に通知された
 パターン5 なし   あり   あり   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン6 なし   あり   なし   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン7 なし   なし   あり   メンテナンス期間が終わった後にイベントが生成され、通知された
 パターン8 なし   なし   なし   メンテナンス期間が終わった後にイベントが生成され、通知された

===================================================

すなわち、私の要望を満たすのはパターン3のみでした。