zabbix 5 (zabbix/zabbix-appliance:alpine-trunk)

## セットアップ

### zabbix-server

* 10051 番ポート
    * Zabbix Server は 10051番で Zabbix Agent からのアクセスに応答する。

```sh:run.sh
docker run \
 -d \
 --rm \
 --name zabbix5 \
 --hostname zabbix5 \
 -p 8022:80 \
 -p 10051:10051 \
 -e PHP_TZ=Asia/Tokyo \
 zabbix/zabbix-appliance:alpine-trunk
```

* http://localhost:8022
* Admin / zabbix

```sh:volumeを指定する場合
docker run \
 -d \
 --rm \
 --name zabbix5 \
 --hostname zabbix5 \
 -p 8022:80 \
 -p 10051:10051 \
 -e PHP_TZ=Asia/Tokyo \
 -v $(pwd)/data/etc/ssl/nginx:/etc/ssl/nginx \
 -v $(pwd)/data/usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \
 -v $(pwd)/data/usr/lib/zabbix/externalscripts:/usr/lib/zabbix/externalscripts \
 -v $(pwd)/data/var/lib/mysql/:/var/lib/mysql/ \
 -v $(pwd)/data/var/lib/zabbix/enc:/var/lib/zabbix/enc \
 -v $(pwd)/data/var/lib/zabbix/mibs:/var/lib/zabbix/mibs \
 -v $(pwd)/data/var/lib/zabbix/modules:/var/lib/zabbix/modules \
 -v $(pwd)/data/var/lib/zabbix/snmptraps:/var/lib/zabbix/snmptraps \
 -v $(pwd)/data/var/lib/zabbix/ssh_keys:/var/lib/zabbix/ssh_keys \
 -v $(pwd)/data/var/lib/zabbix/ssl/certs:/var/lib/zabbix/ssl/certs \
 -v $(pwd)/data/var/lib/zabbix/ssl/keys:/var/lib/zabbix/ssl/keys \
 -v $(pwd)/data/var/lib/zabbix/ssl/ssl_ca:/var/lib/zabbix/ssl/ssl_ca \
 zabbix/zabbix-appliance:alpine-trunk
```

* (volume 一覧は `docker inspect`で調べられる)

### 監視対象のサーバーに zabbix-agent

* CentOS向けは以下
    * http://repo.zabbix.com/zabbix/5.1/rhel/5/i386/
    * http://repo.zabbix.com/zabbix/5.1/rhel/6/x86_64/

* 監視対象の ubuntu に zabbix-agent を入れてみる。

```
apt install -y zabbix-agent
```

```diff:/etc/zabbix/zabbix_agentd.conf.d/custom.conf
Server=192.168.0.0/24
ServerActive=192.168.0.0/24
```

```sh
/etc/init.d/zabbix-agent restart
```

### 運用 : mysqlのダンプ / インポート

```sh
# バックアップ
docker exec -it zabbix5 \
  mysqldump -uroot zabbix > zabbix.sql

# dumpの転送
docker cp zabbix.dump zabbix5:zabbix.sql
# dumpのインポート
docker exec -it zabbix5 \
 sh -c "mysql -uroot zabbix < /zabbix.sql"
```


### 通知方法の初期設定

* 管理 - メディアタイプ
    * Email

![aa.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/f5f35802-57fc-e032-d209-26ee66fb77bb.png)


### ディスカバリ

* 有効にする方法

![無題.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/31b95003-d323-9311-09de-5e54c56c12d3.png)

* ホスト名はDNS参照結果が使われる。
* 即座にディスカバリしたい場合はzabbixコンテナを落とし上げするとよい。

```sh:dnsサーバー指定したい場合
docker run \
 --dns=192.168.0.2 \
 --dns=192.168.0.3 \
 --dns-search=local \
 (略)
```

----

## 設定手順

### 日本語

日本語文字化けするので英語のままのほうがよいかも

* 日本語化をする。右上のアイコンをクリック

![スクリーンショット_2020-09-02_18-58-29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/7c72f656-c6a6-8059-332b-276421c82f0c.png)

* Japanese を選択しUpdate

![スクリーンショット_2020-09-02_18-59-06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/64d2ea51-7d20-5aa9-144e-d64048a5a9a5.png)

### 障害通知

* 障害通知を有効にする

![スクリーンショット_2020-09-02_19-00-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/d984b9d7-5d1b-033f-4622-52f25760975a.png)


* メール通知用の設定

![スクリーンショット_2020-09-02_19-02-27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/c92cfea5-b76b-fb69-ebc1-744457f0cfcb.png)

* メールアドレスの設定

![スクリーンショット_2020-09-02_19-32-45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/6bce95e5-fdfc-95a7-8f7d-b938f4d2dbd2.png)
![スクリーンショット_2020-09-02_19-33-26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/09985145-7f93-d3d9-8972-845d48105565.png)
![スクリーンショット_2020-09-02_19-34-13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/ee9d2613-85aa-e804-034b-8b57fe5413b2.png)

### 自動ディスカバリ

![スクリーンショット_2020-09-02_19-00-56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/be6058cd-75fb-5407-02b9-b179ac034169.png)

![スクリーンショット_2020-09-02_19-01-41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/de27e5c2-0214-f0d5-27a7-b88abcf2bdf1.png)
![スクリーンショット_2020-09-02_19-53-04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/6a89316e-ef8b-a0c9-b075-c7e0538f8fbc.png)