Debian Wheezy にZabbix2.2をインストールしてみる


##経緯
いつもはCentOSばかりを利用している。
Debianを運用する機会も出てきて、せっかくならどんな感じなのか体験したい。
→ Mac/Vagrantの[Vagrantboxes](http://www.vagrantbox.es/)でDebianを利用できる。
 → 試してみよう！(インストール体験記事なので、ご指摘あれば下さい。)

[英語環境のVagrantboxを日本語化する - Debian編](http://qiita.com/AH_korikori/items/fcfca95dbdf83448c725)の続きです。
というより、Zabbixを日本語対応したい為にロケールを設定しました。

##環境
Mac OS X 10.9.2 / Vagrant 1.4.3
Debian Wheezy 7.2 amd64 (VirtualBox Guest Additions 4.3.0) (2013/10/19)

なお、Debianパッケージをアップデートして、

```debian_version
$ cat /etc/debian_version
7.4
```

となっています。

なお、コンソール上のメッセージは

```
$ export LC_MESSAGES="en_US.UTF-8"
```

を入力して英語にしてあります。

##Zabbixのインストール
事前にローカルIPを事前にVagrantfileに設定しておきます。

[Zabbixのレポジトリ](http://repo.zabbix.com/)よりdebパケージをダウンロードする。
(2014/4/5現在のパッケージです。)

```
$ wget http://repo.zabbix.com/zabbix/2.2/debian/pool/main/z/zabbix-release/zabbix-release_2.2-1+wheezy_all.deb
```

ダウンロードしたパケージをインストールする。

```
$ sudo dpkg -i zabbix-release_2.2-1+wheezy_all.deb
$ sudo aptitude update
```

依存関係を一括してインストールしてくれる(?)aptitudeを利用しています。

MySQLのインストールを行う。

```
$ sudo aptitude install mysql-server
```

mysql-server をインストールする際、

![MySQL_root_PASS1](https://qiita-image-store.s3.amazonaws.com/0/23370/48e49d94-4c8c-542d-7c42-cd26891c07b5.png)
![MySQL_root_PASS2](https://qiita-image-store.s3.amazonaws.com/0/23370/b3cbe611-2a81-974b-318a-0f4da065eeec.png)


MySQLのrootパスワードを聞かれるので入力する。

インストールされたMySQLのバージョンを確認する。

```
$ mysql --version
mysql  Ver 14.14 Distrib 5.5.35, for debian-linux-gnu (x86_64) using readline 6.2
```

/etc/mysql/my.cnf にエンコードパラメータを設定する。
※ MySQL5.5から記述が変わったので注意。（別の機会にハマった経験があります。汗）

MySQLのバージョンが5.4までの場合：

```my.cnf
[mysqld]
default-character-set=utf8
```

MySQLのバージョンが5.5以降の場合：

```my.cnf
[mysqld]
character-set-server=utf8
```

設定を反映してMySQLを再起動する。
MySQLを再起動したところ、起動時に以下のメッセージが表示された。

```
$ sudo /etc/init.d/mysql restart
[info] Checking for tables which need an upgrade, are corrupt or were not closed cleanly..
```

ただ、参考サイト曰く、起動時のスクリプトでechoしているだけのようなので、気にせず進めます。
[Checking for tables which need an upgrade, are corrupt or were not closed cleanlyのメッセージは気にしない](http://setting-tool.net/mysql-debian-init.d)

いよいよ、Zabbixをインストールします。

```
$ sudo aptitude install zabbix-server-mysql zabbix-frontend-php
```

途中で、zabbix-serverのmysqlをスクリプトで設定しますか？という表示が出る。

![Config_Zabbix-server-mysql_script](https://qiita-image-store.s3.amazonaws.com/0/23370/6c1ae83b-f56a-2fd1-07e4-f450ae582b90.png)


YESを選択。

![rootPASS](https://qiita-image-store.s3.amazonaws.com/0/23370/488fb080-c1a1-9f58-d780-c048b4337115.png)

MySQLのデータベースとユーザ(zabbix)を作成するので、パスワードを入力して！という表示。
MySQLインストール時に入力したrootパスワードを入力。

![zabbix-mysql-pass](https://qiita-image-store.s3.amazonaws.com/0/23370/a5794f20-cd08-644c-b9ee-e5d11eedc8a7.png)

zabbixデータベースのパスワードを設定する。
空行だとパスワードを自動生成してくれる。

PHPのタイムゾーンを変更する。

```zabbix
$ sudo vi /etc/apache2/conf.d/zabbix
```

デフォルトでは、
\# php_value date.timezone Europe/Riga
とコメントアウトされて、ヨーロッパで設定されているので、
コメントを外して、 php_value date.timezone Asia/Tokyo とする。

apache2を再起動して設定を反映する。

```
$ sudo /etc/init.d/apache2 restart
```

ブラウザからZabbixのWebインターフェイス
( http://hostname/zabbix/ )にアクセスする。

![Zabbix-Web設定1](https://qiita-image-store.s3.amazonaws.com/0/23370/eb2e518e-cfbf-c946-d491-eeda7af084f0.png)

Nextを選択。

![Zabbix-Web設定2](https://qiita-image-store.s3.amazonaws.com/0/23370/820fb218-ccdb-7066-f840-f59b76c700d1.png)

Zabbixで必要な設定が全てOKなのを確認し、Nextを選択。
(NGがある場合、Nextは選択できないと思います。)

![Zabbix-Web設定3](https://qiita-image-store.s3.amazonaws.com/0/23370/d96226b7-a43b-490c-7127-442f3e5b2626.png)

利用するデータベース:MySQL or PostgreSQL
データベースのhost:(今回はこのサーバ内なので)localhost
データベースがアクセスするポート番号:デフォルトなので0
データベースの名前:zabbix
データベースのユーザ:zabbix
データベースのパスワード:
(パスワードは空行で設定した場合、以下を見て確認する。)

```zabbix_server.conf
$ sudo cat /etc/zabbix/zabbix_server.conf
DBPassword=(設定されたパスワード)
```

Test connectionを選択し、データベースへの接続確認をします。
OK と表示されれば接続OKとなり、Nextをクリックします。

![Zabbix-Web設定4](https://qiita-image-store.s3.amazonaws.com/0/23370/4323f296-0cad-60ff-4b72-abac06d86e31.png)

ホスト名とポートの設定画面です。Zabbixの名前も設定できますが、任意です。

![Zabbix-Web設定5](https://qiita-image-store.s3.amazonaws.com/0/23370/0a595b16-f686-be65-c3f1-a4dc53953e58.png)

今回設定した内容を確認します。

![Zabbix-Web設定6](https://qiita-image-store.s3.amazonaws.com/0/23370/2715751f-7e65-0117-66f4-c7342390ee38.png)

これで設定完了です。

サーバの情報取得を行うagentも忘れずにインストールしておきます。

```
$ sudo aptitude install zabbix-agent
```

##Webインターフェイスの日本語化
日本語化する為に必要な日本語フォントをインストールします。

```
$ sudo aptitude install ttf-vlgothic otf-ipafont-gothic
```

Webインターフェイスの言語設定を日本語にも対応させる為、
zabbix-frontend-php を再設定します。

```
$ sudo dpkg-reconfigure zabbix-frontend-php
[ ok ] Restarting web server: apache2 ... waiting .
update-alternatives: using /etc/alternatives/fonts-japanese-gothic.ttf to provide /usr/share/zabbix/fonts/graphfont.ttf (zabbix-frontend-font) in auto mode
```

apache2再起動後、fontメッセージが出れば成功です。

Webインターフェイスにログイン(ID:Admin / PASS:zabbix)し、
右上にある Profile をクリック。
Language の箇所を Japanese (ja_JP) に変更してSaveをクリック。
そうすればZabbixの日本語化が完了します。

(スクリプトを使えば)CentOSよりも簡単でビックリしました。

##参考
[Zabbix公式ドキュメント - 2.2 Installation from packages](https://www.zabbix.com/documentation/2.2/manual/installation/install_from_packages)