Docker安装zabbix

作者: Ethandyp | 来源:发表于2017-09-24 23:18 被阅读395次

    1、zabbix组件提供了Ubuntu和Alpine Linux的基础镜像

    Zabbix agent - zabbix/zabbix-agent

    Zabbix server

            Zabbix server(支持MySQL数据库) - zabbix/zabbix-server-mysql

            Zabbix server(支持PostgreSQL数据库) - zabbix/zabbix-server-pgsql

    Zabbix web接口

            基于Apache2 web服务器及支持MySQL数据库的Zabbix web接口 - zabbix/zabbix-web-apache-mysql

            基于Nginx web服务器及支持MySQL数据库的Zabbix web接口 - zabbix/zabbix-web-nginx-mysql

            基于Nginx web服务器及支持PostgreSQL数据库的Zabbix web接口 - zabbix/zabbix-web-nginx-pgsql

    Zabbix proxy

            Zabbix proxy(支持SQLite3数据库) - zabbix/zabbix-proxy-sqlite3

            Zabbix proxy(支持MySQL数据库) - zabbix/zabbix-proxy-mysql

            Zabbix Java Gateway - zabbix/zabbix-java-gateway

    2、拉取镜像

    mysql:docker pull mysql

    zabbix-server:docker pull zabbix/zabbix-server-mysql

    zabbix-web-nginx-mysql:docker pull zabbix/zabbix-web-nginx-mysql

    zabbix-agent:docker pull zabbix/zabbix-agent

    3、部署服务,此处要注意顺序,mysql;zabbix-server;zabbig-web-nginx

    部署mysql

    docker run --name mysql-server -t  -e MYSQL_DATABASE="zabbix"  -e MYSQL_USER="zabbix"  -e MYSQL_PASSWORD="zabbix"  -e MYSQL_ROOT_PASSWORD="root"  -p 3306:3306 -d mysql:5.7

    查看mysql容器的ip

    docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mysql-server

    172.18.0.2

    或者docker inspect mysql-server|grep IPAddress

    部署zabbix-server

    docker run --name zabbix-server-mysql -t -e DB_SERVER_HOST="172.18.0.2" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix"      -e MYSQL_ROOT_PASSWORD="root" --link mysql-server:mysql -p 10051:10051 -d zabbix/zabbix-server-mysql:latest

    (突然想到DB_SERVER_HOST和--link的关系,猜测同一宿主机的话二存一,不同宿主机的话需配DB_SERVER_HOST,待验证;其次Docker集群中如何配置还需要再学习)

    查看zabbix-server的IP

    docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' zabbix-server-mysql

    172.18.0.3

    部署zabbix-web-nginx

    docker run --name zabbix-web-nginx-mysql -e DB_SERVER_HOST="172.18.0.2" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix" -e ZBX_SERVER_HOST="172.18.0.3" -e PHP_TZ="Asia/Shanghai" --link zabbix-server-mysql:zabbix-server --link mysql-server:mysql -p 80:80 -d zabbix/zabbix-web-nginx-mysql:latest

    (DB_SERVER_HOST,ZBX_SERVER_HOST与--link关系需再学习)

    4、浏览器输入宿主机,登录zabbix

    期间遇到过无法链接数据库的情况,提示不能链接作为proxy的数据库

    此时需要重新导入zabbix数据库文件schema.sql、images.sql、data.sql

    drop database zabbix;

    mysql -h172.18.0.2 -uzabbix -pzabbix zabbix < schema.sql

    mysql -h172.18.0.2 -uzabbix -pzabbix zabbix < images.sql

    mysql -h172.18.0.2 -uzabbix -pzabbix zabbix < data.sql

    此时应该可以成功登录zabbix,部署完成

    相关文章

      网友评论

        本文标题:Docker安装zabbix

        本文链接:https://www.haomeiwen.com/subject/dpilextx.html