Zabbix Documentation 2.2

2.23.03.4In development:4.0Unsupported versions:1.82.02.43.2

User Tools

Site Tools

This translation is older than the original page and might be outdated. See what has changed.

Sidebar

jp:manual:concepts

2. Zabbixコンセプト

1 Zabbix の定義

概要

このセクションでは、Zabbixで一般的に使用されている用語の意味について学ぶことができます。

定義

ホスト

- 監視対象のネットワーク接続されているデバイスで、IP/ DNS をもっているものです。

ホストグループ

- 論理的なホストのまとまりです; ホストグループには、ホストとテンプレートが入ります。1つのホストグループ内のホストとテンプレートは、どのような方法でもお互いにはリンクしません。ホストグループは、異なるユーザーグループに対してホストへのアクセス権を与える際に使用されます。

アイテム

- ホストから取得する特定の1つのデータで、データの軸です。

トリガー

- 問題の閾値を定義する論理的な表現で、アイテム内で取得したデータを「評価」するのに使用されます。

取得したデータが閾値を超えた場合、トリガーは「OK」から「障害」状態に変わります。取得したデータが閾値を超えていない場合は、トリガーは「OK」状態のまま、あるいは「OK」に戻ります。

イベント

- トリガーの状態が変化したり、ディスカバリやエージェントの自動登録が実行されているなど、注意に値する何かが発生したことを示します。

アクション

- 事前に登録されている、イベントに対する反応方法です。

複数の操作で構成される1つのアクション(例:通知の送信)や状態(操作が実行されたときの)

エスカレーション

- アクション内で操作を実行するためのカスタムシナリオで、通知の送信やリモートコマンドの実行などの一連の順序です。

メディア

- 通知の配信手段です; 配信チャネルでもあります。

通知

- 選択したメディアチャネルを通してユーザーに送信されるイベントに関するメッセージです。

リモートコマンド

- ある状態になったときに、監視されているホスト上で自動的に実行される、既定のコマンドです。

テンプレート

- 1つあるいは複数のホストに対して適用されるように用意された、エンティティ(アイテムやトリガー、グラフ、スクリーン、アプリケーション、 下層のディスカバリルールなど)のセットです。

テンプレートのジョブはホスト上での監視タスクの作動をスピードアップするためにあります; また、監視タスクへの一括変更の適用を容易にするためでもあります。テンプレートは個別のホストに直接リンクされています。

アプリケーション

- 論理的なグループ内の、アイテムのグループです。

Webシナリオ

- ウェブサイトの稼働をチェックする、1つあるいは複数のHTTPリクエストです。

フロントエンド

- Zabbixで提供されているWebインターフェースです。

Zabbix API

- Zabbix APIによって、ホスト、アイテム、グラフなどのZabbixオブジェクトを生成、更新、取得したり、他のカスタムタスクを実行するのに、JSON RPCプロトコルを使用することができます。

Zabbix サーバ

- 監視を実行したり、Zabbixプロキシやエージェントと相互に作用しあったり、トリガーの統計をしたり、通知を送信するといったことを行う、Zabbixソフトウェアの中核のプロセスです; 中核のデータリポジトリでもあります。

Zabbixエージェント

- ローカルのリソースやアプリケーションを能動的に監視するために、監視対象上で作動されるプロセスです。

Zabbix プロキシ

- Zabbixサーバのかわりにデータを収集するプロセスで、サーバの処理の負荷を減らします。

ノード

- 分散監視の階層の1つの要素として設定されたZabbixサーバです; 自己の場所を監視する役割を担っています。


本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。

2014/09/12 04:02 · Miho Ejima

2 Zabbixサーバ

概要

Zabbixサーバは、Zabbixsソフトウェアの中核のプロセスです。

Zabbixサーバは、データのポーリングとトラッピングを遂行し、トリガーの統計を行い、ユーザーに通知レポートを送信します。Zabbixサーバは、Zabbixエージェントやプロキシからシステムの稼働や整合性のデータを報告される、中核のコンポーネントでもあります。Zabbixサーバは、それ自身リモートからシンプルなサービスチェック機能を使って、ウェブサーバやメールサーバのようなネットワークで接続されたサービスをチェックできます。

Zabbixサーバは、すべての設定、統計、操作のデータが保存される中核のリポジトリであり、監視対象のシステムのいずれかで障害が発生したときに、管理者に対して能動的に警告するZabbix内のエンティティでもあります。

基本のZabbixサーバの機能は、3つの別々のコンポーネントに分けられています。その3つとは、Zabbixサーバ、ウェブフロントエンド、データベースストレージです。

Zabbixのすべての設定情報はデータベースに保存されています。サーバとウェブフロントエンドの両方がそのデータベースと通信します。例えば、ウェブフロントエンド(またはAPI)を使って新しいアイテムを作成したときには、データベースのアイテムテーブルに追加されます。その後約1分に1回、Zabbixサーバは、その時点でZabbixサーバのキャッシュに保存されているアクティブなアイテムのリストを得るために、アイテムテーブルに問合せをします。Zabbixフロントエンドで行われたどんな変更も、最新のデータセクションに現れるまで2分かかるのは、このためです。

サーバプロセス

Zabbixサーバは、デーモンプロセスとして動作します。Zabbixサーバを起動するには、以下のコマンドを実行します:

shell> cd sbin
shell> ./zabbix_server

Zabbixサーバでは以下のコマンドラインパラメータを使用できます:

-c --config <file>              設定ファイルを絶対パスで指定します。(デフォルトは/etc/zabbix/zabbix_server.conf)
-n --new-nodeid <nodeid>        データベースデータを新しいノードIDに変換します。
-R --runtime-control <option>   管理者機能を実行します。
-h --help                       ヘルプを表示します。
-V --version                    バージョン情報を表示します。

runtime-controlは、OpenBSDとNetBSDではサポートされていません。

コマンドラインパラメータの使用例を示します:

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf
shell> zabbix_server --help
shell> zabbix_server -V

Runtime control

Runtime control のオプションは以下のとおりです:

オプション説明
config_cache_reload設定キャッシュをリロードします。その時点でキャッシュがロードされようとしているときは無視されます。

runtime controlを使用してZabbixサーバの設定キャッシュをリロードする例は以下のとおりです:

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R config_cache_reload

プロセスユーザー

Zabbixサーバは、非rootユーザーとして動作するように設計されています。どんな非rootユーザーであれ、起動されれば動作します。したがって、何の問題もなく、どんな非rootユーザーとしてでも、あなたはZabbixサーバを動作させることができます。

rootとして動作させる場合には、システムに必ず存在する、ハードコードされた「zabbix」ユーザーに切り替わります。

サーバの設定ファイル中の「AllowRoot」パラメータを変更した場合のみ、サーバを「root」として動作させることができます。

Zabbixサーバとエージェントが同じマシン上で動作する場合、サーバの実行とエージェントの実行に、異なるユーザーを使用することをお奨めします。そうしないと、同じユーザーとしてサーバとエージェントの両方が実行された場合、エージェントはサーバの設定ファイルにアクセスでき、例えば、Zabbix内のどの管理レベルのユーザーでも、極めて容易にデータベースのパスワードを取得することができてしまいます。

設定ファイル

設定ファイルのオプションの詳細については、 Zabbixサーバの設定を参照してください。

起動スクリプト

スクリプトは、システムの起動・シャットダウン中のZabbixプロセスの自動開始・自動停止に使用されます。スクリプトは、misc/init.d ディレクトリの下にあります。

サポートされているプラットフォーム

セキュリティの要件や、サーバ操作のミッションクリティカルな性質のために一貫して必要なパフォーマンスやフォールトトレランス、回復力を提供できているOSはUNIXだけです。Zabbixは市場に出回っているバージョンで動作します。

Zabbixサーバは、以下のプラットフォーム上での動作を確認済みです:

  • Linux
  • Solaris
  • AIX
  • HP-UX
  • Mac OS X
  • FreeBSD
  • OpenBSD
  • NetBSD
  • SCO Open Server
  • Tru64/OSF1

Zabbxは、他のUNIX系OSでも同様に動作します。

(他のセクション、Zabbix メンテナンス他にリンクの予定)


本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。

2014/09/12 04:02 · Miho Ejima

3 Zabbixエージェント

概要

ローカルのリソースやアプリケーション(ハードウェアデバイス、メモリ、プロセッサの統計など)を能動的に監視するためには、Zabbix エージェントを監視対象上で動作させます。

Zabbix エージェントは、稼働情報データをローカルで収集し、Zabbixで処理を行うためにZabbixサーバに情報を報告します。 ハードディスクがいっぱいになった、あるいはサービスプロセスが壊れたなどの、障害が発生した場合、Zabbixサーバはその障害が発生したマシンの管理者に対して、障害発生したことを能動的に警告することができます。

Zabbixエージェントは、統計情報を収集するのにネイティブのシステムコールを使用するので、極めて効率的に動作します。

パッシブチェックとアクティブチェック

Zabbixエージェントは、パッシブチェックとアクティブチェックを行うことができます。

パッシブチェックでは、 エージェントはデータの要求に対して応答します。Zabbixサーバ(またはプロキシ)が、例えばCPU負荷のデータを要求すると、Zabbixエージェントが結果を返信します。

アクティブチェックでは、より複雑な処理が必要です。Zabbixエージェントは、個々の処理のために、最初にZabbixサーバからアイテムのリストを取得します。 その後、更新された値をサーバに定期送信します。

パッシブチェック、アクティブチェックのどちらで動作するかは、それぞれの監視対象のアイテムのタイプを選択することによって設定されます。 Zabbixエージェントは、「Zabbix エージェント」または「Zabbix エージェント(アクティブ)」のアイテムのタイプを処理します。

サポートしているプラットフォーム

Zabbix エージェントは次のOSでの動作をサポートしています:

  • Linux
  • IBM AIX
  • FreeBSD
  • NetBSD
  • OpenBSD
  • HP-UX
  • Mac OS X
  • Solaris 9, 10, 11
  • Windows: 2000, Server 2003, XP, Vista, Server 2008, 7

インストール

Zabbixエージェントのインストール方法を参照してください。

一般に32ビットのZabbixエージェントは64ビットのシステムで動作しますが、場合によっては正常に動作しないことがあります。

UNIX用のエージェントの処理(スタンドアロンデーモン)

Zabbixエージェントは監視対象となるホスト上で動作されます。Zabbixエージェントは、デーモンプロセスとして動作します。

Zabbixエージェントを起動するためには、以下を実行します:

shell> cd sbin
shell> ./zabbix_agentd

以下のコマンドラインパラメータがZabbixエージェントで使用可能です:

  -c --config <file>    設定ファイルを指定します。デフォルトは /etc/zabbix/zabbix_agentd.conf です。
  -h --help            ヘルプを表示します。
  -V --version         バージョン情報を表示します。
  -p --print           サポートされている測定基準を出力して終了します。
  -t --test <item key>  指定した測定基準をテストして終了します。

例えば、ヘルプを表示するには、次を実行します:

shell> zabbix_agentd -h

他のコマンドラインパラメータの例を次に示します:

shell> zabbix_agentd -c /usr/local/etc/zabbix_agentd.conf
shell> zabbix_agentd --help
shell> zabbix_agentd --print
shell> zabbix_agentd -t "system.cpu.load[all,avg1]"

プロセスユーザー

Zabbixエージェントは、非rootユーザーとして動作するように設計されています。どんな非rootユーザーであれ、起動されれば、動作します。したがって、何の問題もなく、どんな非rootユーザーとしてでも、あなたはZabbixエージェントを動作させることができます。

rootとして動作させる場合には、システムに必ず存在する、ハードコードされた「zabbix」ユーザーに切り替わります。Zabbixエージェントの設定ファイル内で 「AllowRoot」パラメータを編集した場合にのみ、エージェントをrootとして動作させることができます。

設定ファイル

zabbix_agentdの設定の詳細については、設定ファイルのオプションを参照してください。

Windowsのエージェントの動作

インストールの情報については、Zabbix Windowsエージェントのインストールを参照してください。

Zabbixエージェントのサービスを開始するには、コントロールパネルを使用するか、または次を実行します:

zabbix_agentd.exe --start

コマンドラインの構文:

zabbix_agentd.exe [-Vhp] [-idsx] [-c <file>] [-t <metric>] 

Zabbix Windows エージェントでは、以下のコマンドラインパラメータが使用可能です:

オプション:

  -c --config <file>   かわりの設定ファイルを指定します。(デフォルトは  c:\zabbix_agentd.conf です)
  -h --help            ヘルプを表示します。
  -V --version         バージョン情報を表示します。
  -p --print           把握したアイテムを出力して終了します。
  -t --test <item key> 単体のアイテムをテストして終了します。

ファンクション:

 -i --install       Zabbix エージェントをサービスとしてインストールします。
 -d --uninstall    Zabbix エージェントのサービスをアンインストールします。
 -s --start        Zabbix エージェントのサービスを開始します。
 -x --stop          Zabbix エージェントのサービスを停止します。

設定ファイル

Zabbix Windows エージェントの設定について詳細は設定ファイルのオプションを参照してください。

終了コード

バージョン2.2以前では、Zabbixエージェントは、正常終了した場合は0を返し、異常終了した場合は255を返していました。バージョン2.2以降では、Zabbixエージェントは、正常終了した場合は0を返し、異常終了した場合は1を返します。


本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。

2014/09/12 04:04 · Miho Ejima

4 Zabbix プロキシ

概要

Zabbix プロキシは、1つ、あるいは複数の監視デバイスから監視データを収集し、Zabbixサーバに情報を送信するプロセスで、基本的にはサーバのかわりに動作します。収集されたすべてのデータはローカルにバッファリングされていて、そのプロキシが属するZabbixサーバに対して転送されます。

プロキシの実行はオプションですが、単体のZabbixサーバの負荷を分散させるのに非常に有益です。プロキシだけがデータを収集している場合は、Zabbix サーバ上の処理は、CPUの消費とディスクI/Oを減らすことができます。

Zabbixプロキシは、ローカルの管理者を置かないで、リモートのロケーション、ブランチ、ネットワークの集中管理を可能にする理想的な方法です。

Zabbixプロキシには、別のデータベースが必要です。

Zabbixプロキシがサポートしているデータベースは、SQLite、MySQL、PostgreSQLです。OracleやDB2 を使用するのは自己責任で行ってください。下位レベルでのディスカバリルールでもあるように、制限がある場合があります。

こちらも参照: 分散環境でのZabbixプロキシ

Zabbix プロキシのプロセス

Zabbix プロキシは、デーモンプロセスとして動作します。次のように実行することで開始できます:

shell> cd sbin
shell> ./zabbix_proxy

Zabbix プロキシでは、以下のコマンドラインパラメータを使用可能です:

-c --config <file>              設定ファイルを絶対パスで指定します。
-R --runtime-control <option>   管理者機能を実行します。
-h --help                       ヘルプを表示します。
-V --version                    バージョン情報を表示します。

コマンドラインパラメータの例:

shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
shell> zabbix_proxy --help
shell> zabbix_proxy -V

Runtime control

Runtime control のオプション:

オプション内容
config_cache_reload設定のキャッシュをリロードします。キャッシュがその時点でロードされようとしているときは無視されます。アクティブなZabbixプロキシがZabbixサーバに接続して設定データを要求します。

Zabbix プロキシの設定のキャッシュをリロードするのに runtime controlを使用する例

shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R config_cache_reload

Runtime control は、OpenBSDとNetBSDではサポートされていません。

プロセスユーザー

Zabbix プロキシは、非rootユーザーとして動作するように設計されています。どんな非rootユーザーであれ、起動されれば、動作します。したがって、何の問題もなく、どんな非rootユーザーとしてでも、あなたはZabbixエージェントを動作させることができます。

rootとして動作させる場合には、システムに必ず存在する、ハードコードされた「zabbix」ユーザーに切り替わります。

プロキシの設定ファイル中の「AllowRoot」パラメータを変更した場合のみ、プロキシを「root」として動作させることができます。

設定ファイル

zabbix_proxyの設定の詳細については、設定ファイルのオプションを参照してください。


本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。

2014/09/12 04:05 · Miho Ejima

5 Zabbix Java ゲートウェイ

概要

Zabbix 2.0では、「Zabbix Javaゲートウェイ」と呼ばれる新たなZabbixデーモンを導入することによって、JMXアプリケーションの監視のネイティブサポートが追加になりました。 Zabbix Java ゲートウェイは、Javaで書かれたデーモンです。Zabbixサーバがホスト上の特定のJMXのカウンタの値を取得したいとき、サーバは、対象のアプリケーションにリモートで問合せを行えるJMX管理APIを使用するZabbix Javaゲートウェイに問合せます。アプリケーションは追加でソフトウェアをインストールする必要はなく、ただコマンドライン上でDcom.sun.management.jmxremoteオプションで開始するだけです。

Zabbix Java ゲートウェイは、Zabbixサーバまたはプロキシからの接続を許可しており、「パッシブプロキシ」としてのみ使用可能です。Zabbixプロキシとは対照的に、Zabbixプロキシからも使用できます。(Zabbixプロキシは変更できません) それぞれのZabbix Javaゲートウェイへのアクセスは、Zabbixサーバ内またはプロキシの設定ファイル内で直接設定され、1つのZabbixサーバまたはZabbixプロキシに対して1つだけ、Zabbix Java ゲートウェイが設定できます。ホストにJMXエージェントタイプのアイテムや、他のタイプのアイテムがある場合は、JMXエージェントアイテムだけがZabbix Java ゲートウェイに引き渡されます。

Zabbix Javaゲートウェイ越しにアイテムを更新しなければならないときは、Zabbix サーバまたはZabbixプロキシは、Zabbix Java ゲートウェイに接続して値を要求します。Zabbix Java ゲートウェイがその値を順番に取得してサーバまたはプロキシに返します。 そういうものなので、Zabbix Java ゲートウェイはどの値もキャッシュしません。

Zabbix サーバまたはZabbix プロキシは、Zabbix Java ゲートウェイに接続する特定のプロセスイプで、StartJavaPollers オプションで制御されます。内部では、Zabbix Java ゲートウェイは、START_POLLERSオプションによって制御される複数のスレッドを開始します。 サーバサイドで、接続の時間がTimeoutの時間よりも長くかかる場合は、スレッドは終了されますが、Zabbix Java ゲートウェイは、JMXカウンタからの値の取得のためにビジーのままになる場合があります。

Zabbix サーバ またはZabbixプロキシは、よりよいパフォーマンスを得るために、要求を1つのJMXターゲットにできるだけ多く(アイテムの間隔に影響されます)まとめ、Zabbix Java ゲートウェイに対して1回の接続で送信しようとします。

StartJavaPollersは、START_POLLERSよりは少ないか、同じぐらいで持つことが推奨されています。そうしないと、入ってくる要求に対して、Zabbix Java ゲートウェイ中のいずれのスレッドも稼働できない場合があり得ます。

以下のセクションでは、JMX監視にZabbix Java ゲートウェイに使用するための、Zabbix Java ゲートウェイの取得と動作のさせ方、Zabbix サーバ(または Zabbix プロキシ)の設定方法、特定のJMXカウンタに対応するZabbix GUI内のZabbixアイテムの設定方法について解説します。

5.1 Zabbix Java ゲートウェイの取得

Zabbix Java ゲートウェイを取得するには、2つの方法があります。1つはZabbix のウェブサイトからZabbix Java ゲートウェイのパッケージをダウンロードする方法、もう1つは、ソースからコンパイルする方法です。

5.1.1 Zabbix のウェブサイトからのダウンロード

このオプションは、実際はまだ有効ではないのですが、 将来Zabbix のウェブサイトから、Zabbix Java ゲートウェイのアーカイブをダウンロードできるようになります。

5.1.2 ソースからのコンパイル

Zabbix Java ゲートウェイをコンパイルするには、最初に ./configure のスクリプトを–enable-java オプションを付けて実行します。インストール先のパスとしてデフォルトの /usr/local 以外にする–prefix オプションを指定可能であることを憶えておいてください。なぜなら、Zabbix Java ゲートウェイをインストールすると、1つの実行可能なディレクトリだけでなく、ディレクトリツリー全体が作成されるからです。

$ ./configure --enable-java --prefix=$PREFIX

コンパイルを実行してZabbix Java ゲートウェイを1つのJARファイルにパッケージングするために、makeを実行します。このステップのために、あなたのパスでjavacjarを実行可能な状態にしておく必要があることに注意してください。

$ make

これで、zabbix-java-gateway-$VERSION.jarファイルが、src/zabbix_java/bin に作成されます。Zabbix Java ゲートウェイを、ディストリビューション・ディレクトリ内の src/zabbix_java から実行できたら、 Zabbix Java ゲートウェイの設定と 実行の説明に進みます。もし実行できない場合は、実行の権利を持っているかどうかを確認してから、make install を実行してください。

$ make install

5.2 Zabbix Java ゲートウェイ ディストリビューション内のファイルの概要

あなたがどのような方法でZabbix Java ゲートウェイを取得したかには関係なく、$PREFIX/sbin/zabbix_java 配下のシェルスクリプト、JAR、設定ファイルの収集で終了させなければなりません。これらのファイルの役割を以下に要約します。

bin/zabbix-java-gateway-$VERSION.jar

Zabbix Java ゲートウェイの JARファイルです。

lib/logback-core-0.9.27.jar
lib/logback-classic-0.9.27.jar
lib/slf4j-api-1.6.1.jar
lib/org-json-2010-12-28.jar

Zabbix Java ゲートウェイと依存関係のあるもの:LogbackSLF4J、および JSON.org のライブラリ

lib/logback.xml  
lib/logback-console.xml 

Logbackの設定ファイルです。

shutdown.sh  
startup.sh 

Zabbix Java ゲートウェイを開始したり停止するのに便利なスクリプトです。

settings.sh 

上記の起動とシャットダウンのスクリプトのソースの設定ファイルです。

5.3 Zabbix Java ゲートウェイの設定と実行

Zabbix Java ゲートウェイは、デフォルトではポート番号 10052をLISTENしています。 異なるポート上でZabbix Java ゲートウェイを実行することを計画している場合は、settings.sh スクリプトで指定可能です。この指定方法や他のオプションについては、Zabbix Java ゲートウェイの設定ファイルの解説を参照してください。

設定ができたら、startup スクリプトを実行してZabbix Java ゲートウェイを開始することができます:

$ ./startup.sh 

同様に、もうZabbix Java ゲートウェイが必要なければ、shutdownスクリプトを実行して停止します:

$ ./shutdown.sh 

サーバやプロキシとは違って、Javaゲートウェイは軽量で、データベースが不要であることを憶えておいてください。

5.4 Zabbix Java ゲートウェイを使用するためのサーバの設定

Zabbix Java ゲートウェイが動作するようになったら、Zabbixサーバに Zabbix Java ゲートウェイの場所を知らせる必要があります。そのためには、サーバ設定ファイルで、JavaGatewayパラメータとJavaGatewayPortパラメータを指定します。JMXアプリケーションが動作しているホストをZabbixプロキシで監視している場合は、かわりにプロキシ設定ファイルに接続パラメータを指定します。

JavaGateway=192.168.3.14
JavaGatewayPort=10052 

サーバは、デフォルトでは、JMX監視に関連するどのプロセスも開始しません。しかしそのプロセスを使用したい場合は、Java Poller のpre-forkされたインスタンスの番号を指定する必要があります。これは、通常のPollerやtrapperの指定と同じ方法で指定します。

StartJavaPollers=5 

いったんこれらの設定を完了したら、サーバまたはプロキシをリスタートすることを忘れないでください。

5.5 Zabbix Java ゲートウェイのデバッグ

Zabbix Java ゲートウェイに何らかの障害がある場合や、フロントエンドのアイテムに関して表示されたエラーメッセージの説明が十分でない場合、Zabbix Java ゲートウェイのログファイルを調べたいと思われるかもしれません。 デフォルトでは、Zabbix Java ゲートウェイは、/tmp/zabbix_java.log ファイルに「情報」レベルの活動のログを残していますが、たまにその情報が十分ではなくて、「デバッグ」レベルの情報が必要になる場合があります。ロギングのレベルを上げるためには、lib/logback.xml ファイルを編集し、<root>タグのレベル属性を“debug”に変更します。

<root level="debug">
  <appender-ref ref="FILE" />
</root>

Zabbixサーバやプロキシと違って、logback.xmlの変更後にZabbix Java ゲートウェイを再スタートする必要はありません - logback.xml 内の変更は自動的に再実行されます。デバッグを完了したら、ロギングのレベルを「情報」に戻すことができます。

別のファイルまたはデータベースのように完全に異なるメディアにログを残したい場合は、 logback.xml ファイルを必要にあわせて調整します。詳細はLogbackのマニュアルを参照してください。

たまに、デバッグ目的で、デーモンとしてよりコンソールアプリケーションのようにZabbix Java ゲートウェイを開始すると便利な場合があります。それを行うためには、settings.sh スクリプト内の PID_FILE 変数をコメントアウトします。PID_FILEが省略されている場合は、startup.sh スクリプトは Zabbix Java ゲートウェイをコンソールアプリケーションとして開始し、Logbackにlib/logback-console.xmlファイルを使用させます。それはコンソールにログを残すだけでなく、ロギングレベル「デバッグ」を有効にもします。

最後に、Zabbix Java ゲートウェイは、ログをとるのにSLF4Jを使用しているので、適切なJARファイルをlibディレクトリ内に配置することによって、Logbackを、あたなが選択したフレームワークに置き換えることが可能であることを憶えておいてください。詳細は SLF4Jのマニュアル を参照してください。


本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。

2014/09/12 04:13 · Miho Ejima

6 Sender

概要

Zabbix sender は、パフォーマンスデータをZabbix サーバで処理するために送信するコマンドラインユーティリティです。

このユーティリティは通常、稼働とパフォーマンスのデータを定期的に送信するために長時間動作するユーザースクリプトの中で使用されます。

データを1つ送信する場合

例)Zabbix senderを使用してZabbixサーバーに値を送信する場合:

shell> zabbix_sender -z zabbix -s "Linux DB3" -k db.connections -o 43

オプション:

  • z - Zabbixサーバのホスト (IPアドレスでの指定でも可)
  • s - 監視対象のホスト名 (Webインタフェースで登録されたホスト名)
  • k - アイテムキー
  • o - 送信する値

オブジェクトに空白がある場合、これらのオブジェクトは二重引用符で囲む必要があります。

Zabbix trapperプロセスは、監視対象のホストの対応するアイテムキーの存在をチェック時にアイテムキーに使用されるマクロは展開されません。

詳細は、Zabbix senderのmanpagesを参照してください。

例)WindowsでZabbix senderを実行する場合:

zabbix_sender.exe [options]

Zabbix 1.8.4以降、zabbix_senderリアルタイム送信シナリオは、複数の値を連続して収集し、それらを1回の接続でサーバに送信するように改善されました。その前の値から0.2秒以上たっていない値であれば、同じスタックにのせられますが、最大のプーリングの時間は1秒です。

大量のデータを送信する場合

例)Zabbixサーバに送信するデータを入力ファイルとして指定する場合:

ファイルのフォーマットについては、Zabbix senderのmanpages--input-fileオプションを参照してください。

タイムスタンプを指定しない場合

例)タイムスタンプを指定しない入力ファイル:

"Linux DB1" db.ping 1
"Linux DB3" db.ping 0
"Zabbix server" db.status 0
"Zabbix server" db.error "Linux DB3 down"

タイムスタンプを指定する場合

送信する各値にタイムスタンプを指定することが可能です。その場合は--with-timestampsオプションを使用してください。

例)タイムスタンプを指定した入力ファイル:

"Linux DB1" db.ping 1429533600 1
"Linux DB3" db.ping 1429533602 0
"Zabbix server" db.status 1429533603 0
"Zabbix server" db.error 1429533603 "Linux DB3 down"

対象のアイテムにトリガーが参照されている場合は、入力ファイル内のすべてのタイムスタンプは昇順でなければなりません。そうでない場合、イベントの統計が正しくなくなります。

入力ファイルで指定されたタイムスタンプはZabbixサーバーの時刻と一致するように調整されます。 例えば指定されたタイムスタンプが “10:30:50”である場合、Zabbix senderの動作するOSの現在時刻が “10:40:03”で、ZabbixサーバーのOSの現在時刻は “10:40:05”とすると。アイテムのタイムスタンプは“10:30:52”でデータベースに格納されます。

同様に、Zabbixプロクシに値が送信された後にZabbixサーバに送信されると、タイムスタンプは最初にZabbixプロクシ時間に合わせて調整され、その後Zabbixサーバ時間に合わせて調整されます。

Zabbix senderは、(UNIX系システムとWindows共に)入力ファイルをUTF-8(BOM)無しエンコーディングの文字列として取得します。

入力ファイルでの文字列のクォーティング

Zabbix senderのmanpagesには、 --input-fileセクションで入力ファイルの正しいフォーマットについての情報が記載されています。 文字列のクォーティングを使用した場合の値のデータベースへの格納例を次に示します。:

入力ファイルの値データベース格納値画面上のエラーメッセージ
failedfailed
“status: failed”status: failed
“status: \”failed\““status: “failed”
“C:\\”C:\
C:\C:\
“C:\” Warning: [line 1] 'Key value' required
“C:\My Documents”C:\My Documents
status:\nfailedstatus:\nfailed
“status:\tfailed”status:\tfailed
“status:\nfailed”status:
failed
“status:\nfailed\n”status:
failed
“\nstatus:\nfailed”
status:
failed
“\n\n”

表示情報

例)入力ファイルから300個の値を送信した場合:

# zabbix_sender -z 127.0.0.1 -i /tmp/trapper.txt 
Info from server: "Processed 250 Failed 0 Total 250 Seconds spent 0.002668"
Info from server: "Processed 50 Failed 0 Total 50 Seconds spent 0.000540"
sent: 300; skipped: 0; total: 300

Zabbix senderは指定された設定ファイルに無効なパラメータエントリ(不正なパラメータ=値)が存在する場合、終了します。

2014/09/12 04:14 · Miho Ejima

7 Get

概要

Zabbix getは、Zabbixエージェントと通信して、エージェントから必要な情報を取得するのに使用するプロセスです。 このユーティリティは通常、Zabbix エージェントのトラブルシューティングに使用されます。

Zabbix get の実行

UNIX環境で、Zabbixエージェントからプロセッサの負荷の値を取得するためにZabbix getを実行する例:

shell> cd bin
shell> ./zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"

Zabbix getは、以下のコマンドラインパラメータを指定できます:

  -s --host <host name or IP>        ホスト名またはホストのIPアドレスを指定します。
  -p --port <port number>            ホスト上で動作しているエージェントのポート番号を指定します。デフォルトは10050です。
  -I --source-address <IP address>  ソースのIPアドレスを指定します。
  -k --key <item key>                値を取得したいアイテムの測定基準名(キー)を指定します。
  -h --help                          ヘルプを表示します。
  -V --version                       バージョン番号を表示します。

Windows上でもZabbix get はよく似た動作をします:

zabbix_get.exe [options]

本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。

2014/09/12 04:17 · Miho Ejima

本ページは2014/08/05時点の原文を基にしておりますので、内容は必ずしも最新のものとは限りません。
最新の情報は、英語版のZabbix2.2マニュアルを参照してください。