Zabbix

提供: ArchWiki
ナビゲーションに移動 検索に移動

Zabbix は大規模ネットワークのためのフル機能の監視ソリューションです。様々な方法のあらゆるネットワークデバイスを嗅ぎ分けて、マシンの状態とアプリケーションをチェックし、事前に設定したアラームメッセージを送信したり複雑なデータの相関関係を視覚化することができます。

サーバーのセットアップ

インストール

Zabbix-server のインストール

zabbix-server パッケージをインストールしてください。MariaDB あるいは PostgreSQL を使用するスクリプトが含まれています。この記事では MariaDB を使用します。

Zabbix-frontend のインストール

zabbix-frontend-php パッケージをインストールしてください。

zabbix-frontend を使用する場合 PHP をサポートしているウェブサーバーを選ぶ必要があります。例えば:

またはウェブサーバーカテゴリにある他のサーバーを選んで下さい。

設定

Zabbix のウェブアプリケーションディレクトリから http のドキュメントルートへシンボリックリンクを作成してください、例:

$ ln -s /usr/share/webapps/zabbix /srv/http/zabbix

/etc/php/php.ini で最低でも以下の変数を設定するようにします:

/etc/php/php.ini
extension=bcmath.so
extension=gd.so
extension=sockets.so
extension=mysqli.so
extension=php_gettext.so
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = "UTC"

この例では、ローカルホストにパスワードが test のユーザー zabbixzabbix という名前の MariaDB データベースを作成してデータベースのテンプレートをインポートします。この接続は後で Zabbix サーバーとウェブアプリケーションによって使われます:

$ mysql -u root -p -e "create database zabbix character set utf8"
$ mysql -u root -p -e "grant all on zabbix.* to zabbix@localhost identified by 'test'"
$ mysql -u zabbix -p zabbix < /usr/share/zabbix-server/mysql/schema.sql
$ mysql -u zabbix -p zabbix < /usr/share/zabbix-server/mysql/images.sql
$ mysql -u zabbix -p zabbix < /usr/share/zabbix-server/mysql/data.sql

起動

MariaDB を使用する場合 zabbix-server-mysql サービスを起動有効化してください。

最後に、ローカルウェブサーバーを通して Zabbix にアクセスできるので (例: http://127.0.0.1/zabbix )、インストールウィザードを完了してフロントエンドにアクセスしてください。デフォルトのユーザー名は Admin でパスワードは zabbix です。

手順が全て説明されている公式ドキュメントへのリンクは下の参照を見て下さい。

エージェント (クライアント) のセットアップ

インストール

各監視先マシンに zabbix-agent パッケージをインストールしてください。zabbix-server をインストールした監視サーバーにもインストールしてください。zabbix-server には zabbix-agent は含まれていません。

設定

zabbix_agentd.conf を編集して server 変数をあなたの監視サーバーの IP に置き換えてください。この IP のサーバーだけがエージェントにアクセスできるように許可されます。

/etc/zabbix/zabbix_agentd.conf
Server=<IP of Zabbix server>
ServerActive=<IP of Zabbix server>

さらに監視するデバイスのポート 10050 がブロックされていないこと、適切に開かれていることを確認してください。

起動

zabbix-agent サービスを起動有効化してください。

ヒントとテクニック

Zabbix エージェントのデバッグ

クライアント側で、次のようにアイテムの状態を確認できます:

$ zabbix_agentd -t hdd.smart[sda,Temperature_Celsius]

サーバー・監視側では、次を試してみて下さい:

$ zabbix_get -s <hostname_or_IP> -k hdd.smart[sda,Temperature_Celsius]

ArchLinux のシステムアップデートの監視

以下は UserParameter パラメータを使って ArchLinux クライアントのシステムアップデートを監視する方法です:

/etc/zabbix/zabbix_agentd.conf
Include=/etc/zabbix/zabbix_agentd.conf.d/*.conf
/etc/zabbix/zabbix_agentd.conf.d/archlinuxupdates.conf
UserParameter=archlinuxupdates,checkupdates | wc -l

zabbix-agentd を再起動して設定を適用してください。後でウェブフロントエンドで使用するアイテムのキーワードは archlinuxupdates です。利用可能なアップデートの数が返ってきます。

トラブルシューティング

データベースのインポート時に "Specified key was too long; max key length is 767 bytes" というエラーが表示されることがあります。MariaDB データベースのコードページ設定を変更することで解決できます: MySQL#UTF8MB4 を使う

参照