Zabbix 2.5(3.0のα版)をソースからAmazon Linuxにインストールしてみた

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは、川原です。
昨日、Zabbix 3.0のα版である2.5のリリースがアナウンスされました。
特に大きな問題がなければ、このあと、1〜2週間くらいの期間を経て本リリースされると思います。
今回、メジャーバージョンがあがるということで変更点は結構多いようです。個人的に一番気になった変更点は、やはりフロントエンド周りでしょうか。
ということで、実際にインストールして確認してみましょう。

ソースからインストール

α版ということで、現時点(2015/8/20)ではパッケージ版はなくソース版しか準備されていないようです。 なので、ソースからインストールしてみます。

前提

インストール先のAmazon Linux(EC2)は下記

  • Amazon Linux AMI 2015.03 (HVM)

インストールするZabbixのバージョンは下記

  • 2.5.0

※EC2のセキュリティグループは自分のローカル端末からアクセスできるように適切に設定してあること(ポート80と22が開いていればよいです)

実施

手順は基本的に公式ドキュメントに従います。

#rootにスイッチ
$ sudo su -

#Zabbix実行環境準備
$ yum -y install php56-mysqlnd.x86_64 httpd24.x86_64 php56-common.x86_64 php56-mbstring.x86_64 php56-xml.x86_64 php56-gd.x86_64 httpd24.x86_64 yum  mysql-server

#ソースファイルの取得と展開
$ wget 'http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Development/2.5.0/zabbix-2.5.0.tar.gz'
$ tar -zxvf zabbix-2.5.0.tar.gz

#ユーザー追加
$ groupadd zabbix
$ useradd -g zabbix zabbix

#データベースとユーザーの作成
$ mysql -uroot
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'YOURPASSWORD';
mysql> exit

#スキーマの登録
$ cd <展開ディレクトリ>/database/mysql
$ mysql -uroot zabbix < schema.sql
$ mysql -uroot zabbix < images.sql
$ mysql -uroot zabbix < data.sql

#コンパイル環境準備
$ yum -y install gcc libxml2-devel net-snmp-devel libcurl-devel

#コンパイル準備
$ ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

〜省略〜

***********************************************************
*            Now run 'make install'                       *
*                                                         *
*            Thank you for using Zabbix!                  *
*              <http://www.zabbix.com>                    *
***********************************************************

#コンパイル & インストール
$ make install

何もエラーが出なければ成功です。次には設定ファイルの変更です。

# PHPの設定変更
$ sed -i -e "s/memory_limit = 128M/memory_limit = 256M/g" /etc/php.ini
$ sed -i -e "s/post_max_size = 8M/post_max_size = 16M/g" /etc/php.ini
$ sed -i -e "s/max_execution_time = 30/max_execution_time = 300/g" /etc/php.ini
$ sed -i -e "s/max_input_time = 60/max_input_time = 300/g" /etc/php.ini
$ sed -i -e "s/;date.timezone =/date.timezone = Asia\/Tokyo/g" /etc/php.ini
$ sed -i -e "s/;always_populate_raw_post_data/always_populate_raw_post_data/g" /etc/php.ini

#Zabbix設定ファイルの変更
$ vi /usr/local/etc/zabbix_server.conf
#以下箇所を適切に修正します
#DBName、DBUser、DBPasswordは上のMySQLの設定で行ったデータベース名、ユーザー名、パスワードと整合するように記載
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=YOURPASSWORD

最後にフロントエンドファイルの配置です。

$ mkdir /var/www/html/zabbix
$ cp -a <展開ディレクトリ>/frontends/php/* /var/www/html/zabbix

はい、これで準備完了です。では、動かしてみましょう。

#Zabbixの起動
$ /usr/local/sbin/zabbix_server

#Apacheの起動
$ /etc/init.d/httpd/start

エラーメッセージが出なければ問題ないです。 下記URLにブラウザからアクセスしてみましょう。

http://EC2のグローバルIPアドレス/zabbix/

問題なければ次のような画面が表示されるはずです。

install_1

ログインして日本語表示に変更したのが下記です。一部、文字が豆腐になっている所はありますが、おおよそは大丈夫です。 第一印象として、かなりモダンな外観になったなぁという所です。

mod_2015-08-20_15_11_02

mod_2015-08-20_15_13_00

追記
twitterでフォントの文字化け(豆腐)はグラフフォントの設定をしていないことに起因している旨のコメントを発見しました。 調査して下記の手順により、事象を解消することができました。コメントありがとうございました!

以下、対策の手順です。

$ yum -y install vlgothic-p-fonts
$ cd /var/www/html/zabbix/fonts
$ ln -s /usr/share/fonts/vlgothic/VL-PGothic-Regular.ttf ./VL-PGothic-Regular.ttf

# フォント指定を"DejaVuSans"から"VL-PGothic-Regular"に変更
$ vi /var/www/html/zabbix/include/defines.inc.php 
〜省略〜
//define('ZBX_GRAPH_FONT_NAME',         'DejaVuSans'); // font file name
define('ZBX_GRAPH_FONT_NAME',           'VL-PGothic-Regular'); // font file name
〜省略〜

以下、文字化け(豆腐)が解消された画面キャプチャです。

mod_2015-08-20_16_32_29

旧バージョンとの差異(外観で気付いた点)

手元に古いバージョンの環境として2.2.9の環境がありましたので、そのバージョンとバージョン2.5.0の間の差異として気付いた点を列挙すると以下のような感じです。

  1. 監視データ>概要 のタブに詳細な絞り込みができるフィルタが追加されている。
  2. 監視データ>最新データ のタブにある絞り込みフィルタが改善されている。
  3. 監視データ>トリガー のタブにある絞り込みフィルタが改善されている。
  4. レポート>障害発生数上位100項目 のタブに詳細な絞り込みができるフィルタが追加されている。
  5. レポート>バーレポート のタブがなくなっている。
  6. レポート>アクションログ のタブが追加されている。
  7. 設定>ホスト のタブに「情報」カラムが追加されている。
  8. 設定>メンテナンス タブに「開始日時」、「終了日時」のカラムが追加されている
  9. 管理>通知レポート のタブが レポート>通知レポート に移動している。
  10. 管理>監査 が レポート>監査 に移動している。

まとめ

Zabbix 2.5.0(3.0のα版)をソースからコンパイルしてインストールし、見た目という観点で旧バージョン(2.2.9)との差異を確認してみました。
まだ、3.0の本リリースではありませんが、恐らくは大きく変わることはないだろうと思います。