Zabbixをインストールする

先日Raspberry Piに入れてみたZabbixサーバーですが、バージョンが1.8.11なことや、ブラウザから確認できるフロントエンドが遅いことから別のマシンにインストールして稼働させることにしました。
使うマシンはディスプレイを取り外したThinkPad X60s(Core Solo U1300、メモリ512MB、40GB HDD)です。
環境はdebian 7.1のi686環境になっています。

backportsの準備

wheezy-backportsを利用できるように/etc/apt/sources.listを編集します。

# nano -w /etc/apt/sources.list

下記2行を最後に追加しておきます。(ftp.riken.jpに接続している場合)

deb http://ftp.riken.jp/Linux/debian/debian/ wheezy-backports main
deb-src http://ftp.riken.jp/Linux/debian/debian/ wheezy-backports main

sources.listを書き替えたらaptの情報を更新しておきます。

# apt-get udate

Zabbixサーバーのインストール

aptでインストールできるようになったはずなのでapt-getしてみます。

# apt-get install zabbix-server-mysql zabbix-frontend-php

MySQLApachePHPなどと一緒にインストールされるはずです。いろいろなパッケージを取ってくるので回線が細かったりマシンパワーのプアな環境では時間がかかると思います。
今回の環境ではZabbix 2.0.6がインストールされました。

MySQLの設定

MySQLにZabbixのデータベースが作成されていないので手動で作成しておきます。

# mysql -u root -p
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '%パスワード%';
mysql> flush privileges;
mysql> quit

続いて初期設定用のスキーマMySQLに登録します。

# gunzip /usr/share/zabbix-server-mysql/schema.sql.gz
# gunzip /usr/share/zabbix-server-mysql/images.sql.gz
# gunzip /usr/share/zabbix-server-mysql/data.sql.gz
# 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

設定ファイルの変更とサーバーの起動

MySQLで登録したユーザー「zabbix」のパスワード「%パスワード%」を/etc/zabbix/zabbix_server.confに記録します。

# nano -w /etc/zabbix/zabbix_server.conf

DBPasswordの項目を探して

DBPassword=%パスワード%

インストール直後はZabbixが起動しないようになっているので設定ファイルを変更して起動させます。

# nano -w /etc/default/zabbix-server
START=yes
# /etc/init.d/zabbix-server start

pgrep zabbixしてプロセス番号がいっぱい出てくれば成功です。

PHPの設定

フロントエンドを使うにあたってデフォルトのphp.iniではエラーが発生するので設定ファイルを変更しておきます。

# nano -w /etc/php5/apache2/php.ini
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone = "Asia/Tokyo"

Webフロントエンドを設定する

フロントエンドはhttp://%サーバーIP%/zabbixにアクセスすれば表示されるはずですが、これもインストール直後はアクセスしても404が返ってくるだけなのでアクセスできるように設定をします。

# cp /usr/share/doc/zabbix-frontend-php/examples/apache.conf /etc/apache2/conf.d/zabbix.conf
# /etc/init.d/apache2 restart

これでhttp://%サーバーIP%/zabbixにアクセスした時にフロントエンドが表示されるようになるはずです。
ブラウザでアクセスしたら「Next」を押していって、「3. Configure DB connection」の画面でPasswordの項目に入力をして「Test connection」をクリックして「OK」が表示されれば問題なしです。
さらに「Next」をクリックします。
「6. Install」の項目で/etc/zabbix/zabbix.conf.phpが作成されず、「Fail」が表示されてしまったら「Download configuration file」をクリックして設定ファイルをダウンロードし、適宜の方法で/etc/zabbix/に配置して「Retry」すれば大丈夫だと思います。


ログイン画面が出てきますが、標準ではユーザー名「admin」、パスワード「zabbix」でログインできます。
ログイン後に右上の「Profile」のページから言語を日本語にすると表示されるページの内容が日本語になります。必要に応じて変更しておきます。


Zabbixサーバー自身の監視を開始するためにまず、「設定」タブの「ホスト」を選択して「ステータス」にある「無効」をクリックして「有効」に変更します。

Zabbix-agentのインストール

Agentをインストールします。

# apt-get install zabbix-agent

pgrep zabbix_agentdでプロセス番号がいくつか出てくればインストール完了です。
これでZabbixサーバー自体を監視できるようになるはずです。

まとめ(?)

さて、インストールしただけではなにもおこらないので、各種サーバーにAgentをインストールしてZabbixで監視するように設定してあげなければいけません。
この辺はまだ調べ中なのでおいおい設定していくことにします。