Zabbix
2015/9/23更新
対応バージョン: 2.2.7
Ubuntu 15.04へのZabbixの導入手順について説明する。監視設定についてはここでは扱わず、導入手順のみ記す。
全てパッケージでのインストールとなるので関連する各プロダクトは以下のバージョンとなる。尚、Apacheはすでにインストールされているものとし、手順は割愛する。
Zabbix 2.2.7
Apache 2.4.10 (インストール済)
PHP 5.6.4
MySQL 5.6
インストール
以下のパッケージをインストールすると関連する全てのパッケージがインストールされる。
% sudo apt install zabbix-server-mysql zabbix-frontend-php php5-mysql
Zabbixサーバ自身を監視する場合はzabbix-agentもインストールする。
% sudo apt install zabbix-agent
PHP設定
Zabbixサーバの動作に必要なPHPのパラメータを数ヶ所変更し、タイムゾーンをAsia/Tokyoに設定する。
% sudo cp -p /etc/php5/apache2/php.ini{,.org}
% sudo vi /etc/php5/apache2/php.ini
:
372 max_execution_time = 30 <- 300に変更
:
382 max_input_time = 60 <- 300に変更
:
660 post_max_size = 8M <- 16Mに変更
:
884 ;date.timezone = <- コメントを外してAsia/Tokyoを設定
:
% diff /etc/php5/apache2/php.ini{,.org}
372c372
< max_execution_time = 300
---
> max_execution_time = 30
382c382
< max_input_time = 300
---
> max_input_time = 60
660c660
< post_max_size = 16M
---
> post_max_size = 8M
884c884
< date.timezone = Asia/Tokyo
---
> ;date.timezone =
Apache設定
/zabbixへのアクセスを/usr/share/zabbixにAliasする。
% cat /usr/share/doc/zabbix-frontend-php/examples/apache.conf
# Define /zabbix alias, this is the default
<IfModule mod_alias.c>
Alias /zabbix /usr/share/zabbix
</IfModule>
% sudo cp /usr/share/doc/zabbix-frontend-php/examples/apache.conf /etc/apache2/sites-enabled/zabbix.conf
設定を有効にするためにApacheを再起動する。
% sudo systemctl restart apache2
MySQLサーバ設定
MySQLサーバの文字コードをUTF-8に設定する。
% sudo cp -p /etc/mysql/conf.d/mysql.cnf{,.org}
% sudo vi /etc/mysql/conf.d/mysql.cnf
:
(以下の行を追加)
[mysqld]
character-set-server = utf8
% diff /etc/mysql/conf.d/mysql.cnf{,.org}
2,4d1
<
< [mysqld]
< character-set-server = utf8
設定を有効にするためにMySQLを再起動する。
% sudo systemctl restart mysql
MySQL初期データベース作成
Zabbixはデフォルトで「zabbix」というデータベースに設定や監視情報を格納するのでこのデータベースを作成して管理ユーザを作成する。
% mysql -u root -p Enter password: ***** : mysql> create database zabbix; mysql> grant all privileges on zabbix.* to zabbix@'localhost' identified by '<任意のパスワード>'; mysql> grant all privileges on zabbix.* to zabbix@'%' identified by '<任意のパスワード>'; mysql> flush privileges; mysql> exit
データベースを作成したら初期データを定義する。
% cd /usr/share/zabbix-server-mysql % zcat schema.sql.gz | mysql -u root -p zabbix Enter password: ***** % zcat images.sql.gz | mysql -u root -p zabbix Enter password: ***** % zcat data.sql.gz | mysql -u root -p zabbix Enter password: *****
Zabbixサーバ設定
データベースの用意ができたらZabbixサーバを動作させるための設定を行う。といってもZabbixが動作するホストとデータベース作成時に指定したパスワードを設定するだけでよい。
% sudo cp -p /etc/zabbix/zabbix_server.conf{,.org}
% sudo vi /etc/zabbix/zabbix_server.conf
:
79 # DBHost=localhost
80
81 DBHost=localhost <- 追加
:
117 # DBPassword=
118
119 DBPassword=<パスワード> <- 追加
:
% diff /etc/zabbix/zabbix_server.conf{,.org}
81,82d80
< DBHost=localhost
<
118,119d115
<
< DBPassword=<パスワード>
また、Webインタフェースにて作成される/etc/zabbix/zabbix.conf.phpの空ファイルを作っておき、Apacheのプロセスが書き込みできるようにしておく。
% sudo touch /etc/zabbix/zabbix.conf.php % sudo chown www-data:www-data /etc/zabbix/zabbix.conf.php
Zabbixサーバ起動
Zabbixは事前にデータベースの準備等が必要になることからデフォルトでは起動しない設定になっているのでこれを起動する設定に変更する。
% sudo sed -i".org" -e "s/^START=no/START=yes/" /etc/default/zabbix-server
% diff /etc/default/zabbix-server{,.org}
11c11
< START=yes
---
> START=no
ここまでできたらZabbixサーバを有効化して起動する。
% sudo systemctl enable zabbix-server % sudo systemctl start zabbix-server
以下のURLにアクセスしてZabbixのWebインタフェースが表示されればサーバ側の設定は完了である。
http://localhost/zabbix
ウィザードに従って画面を進めていくとログイン画面にたどり着く。ここでのユーザ/パスワードはadmin/zabbixなのでログインしたらすぐに変更すること。
尚、Zabbixの監視設定については冒頭の通り割愛する。以下にIDCFクラウドの仮想サーバ(CentOS 7)上にZabbixサーバを導入する手順があるので参考にされたい。
関連資料・記事
Zabbixエージェント起動
Zabbixサーバ自身を監視したい場合はZabbixエージェントを動作させる。サーバと同一OS上で動作させる場合は設定ファイルを変更する必要はない。
% sudo systemctl enable zabbix-agent % sudo systemctl start zabbix-agent
参考ページ
オープンソースへの取り組み - ZABBIX大解説 (SCSK)
Zabbix に関する技術情報 (SRA OSS)
Qiita Zabbixタグ (Qiita)