CentOS 7にZabbix 3.0をインストールしてみる

先日のOSC 2016 Tokyo/Springを見に行った際、Zabbix 3.0が展示されていたのだけど、グラフとかが結構綺麗になってたり、エージェント⇔サーバ間の通信が暗号化されたらしいと色々かわったようなので、入れてみる事にする。インストール先は、いつもどおりCentOS 7とする。なお、事前にyum updateを実施済とする。

さすがにZabbix、リリース直後でも日本語の情報が多いので、今回は以下のページを参考に進めていった。

1.Zabbixサーバインストール

まずは、Zabbixサーバに必要となる前提パッケージをインストールする。

yum -y install epel-release
yum -y install httpd php php-devel php-mysql php-xml php-mbstring php-mcrypt php-gd zlib-devel mariadb-devel mariadb-server libxml2 libxml2-devel net-snmp net-snmp-devel libcurl libcurl-devel

次に、以下のコマンドでSELinuxの無効化、Firewalldの設定を実施する。

setenforce 0
sed -i.bak "/SELINUX/s/enforcing/disabled/g" /etc/selinux/config
firewall-cmd --add-service=http --zone=public --permanent
firewall-cmd --add-port=10050/tcp --zone=public --permanent
firewall-cmd --add-port=10051/tcp --zone=public --permanent
firewall-cmd --reload

では、Zabbix 3.0をインストールする。
3.0系のリポジトリはすでに用意されているらしいので、それを使ってyumでインストールを行う。

yum -y install http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-web-japanese zabbix-agent

Zabbixのインストール完了後、以下のコマンドで利用するテーブルやユーザを作成し、その他設定を追加する。
なお、ここではmysql_secure_installationを行わずに設定している(パスワード無しでコマンドを実行している)が、実際に設定する際は後からでもいいから必ず設定しておくこと。

cat <<EOF > /etc/my.cnf.d/server.cnf
[mysqld]
character-set-server = utf8
collation-server = utf8_bin
skip-character-set-client-handshake
innodb_file_per_table
EOF
systemctl restart mariadb
mysql -uroot -e "create database zabbix;grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix_password';"
zcat /usr/share/doc/zabbix-server-mysql-3.?.?/create.sql.gz | mysql -uroot zabbix
sed -i '/# DBPassword/cDBPassword=zabbix_password' /etc/zabbix/zabbix_server.conf
sed -i '/date.timezone/a\        php_value\ date.timezone \Asia\/Tokyo' /etc/httpd/conf.d/zabbix.conf

最後に、Zabbixを動作させるための各種デーモンを起動させる。

systemctl restart zabbix-server
systemctl enable zabbix-server
systemctl restart zabbix-agent
systemctl enable zabbix-agent
systemctl restart httpd
systemctl enable httpd
systemctl restart mariadb
systemctl enable mariadb

2.初期設定(Webコンソールから)

さて、次にZabbixのWebコンソール(http://ZabbixサーバIPアドレスorhostname/zabbix/)にアクセスし、初期設定を行う。

ステータスチェックで、全てOKであることを確認。

Zabbixで利用するMariaDBの設定。パスワードには、データベース用のパスワードを指定する。

Nameには監視時の任意の名称を設定出来る。
特に希望がなければそのまま次へ。

設定内容の確認。

設定が完了した旨のメッセージが表示される。

実際にコンソールにログインをする。
初期ID/PWは「Admin/zabbix」となっている。

ログイン直後は英語になっている。

右上のプロフィール設定(カーソル合わせるとAdminと表示されるアイコン)から、日本語化する。

[設定] - [ホスト]を開き、自分自身の監視を行うよう設定する。

無効となっている箇所をクリックすれば有効化できる。

ひとまず、これで最低限の使用が可能になった。