Zabbixの監視の中でも基本中の基本がリソース監視です。
今回はCPU使用率の監視と、トリガーの依存関係を利用した2段階の閾値を設定します。
使用率の割合によって深刻度を分けたい場合などに使用します。
CPU使用率監視
それでは、CPU使用率を監視するアイテムとトリガーを作成していきましょう。
トリガーは2段階で作成しますが、アイテムは1つ作成したらOK。
アイテムの作成
新しく作成するアイテムはテンプレートでもホストでも構いませんが、ホストに関係なく共通して使い回しできるアイテムはテンプレートに作成しましょう。
後にメモリやディスクも監視したいので、リソース監視用のテンプレートでも作成してみますか。
- [設定] → [テンプレート(またはホスト)]に移動します
- テンプレートの行のアイテムをクリックします
- 画面の右上隅にある[アイテムの作成]をクリックします
- フォームにアイテムのパラメータを入力します
また、既存のアイテムを開き、 [複製]ボタンを押してから、別の名前で保存してアイテムを作成することもできます。
設定項目 | 設定値 | 説明・注意点 |
---|---|---|
名前 | <CPU使用率> | (任意の名前) |
タイプ | Zabbixエージェント | Zabbixエージェント(アクティブ)も可 |
キー | system.cpu.util | オプションが不要な場合は省略可 |
データ型 | 数値(浮動小数) | ○○率の場合は大抵浮動小数 |
単位 | % | ○○率なので%(監視データを参照する際に付く) |
監視間隔 | <1m> | (任意の間隔。トリガーも考慮する) |
公式ドキュメントに具体的なアイテムの設定方法があります。
一通り設定が完了したら、[監視データ] → [最新データ]からアイテムを作成した監視対象のホストを選択し、正常に値が取得できているか確認してください。(アイテムの[テスト]ボタンからでも確認できます)
2段階トリガーの作成
トリガーを作成する前に、まずは2段階の閾値を設定するためのマクロで作成します。
以下の2つのユーザーマクロを用意しておきます。
マクロ | 値 | 説明 |
---|---|---|
{$CPU.UTIL.WARN} | 80 | 低い方の閾値(80%以上で検知させる場合に使用) |
{$CPU.UTIL.CRIT} | 90 | 高い方の閾値(90%以上で検知させる場合に使用) |
1段階目のトリガーを作成します。
ここではわかりやすように閾値の低い方から作成していますが、実はトリガーの依存関係の設定は、閾値の低い方で行いますので、先に2段階目を作成した方が良いと思います。。
- [設定] → [テンプレート(またはホスト)]に移動します
- テンプレートの行のトリガーをクリックします
- 画面の右上隅にある[トリガーの作成]をクリックします
- フォームにトリガーのパラメータを入力します
また、既存のトリガーを開き、 [複製]ボタンを押してから、別の名前で保存してトリガーを作成することもできます。
設定項目 | 設定値 | 説明・注意点 |
---|---|---|
名前 | 高いCPU使用率(5分間で {$CPU.UTIL.WARN}% 以上) | 障害イベントが発生した際に一目でわかりやすい名前にしましょう |
深刻度 | <警告> | 低い方の閾値は警告に設定 |
条件式 | min(/Template Resource/system.cpu.util,5m)>{$CPU.UTIL.WARN} | 5分間の最小値が80%以上なら障害イベントが発生する |
依存関係 | 高いCPU使用率(5分間で {$CPU.UTIL.CRIT}% 以上) | 依存関係に閾値がより高い方のトリガーを設定する |
トリガー関数はmin()を使用しました。
パラメータに5mとありますので、5分間の最小値が80%、つまり、アイテムの監視間隔が1分なので、CPU使用率が5回連続(5分間)80%以上で張り付いていれば障害イベントを生成します。
設定項目 | 設定値 | 説明・注意点 |
---|---|---|
名前 | 高いCPU使用率(5分間で {$CPU.UTIL.CRIT}% 以上) | 障害イベントが発生した際に一目でわかりやすい名前にしましょう |
深刻度 | <軽度の障害> | 高い方の閾値は軽度の障害に設定 |
条件式 | min(/Template Resource/system.cpu.util,5m)>{$CPU.UTIL.CRIT} | 5分間の最小値が90%以上なら障害イベントが発生する |
このトリガーも同じような状態になれば障害イベントを生成します。
ただし、こちらの閾値は90%以上になります。
トリガーも公式ドキュメントをどうぞ。
上記のように依存関係を設定することで、CPU使用率が一気に90%を超えたとしても、閾値が80%と90%の両方の障害イベントが表示されるのではなく、取得した値に応じたトリガーのみが障害イベントに表示されるようになります。
コメント