Dockerで Zabbixサーバ環境を構築したメモ。 サーバの構築 †ほぼ、意外と知られていないzabbix公式コンテナイメージ - Qiita この情報ですが、zabbix-java-gateway が抜けてるっぽいので追加してます。 # docker run --name mysql-server -t \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix" \ -e MYSQL_ROOT_PASSWORD="zabbix" \ -d mysql:5.7 # docker run --name zabbix-java-gateway -d zabbix/zabbix-java-gateway:latest # docker run --name zabbix-server-mysql -t \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix" \ -e MYSQL_ROOT_PASSWORD="zabbix" \ --link mysql-server:mysql \ --link zabbix-java-gateway:zabbix-java-gateway \ -p 10051:10051 \ -d zabbix/zabbix-server-mysql:latest # docker run --name zabbix-web-nginx-mysql -t \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix" \ -e MYSQL_ROOT_PASSWORD="zabbix" \ -e ZBX_SERVER_HOST="zabbix-server" \ -e PHP_TZ="Asia/Tokyo" \ --link mysql-server:mysql \ --link zabbix-server-mysql:zabbix-server \ -p 80:80 \ -d zabbix/zabbix-web-nginx-mysql:latest で、http://[Dockerサーバ自体のIP]/ にブラウザでアクセスすればOK。 つづいてエージェント †Dockerのサーバ自体を監視するため、エージェントもインストールしときます。 zabbix-agentのDockerでやるばあい †docker run --name zabbix-agent \ --link zabbix-server-mysql:zabbix-server \ -d zabbix/zabbix-agent:latest ところでこのエージェントは、このDockerサーバ自体を監視したいので入れてるのですが、このエージェントは個別にIPを持ってて、127.0.0.1:10050じゃ繋がらないorz。 # docker exec -it [agentのContainer ID] /bin/bash bash-4.3# ifconfig で IPをしらべて、WEB画面のIPアドレス設定を変更しないとダメっぽいですね Dockerサーバ自体に直接エージェントを入れる場合 †もしくは、直接DockerサーバにAgentをインストールします。手順は Zabbix/Zabbix Agentをセットアップする にもありますが、基本、 # wget http://repo.zabbix.com/zabbix/3.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.4-1+xenial_all.deb # sudo dpkg -i zabbix-release_3.4-1+xenial_all.deb # sudo apt update # sudo apt install zabbix-agent で、OK。 設定は、Zabbix Serverが Docker上のネットワークで起動している事を注意しながら、つまりDockerの動いてるOS上で # ifconfig docker0 Link encap:Ethernet HWaddr 02:42:58:f8:3a:90 inet addr:172.17.0.1 Bcast:172.17.255.255 Mask:255.255.0.0 とネットワークアドレスを確認しつつ # cat /etc/zabbix/zabbix_agentd.conf Server=127.0.0.1,172.17.0.0/16 ← Dockerのネットを指定(3.xからネットワーク指定が可能になった。それ以前はサーバのIPを指定する) ServerActive=127.0.0.1 ← 変更なし ListenIP=0.0.0.0 ←いらないかも。 Hostname=Zabbix server とかでしょうか。動いた実績の最小構成は、 vagrant@ubuntu-xenial:~$ diff /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.20180425 97c97 < Server=127.0.0.1,172.17.0.0/16 --- > Server=127.0.0.1 でした。 最後にZabbixの WEB画面の Zabbix server の設定も、IPを172.17.0.1:10050 にしておけばOKです。127.0.0.1のままだとダメでした。。 この記事は
|