ZABICOM / Zabbixの機能活用

第4回では、第1回で触れたユーザー定義マクロのより詳しい解説と、ZABICOM / Zabbixと外部ツールとの連携方法、監視継続のための冗長化について解説します。外部ツールとの連携例では、一般的な連携手法のほかに、NTTコムテクノロジーが開発した「仮想化基盤監視ツール(VMZ)」や「レポート作成支

福島 崇, 八久保 洋一

2010年12月28日 20:00

第4回では、第1回で触れたユーザー定義マクロのより詳しい解説と、ZABICOM / Zabbixと外部ツールとの連携方法、監視継続のための冗長化について解説します。外部ツールとの連携例では、一般的な連携手法のほかに、NTTコムテクノロジーが開発した「仮想化基盤監視ツール(VMZ)」や「レポート作成支援機能(RAZ)」も紹介します。

ユーザー定義マクロ

テンプレートにアイテムを設定する際には、複数の監視対象で共通して使うものを設定します。サーバー監視用のテンプレートであれば、CPUの監視、メモリーの監視、ログの監視などです。しかし、ログ・ファイルのパスなどは、システムごとに異なる可能性が大いにあります。

例えば、ZABICOMエージェントのログを取得するためのアイテム・キーは、Linuxでは「 log[/var/log/zabbix/zabbix_agentd.log] 」 、Windowsでは「 log[c:\zabbix_agentd.log] 」です。ここで、Linux用とWindows用で別々にテンプレートを作成する必要があるのでしょうか。答えは否です。

第1回で軽く触れましたが、ZABICOM 1.8からは、ユーザーが定義したマクロを使えるようになりました。アイテム・キーやトリガー条件式にこのマクロを使用することで、従来と比べてより汎用的なテンプレートを作成できます。

ZABICOMエージェントのログを監視するアイテムを作成する場合は、以下のようなアイテム・キーを作成します。

本来、監視対象のログ・ファイルをフルパスで記述するべき場所に、見慣れない文字列「{$AGENT_LOG}」が記述されています。これがユーザー定義マクロです。

ユーザー定義マクロを記述する個所は2カ所あります。ホストの設定画面と、テンプレートの設定画面です。まずはホストの設定画面からマクロを定義してみましょう。

[マクロ]欄には、新たに定義するユーザー定義マクロの名前を記述します。名前に使用可能な文字種は英大文字と、.(ピリオド)、 _(アンダー・バー)です。また、名前は必ず「{$」で始まり、「}」で終わる必要があります。今回の例では「{$AGENT_LOG}」とします。[マクロ]は、ホスト(テンプレート)内で一意である必要があります。

[値]欄には、定義したマクロと置き換える文字列(または数値)を記述します。Linuxのホストには「/var/log/zabbix/zabbix_agentd.log」、Windowsのホストには「c:\zabbix_agentd.log」(どちらも実際の環境にパスを合わせてください)と記述します。

実際に監視が行われるときは、ZABICOM内部でマクロが展開されます。

Linuxホストlog[{$AGENT_LOG}] → log[/var/log/zabbix/zabbix_agentd.log]
Windowsホストlog[{$AGENT_LOG}] → log[c:\zabbix_agentd.log]

ユーザー定義マクロをトリガー条件式に使用する例として、第3回で設定したCPU使用率のトリガーを例に説明します。

しきい値として「80」を入力していた場所を「{$CPU_HIGH}」マクロで置き換え、しきい値として「60」を入力していた場所を「{$CPU_LO}」マクロで置き換えます。

ホスト設定のマクロに{$CPU_HIGH}と{$CPU_LO}を設定します。

この機器は、前回の機器よりも若干CPU使用率が高いので、しきい値を5%ずつ増やしてみました。また、テンプレートに設定する場合もホストと同じ手順で設定することが可能です。

ここまでの説明で首をかしげる方もいるかもしれません。なぜなら「[マクロ]は、ホスト(テンプレート)内で一意である必要があります」と説明したからです。では、ホストとテンプレートで同じ[マクロ]を作成した場合はどうなるのでしょう。この場合、同じ[マクロ]は上書きされます。マクロ同士の優先順位は、以下に示す図1の通りです。

図1: マクロの優先順位と相関図

図1: マクロの優先順位と相関図

図1のように、ホストで定義したマクロが優先されるので「テンプレートのマクロ定義でデフォルトの値を定義しておき、ホストのマクロ定義で実際の環境に合わせた値に上書きする」という柔軟な運用が可能です。

ここで[グローバルマクロ]という機能が初出しましたが、これはZABICOMのシステム単位で設定できるユーザー定義マクロのことです。[管理]→[一般設定]からプルダウン・メニューで[マクロ]を選択し、定義できます。

[グローバルマクロ]は[管理]メニューの機能なので、Zabbix特権管理者にしか定義できません。Telnet監視用のユーザー名とパスワード、SSH監視用のユーザー名とパスワードなど、設定項目に直接記述することがはばかられる値を隠ぺいしたい場合に使用するとよいでしょう。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30