CentOS5.6にZabbix-1.8.5をインストール
Nagios + snmpという組み合わせで監視サーバを構築してみたが
UIの使い勝手がイマイチしっくりこなかったので
前も使っていたZabbixで再構築してみた。
Apache,MySQL,PHPはインストール済みのサーバでの手順。
[サーバ側]
1.必要パッケージのインストール
$ yum install curl-devel $ yum install net-snmp*
2.Zabbixユーザーを作成してパスワード設定
$ useradd zabbix $ passwd zabbix
3.Zabbixのファイルをダウンロード
$ wget http://prdownloads.sourceforge.net/zabbix/zabbix-1.8.5.tar.gz $ tar xvzf zabbix-1.8.5.tar.gz
4.MySQLにZabbix用のユーザーとデータベースを作成
$ mysql -uroot mysql mysql> CREATE DATABASE zabbix character set utf8; mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbix' WITH GRANT OPTION; mysql> FLUSH PRIVILEGES;
5.Zabbixのダウンロードしたファイル群に初期データが入った.sqlファイルがあるので、作ったデータベースにインポート
$ cd zabbix-1.8.5 $ cat create/schema/mysql.sql | mysql -uroot zabbix $ cat create/data/data.sql | mysql -uroot zabbix $ cat create/data/images_mysql.sql | mysql -uroot zabbix
8.オプションを指定してコンパイル。
$ ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl $ make install
9./etc/servicesにZabbixの設定を追加
$ vim /etc/services zabbix-agent 10050/tcp # Zabbix Agent zabbix-agent 10050/udp # Zabbix Agent zabbix-trapper 10051/tcp # Zabbix Trapper zabbix-trapper 10051/udp # Zabbix Trapper
10.ログ出力用ディレクトリ作成
$ mkdir /var/log/zabbix
11.Zabbixの設定ファイル保存用ディレクトリを作成して、ソースから設定ファイルをコピーして設置
Zabbixのパフォーマンスを最大限に高めるには、デフォルトパラメータを変更する必要。今回はとりあえずデフォルトのまま。
$ mkdir /etc/zabbix $ cp misc/conf/zabbix_agentd.conf /etc/zabbix/ $ cp misc/conf/zabbix_server.conf /etc/zabbix/
12.zabbix_server.confにログの出力先のファイルパスを追記
$ vim /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log
13.zabbix_server起動
$ zabbix_server
[エージェント側]
1.Zabbixユーザーの作成、ソースのダウンロード、解凍するまでは同じ手順なので省略。
2.コンパイルする
$ cd zabbix-1.8.5 $ ./configure -enable-agent $ make
3.zabbix_xxxコマンドを専用のディレクトリを作ってコピー
$ mkdir -p /usr/local/zabbix/bin $ chmod -R 777 /usr/local/zabbix/bin $ cp /usr/local/sbin/zabbix_agent* /usr/local/zabbix/bin/ $ cp /usr/local/bin/zabbix_* /usr/local/zabbix/bin/
4./etc/servicesにZabbixの設定を追加
$ vim /etc/services zabbix_agent 10050/tcp # Zabbix Agent zabbix_trap 10051/tcp # Zabbix Agent
5.ログ出力先ディレクトリ作成
$ mkdir /var/log/zabbix
6.エージェント用の設定ファイルをコピーして設置
$ mkdir /etc/zabbix $ cp /usr/local/src/zabbix-1.8.5/misc/conf/zabbix_agentd.conf /etc/zabbix
7.設定ファイルにZabbixサーバのIPアドレスを指定
$ vim /etc/zabbix/zabbix_agentd.conf Server='xxx.xxx.xxx.xxx' LogFile=/var/log/zabbix/zabbix_agentd.log
8.エージェント起動
$ zabbix_agentd
9.起動できているか確認
$ ps aux | grep zabbix
[Webインターフェイス]
1.インターフェイスのプログラムファイル群をブラウザから参照させるディレクトリへコピー
$ cp -R /usr/local/src/zabbix-1.8.5/frontends/php /var/www/zabbix
2.Apacheの設定
$ vim /usr/local/apache/conf.d/zabbix.conf Alias /zabbix "/var/www/zabbix" <Directory "/var/www/zabbix"> Options ExecCGI AllowOverride None Order allow,deny Allow from all </Directory>
3.接続先データベース情報を設定ファイルに追記
$ vim /var/www/zabbix/include/db.inc.php <?php $DB_TYPE = 'MYSQL'; $DB_SERVER = 'localhost'; $DB_DATABASE = 'zabbix'; $DB_USER = 'zabbix'; $DB_PASSWORD = 'zabbix';
4.ブラウザにアクセスして設定を進める。
5.環境の前提条件が表示されるので、適時php.iniを編集
vim /usr/local/php/lib/php.ini memory_limit = 256M upload_max_filesize = 16M post_max_size = 32M max_execution_time = 600 max_input_time = 600
6.ブラウザから進むと環境情報の入力を求められて、設定ファイルができる。ダウンロードしたらconf/へアップ
あとはブラウザからホストのグループなど設定すればOK。
改めて使ってみて稼働状況やリソース消費の見易さと多機能性から
Zabbixの方がやっぱり運用しやすいと思いました。
でもNagiosの方が大手で使われている記事をたくさんみます、、、