Zabbix 4.0を入れてみた (ubuntu 18.04 + MySQL8.0 ) 

##はじめに
復習を兼ねるのと、自分なりにまとめてみたかったんだ…。

OSインストール直後からZabbixのインストールまでを記述します。
(但し、自分なりの手順なので正解とは限りません。あくまで一例として参考にしてください)

##システム構成
・OS：Ubuntu 18.04 LTS
・Zabbix：Zabbix 4.0.15
・DBMS：MySQL 8

## 1.準備
・タイムゾーンの設定
　インストール直後はUTCなってるのでJSTに変更します。

```　
sudo timedatectl set-timezone Asia/Tokyo
```

・最新版へアップデート
　OSインストール直後なので、updateを実施。

```
sudo apt update
sudo apt upgrade
```

・再起動
　updateしたら、再起動は忘れずに。

```
sudo reboot
```

## 2.MySQL 8 のインストール
Zabbixで必要なDBをインストールします。
今回はMySQL 8.0をインストールします。

・公式からダウンロード
　.debファイルをダウンロードします。

```
wget https://dev.mysql.com/get/mysql-apt-config_0.8.14-1_all.deb
```

・.debファイルをインストール
　リポジトリを登録します。

```
sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb
```

　[Package Configuration]が出ますが、そのまま`OK`しておきます。
![mysql_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/2272165f-00cd-4e81-81b4-600ed5c9f633.png)

・確認
　MySQL関連が出てきてるか確認します。

```
~$ sudo apt update
(省略)  
Get:10 http://repo.mysql.com/apt/ubuntu bionic/mysql-8.0 Sources [960 B]                         
Get:11 http://repo.mysql.com/apt/ubuntu bionic/mysql-apt-config amd64 Packages [566 B]
Get:12 http://repo.mysql.com/apt/ubuntu bionic/mysql-8.0 amd64 Packages [7,537 B]
Get:13 http://repo.mysql.com/apt/ubuntu bionic/mysql-tools amd64 Packages [4,402 B]
Fetched 2,166 kB in 4s (556 kB/s)      
Reading package lists... Done
Building dependency tree       
Reading state information... Done
All packages are up to date.
```

・MySQLサービスのインストール
　確認が取れたら、インストールします。

```
sudo apt -y install mysql-server
```

途中でパスワード設定と認証設定を行います。
![mysql_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/df490d80-1ed7-d676-2652-902800db0f23.png)
![mysql_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/6f0eaa1d-8bd7-26bf-49f8-48e09b04b644.png)
![mysql_04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/b8d683dd-a4fe-0a0e-d1a8-6ce7adf0e8e6.png)

インストールが完了したら、バージョン確認しておきましょう。
私の場合は、8.0.18でした。

```
mysql --version
mysql  Ver 8.0.18 for Linux on x86_64 (MySQL Community Server - GPL)
```

MySQLを常に動くようにしておきます。

```
sudo systemctl enable mysql
```

##3.Zabbix用データベースの作成
・データベースの作成
　rootユーザーでMySQLにログインし、Zabbixで使用するデータベース「zabbix」を新規作成します。

```
mysql -u root -p
mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
```

・ロールの作成
　「zabbix」データベースの全権限を付与します。

```
mysql> CREATE ROLE zabbix_role;
mysql> GRANT ALL ON zabbix.* TO zabbix_role;
```

・ユーザの作成
ユーザを新規作成し、「zabbix」データベースへの全権限を割り当てます。

```
mysql> CREATE USER zabbix@localhost IDENTIFIED WITH mysql_native_password BY 'P@ssw0rd' DEFAULT ROLE zabbix_role;
```

　完了したら、`quit`でMySQLから抜けます。

##4.Zabbix 4.0のインストール
[公式のDLページ](https://www.zabbix.com/jp/download?zabbix=4.0&os_distribution=ubuntu&os_version=18.04_bionic&db=mysql&ws=apache)からURLをコピーして.debファイルをダウンロードします。
※というか、上記ページ見れば後にやる事全部分かるんですけどね……。

```
wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-3+bionic_all.deb
```

・リポジトリの登録

```
sudo dpkg -i zabbix-release_4.4-1+bionic_all.deb
```

・aptで確認

```
sudo apt update
```

・Zabbixのインストール
　Zabbix関連のアプリを全てインストールします。

```
sudo apt -y install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent
```

・Zabbix用テーブルの作成・初期データの投入
　パスワードを聞かれるので、データベース作成時のパスワードを入力してください。

```
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
```

##5.初期設定

・データベースのパスワード入力
　zabbix_server.confにDBのパスワードを入力します。

```vi:/etc/zabbix/zabbix_server.conf
#126行目くらいに追加
DBPassword=P@ssw0rd
```

・PHPのタイムゾーン変更
　デフォルトでコメントアウトされてるので、日本に合うよう修正します。

```vi:/etc/zabbix/apache.conf
20行目と30行目

修正前
# php_value date.timezone Europe/Riga

修正後
php_value date.timezone Asia/Tokyo
```

・デーモンの起動
 各種サービスの再起動と有効化をします。

```
sudo systemctl restart zabbix-server zabbix-agent apache2
sudo systemctl enable zabbix-server zabbix-agent apache2
```

##6.Web画面にアクセス
 WebブラウザでZabbixにアクセスします。
`http://[サーバのIPアドレス]/zabbix`

 Welcomeの画面が表示されたら、何も考えずに`Next step`をクリックします。
![zabbix_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/9aa496f5-ecd3-8ef6-2dc8-fb3acc9b175f.png)

表の右側が全部OKになってるのを確認して、`Next step`をクリックします。
![zabbix_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/490c1040-725d-6352-cfc1-d6900caabbf4.png)

DBのユーザとパスワードを入力して`Next step`をクリックします。
※入力するのはパスワードのみのはず…
![zabbix_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/6276ce1e-e57d-153d-eefe-f4f0976f4733.png)

特に何も入れなくても大丈夫なので`Next step`をクリックします。
※Nameは何入れてもいいです。分かりやすい名前にしたらよいのでは？
![zabbix_04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/9fa1a3ca-0155-c8f2-994e-410a15106ce1.png)

サマリが表示されますので、そのまま`Next step`をクリックします。
![zabbix_05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/d7b88eac-1a1e-49af-c0a8-27e5349f0490.png)

完了となりますので`Finish`をクリックします。
![zabbix_06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/67ff6e08-00f8-b7d8-841e-4ddc4c0965a5.png)

ログイン画面になりますので、初期ユーザーとパスワードを入力してログインできます。
Username：Admin
Password：zabbix
![zabbix_07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/9e2b0cf6-bd4c-e2aa-d764-565b84139e56.png)

お疲れ様でした。
![zabbix_08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/539453/2b6b2362-cc16-53c8-75e0-1f6c02e45b65.png)

##最後に
Zabbix稼動お疲れ様でした&おめでとうございます。
ただ、別にコレがゴールな訳ありません。
ここから各サーバやNW機器の死活監視をするために色々弄っていきましょう～～。