Ubuntu13.04上のZabbix管理画面をnginx&php5-fpmにする


先日、Zabbixの管理画面をApache上で動くように設定したのですが、redmineをunicorn+nginxで動かすようにした手前、Apacheからnginxへの移行を行った際の備忘録です。

コンセプトとして、apt-getでインストールしていきます。

  1. Zabbix Server、Agentのインストールはこちらを参照
  2. nginx、php5-fpmのインストール
  3. zabbixのウェブ画面のインストーラを念の為に再実行
  4. 自動起動するように設定

Zabbix Server、Agentのインストール

こちらを参照して、Server、Agentのインストールを済ませておきます。

nginx、php5-fpmのインストール

sudo apt-get install nginx, php5-fpm

/etc/php5/fpm/php.ini

date.timezone = "Asia/Tokyo"
post_max_size = 16M
max_execution_time = 300
max_input_time = 300

/etc/nginx/fastcgi_params に下記のように追加しておく。

server {
listen 80;

root /usr/share/zabbix;
index index.html index.htm index.php;

server_name zabbix.senritu.com;

access_log /var/log/nginx/zabbix.senritu.com_access.log;
error_log /var/log/nginx/zabbix.senritu.com_error.log;

proxy_connect_timeout 60;
proxy_read_timeout 60;
proxy_send_timeout 60;

location ~ .php$ {
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}

location ~ /.ht {
deny all;
}
}

php5-rpmと、nginxを再起動

/etc/init.d/php5-fpm restart

# トラぶった時はstop>startの方が心なしか安定していたので。
/etc/init.d/nginx stop && /etc/init.d/nginx start

zabbixのウェブ画面のインストーラを念の為に再実行

起動したら、普通にログインできるはずですが、PHPの設定ファイルがApacheの時と異なっているので、念のために再度インストーラを実行して、環境不備が無いかを確認しておきます。

Zabbixログイン > 管理 >インストール

で初回インストールの時と同じ画面が出てきます。

zabbix_1

phpの設定が間違っていたりすると、警告を出してくれる。nginx+php5-fpmにした後も、下記のように幾つか指摘されていました。

zabbix_2

sudo vi /etc/php5/fpm/php.ini

/etc/php5/fpm/php.ini ファイルを編集します。

date.timezone = "Asia/Tokyo"
post_max_size = 16M
max_execution_time = 300
max_input_time = 300

apacheを再起動してエラーが直ったのでそのまますすめます。

zabbix_3

DBの設定情報を聞いてくるので、先にDB作成時に設定した情報を入力します。

zabbix_4

Test connectionボタンを押して、OKと出れば、そのままNextで先に進みむと、zabbixサーバの情報を聞かれるので入力します。localhostで良いと思います。

zabbix_5

最終確認画面。

zabbix_6

zabbix_7

Nextで次に行ったら、/etc/zabbix/zabbix.conf.php を書き込めないとエラーを出しました。本当はよろしくないのですが、セットアップ中のみパーミッションを777にしておきます。

cd /etc/zabbix
sudo touch zabbix.conf.php
sudo chmod 777 zabbix.conf.php

でRetryを推したら問題なく設定できました。

zabbix_8

忘れずにパーミッションを戻しておきます。

cd /etc/zabbix
sudo chmod 644 zabbix.conf.php

自動起動するように設定

OS起動時に自動起動するようにしてから、OS起動直後にサービスが上がっていることを確認する為に再起動します。

sudo apt-get install sysv-rc-conf
sudo sysv-rc-conf apache2 off
sudo sysv-rc-conf --level 35 zabbix-server on
sudo sysv-rc-conf --level 35 zabbix-agent on
sudo sysv-rc-conf --level 35 php5-fpm on
sudo sysv-rc-conf --level 35 nginx on
sudo reboot

zabbixは設定項目が多いので、下記のサイトを参考に設定してください。

設定の為に参考になるサイトと書籍

ブックマーク へのパーマリンク.

コメントを残す

メールアドレスが公開されることはありません。