Zabbix Documentation 1.8

3.04.04.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.44.2Guidelines

User Tools

Site Tools


Sidebar

jp:manual:tutorials

7 チュートリアル

本章では、もっとも一般的な作業手順について説明します。

7.1 Zabbixエージェントの拡張

ここでは、Zabbixエージェントを機能拡張する詳細な手順について説明します。

ステップ1

必要なパラメータを取得するためのスクリプトまたはコマンドの作成

MySQLサーバが実行したクエリの合計数を取得するためのコマンドの例を以下に示します。

mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"
ステップ2

作成したコマンドをエージェントの設定ファイルに追加

ステップ1で作成したコマンドをzabbix_agentd.confに追加します。

UserParameter=mysql.questions,mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"

mysql.questionsは一意な識別子です。任意の文字列(「queries」など)を指定できます。

zabbix_getユーティリティを使用してこのパラメータをテストします。

ステップ3

Zabbixエージェントのリスタート

エージェントによって設定ファイルがリロードされます。

ステップ4

監視するアイテムの追加

監視するホストに新しくキー「mysql.questions」のアイテムを追加します。アイテムのタイプには、[Zabbixエージェント]または[Zabbixエージェント(アクティブ)]のどちらかを指定する必要があります。

Zabbixサーバで、戻り値のデータ型を正しく設定する必要があることに注意してください。間違って設定すると、Zabbixがデータを受け取ることができません。

2010/08/08 07:10

7.2 ログファイルの監視

ここでは、ログファイルの監視を設定する詳細な手順について説明します。ホストはZabbixフロントエンドで設定済みであるものとします。

ステップ1

Zabbixエージェントの設定

標準の手順に従って、監視するホストにエージェントをインストールおよび設定します。パラメータHostnameは、Zabbixフロントエンドで設定するホストの名前と一致させる必要があります。

また、zabbix_agentd.confにパラメータDisableActiveが設定されていないことを確認します。

ステップ2

ログファイル監視用の新しいアイテムを追加

以下のアイテムパラメータに注意してください。

パラメータ 説明
タイプ 「Zabbixエージェント(アクティブ)」を設定します。
キー 「log[file<,regexp>」を設定します。例: log[/var/log/syslog], log[/var/log/syslog,error]ユーザ「zabbix」には該当ファイルに対する読み取りパーミッションが必要です。パーミッションが付与されていない場合、アイテムのステータスは「取得不可(unsupported)」となります。regexpが指定されている場合、Zabbixエージェントはログファイルのエントリをregexpの正規表現でフィルタリングします。
データ型 「ログ」を設定します。
更新間隔(秒) ログファイルが変更されたかどうかをZabbixエージェントがチェックする間隔を設定します。通常は、できるかぎり早く変更を検出できるように1秒に設定します。
2010/08/08 07:11

7.3 リモートコマンド

ここでは、イベント発生時にあらかじめ定義したコマンドをリモート実行するように設定する詳細な手順について説明します。Zabbixは設定済みで、動作しているものとします。

ステップ1

Zabbixエージェントでリモートコマンドを有効にします。zabbix_agentd.confでパラメータEnableRemoteCommands=1が設定され、コメントアウトが解除されていることを確認してください。パラメータを変更した場合は、エージェントのデーモンをリスタートします。

ステップ2

[設定] → [アクション]でオペレーションタイプを選択して新規アクションを設定します。

以下のアクションパラメータに注意してください。

パラメータ 説明
オペレーションのタイプ 「リモートコマンド」を設定します。
リモートコマンド 1行に1つずつリモート実行するコマンドを指定します。例: host:/etc/init.d/apache restartリモートコマンドにはマクロも使用できます。

リモートコマンドの構文を以下に示します。

リモートコマンド 説明
<host>:<command> コマンド「command」はホスト「host」上で実行されます。
<group>#<command> コマンド「command」はホストグループ「group」に属する全てのホスト上で実行されます。

IPMIリモートコマンドの構文を以下に示します。

リモートコマンド 説明
<host>:IPMI <ipmi control> [value] この構文は、単一のホストでIPMIコマンドを実行するためのものです。サポートされているIPMIコントロール: 「reset」、「power」サポートされている値: 「on」、「off」、または数値(デフォルトは1)例: Server restart: host:IPMI reset on; Server reboot: host:IPMI power off
<group>#IPMI <ipmi control> [value] この構文は、ホストグループの全てのホストに対してIPMIコマンドを実行するためのものです。
Zabbixエージェントは、コマンドをバックグラウンドで実行します。Zabbixは、コマンドが正常に実行されたかどうかをチェックしません。
アクセス権

設定したコマンドを実行するパーミッションがユーザzabbixに付与されていることを確認する必要があります。sudoを使用して特権コマンドを実行できるようにする方法もあります。To configure access, execute as root:

# visudo 

Example lines that could be used in sudoers file:

#「zabbix」ユーザがパスワードなしですべてのコマンドを実行できるようにする設定
zabbix ALL=NOPASSWD: ALL
#「zabbix」ユーザがパスワードなしでapacheをリスタートできるようにする設定
zabbix ALL=(ALL) /etc/init.d/apache restart
リモートコマンドの文字数制限は、バージョン1.4以前では44バイト、1.4以降は255バイトです。
例1

特定の条件が成立したときにWindowsをリスタートするアクションの設定例

Zabbixが問題を検出した場合に自動的にWindowsをリスタートするには、以下のアクションを定義します。

パラメータ 説明
オペレーションのタイプ 「リモートコマンド」を設定します。
リモートコマンド host:c:\windows\system32\shutdown.exe –r –f
Replace 'host' with Zabbix hostname of Windows server.
2010/08/08 07:12

7.4 Windowsサービスの監視

ここでは、Windowsサービスの監視を設定する詳細な手順について説明します。ZabbixサーバとZabbixエージェントは設定済みで、動作しているものとします。

ステップ1

サービス名の取得

サービス名を取得するには、サービスのMMC(Microsoft管理コンソール)に移動して、ステータス(開始または停止)を監視するサービスのプロパティを表示します。「全般」タブに「サービス名」というフィールドがあります。その値をカッコ内に記述します。たとえば、「Workstation」サービスを監視する場合、サービス名はlanmanworkstationになります。

ステップ2

サービス監視用のアイテムの追加

キーに「service_state[lanmanworkstation]」、データ型に「数値(整数)」、値のマッピングの使用に「Windows service state」を設定してアイテムを追加します。

2010/08/08 07:15