ときには、あるホストの可用性が他のホストに依存している場合があります。ルータがダウンしている場合は、いくつかのルータの背後にあるサーバが応答なしになります。ホストとルータの両方にトリガーを設定していると、ルータだけに障害があるにもかかわらず、2つのホストのダウンの通知を受信するかもしれません 。
このような場合に、複数のホスト間の依存関係が便利です。依存関係の設定によって、依存して起こる通知は保留され、根本の障害の通知だけが送信されます。
Zabbix はホストディレクトリ間の依存関係はサポートしていませんが、他のより柔軟な方法 - トリガーの依存関係によって定義ができます。トリガーは、依存する1つまたは複数のトリガーを持つことができます。
上記のシンプルな例では、サーバのトリガーの設定フォームを開き、それぞれのルータのトリガーに依存することを設定します。この依存関係によって、サーバのトリガーは、それが依存しているトリガーが1つでも「障害」ステータスにある間はステータスを変更せず、アクションの実行や通知の送信も行われません。
サーバとルータの両方がダウンしていて、その間に依存関係がある場合は、Zabbixは依存しているトリガーにはアクションを実行しません。
補足:
依存関係を定義するには、トリガーの設定フォームを開きます。[New dependency]の横の[追加]をクリックし、トリガーを依存させたい1つまたは複数のトリガーを選択します。
[保存]をクリックします。これで、そのリスト内の依存関係の指示ができました。
例えば、ホスト「Host」がルータ「Router2」の背後にあり、「Router2」が「Router1」の背後にあるとします。
もしRouter1が停止すると、当然HostとRouter2も応答なしになります。しかし、この場合にHost、Router1、Router2のそれぞれに関する通知を全て受信したくありません。
この場合、2つの依存関係を定義します:
'Host is down' trigger depends on 'Router2 is down' trigger
'Router2 is down' trigger depends on 'Router1 is down' trigger
Zabbixはトリガー「Host is down」のステータスを変更する前に、該当するトリガーの依存関係が定義されているかどうかをチェックします。定義されている場合、依存するトリガーの少なくとも1つが「障害」なら、変更しようとしたトリガーのステータスは変更されず、アクションの実行や通知の送信も行われません。
Zabbixはこのチェックを再帰的に実行します。つまり、Router1またはRouter2のいずれかが応答なしの場合、Hostのトリガーは更新されません。
本ページは2013/05/04時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は右上の「Translations of this page」から英語版を参照してください。