mito’s blog

IT技術メインの雑記。思い立ったが吉日。

【Zabbix4.0】ホストごとに閾値の異なるトラフィック監視を、マクロを使って効率的に実現する その2

やりたいこと

トラフィック監視の閾値はホスト単位、ホストグループ単位、共通の3パターンがあります。
以下のようにそれぞれ役割がありますので、柔軟に設定できるようにします。

単位 トラフィック閾値 役割
ホスト 7GBps 一時的に適用したい
ホストグループ 8GBps 一部のホストグループに適用したい
共通 9GBps 標準

まとめ

ホスト単位はホストマクロ、共通はグローバルマクロを使えば実現できますが、ホストグループはただの名称なので、設定を持つことはできません。適用するテンプレートにマクロを設定すると、全てのホストグループに適用されてしまいます。
そこで、ホストグループごとに監視設定のない空のテンプレートを用意し、監視設定を持つテンプレートをそれにリンクさせます。テンプレートマクロは、監視設定のない空のテンプレートに設定します。これにより、やりたいことが実現できます。

ホスト名 ホストグループ 親テンプレート(監視設定なし) 子テンプレート(監視設定あり)
Router1-1 Group_A Template_A Template_Traffic
Router1-2 Group_A Template_A Template_Traffic
Router2-1 Group_B Template_B Template_Traffic
Router2-2 Group_B Template_B Template_Traffic


マクロの設定と適用例

  • Template_Aにテンプレートマクロを設定した場合
    • Group_Aに所属する全てのホストは、Template_Aのテンプレートマクロが適用されます。
    • Group_Bに所属する全てのホストは、グローバルマクロが適用されます。
    • さらに、Router1-1にホストマクロを設定した場合
      • Router1-1は、ホストマクロが適用されます。
      • Router1-2は、Template_Aのテンプレートマクロが適用されます。

検証環境

OS:CentOS 7.7
Version:Zabbix4.0

本記事の経緯

監視アイテムやトリガー等を増やすと設定も管理も大変になるかなと考えていました。

備考

今はホストやテンプレートのマクロの有無とその値を管理するのも大変かもと思っています。
設定されている全てのマクロを一覧で出力するためには、DBを直接確認するのが早いのかな。。。