docker zabbix-server 服务端搭建
一套完整的zabbix,需装数据库、web服务器、zabbix-server和zabbix-agent。
zabbix-agent是安装到监控的节点的服务器上
以下是zabbix-server的安装
踩坑记录:
建议每启动一个容器等几分钟再启动下一个容器,否者登录提示:Unable to select configuration,因为数据正在导入中,让数据飞一会。
不等也没关系,导完数据就web正常了
1、创建数据库(mysql8.0.29)
zabbix的数据库有:mysql、postgresql、mariadb、oracle等
#docker run -dit -p 3306:3306 --name zabbix-mysql -v /etc/localtime:/etc/localtime -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD="root" mysql
-p 是将容器中的3306端口映射到服务器的3306端口
--name zabbix-mysql 容器名
--network zabbix_net 将容器加入到zabbix_net网络中
-v /etc/localtime:/etc/localtime 同步服务器和容器内部的时区
-e MYSQL_DATABASE="zabbix" 在msql中创建的数据库的名
-e MYSQL_USER="zabbix" 创建msql的登录账户名
-e MYSQL_PASSWORD="123456" 设置创建msql的登录账户的密码
-e MYSQL_ROOT_PASSWORD="root" 设置msql数据库root 的密码
2、创建zabbix-java-gateway
Zabbix本身不支持直接监控Java,而是使用zabbix-java-gateway监控jvm/tomcat性能
#docker run -dit -v /etc/localtime:/etc/localtime --name=zabbix-java-gateway zabbix/zabbix-java-gateway
3、创建zabbix-server
首先创建数据卷zabbix-server-vol
#docker volume create zabbix-server-vol
注意mysql和zabbix-java-gateway的信息
#docker run -dit -p 10051:10051 --mount source=zabbix-server-vol,target=/etc/zabbix -v /etc/localtime:/etc/localtime -v /usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts --name=zabbix-server-mysql -e DB_SERVER_HOST="192.168.59.102" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD="root" -e ZBX_JAVAGATEWAY="zabbix-java-gateway" zabbix/zabbix-server-mysql
5、创建web
#docker run -dit -p 8080:8080 -v /etc/localtime:/etc/localtime --name zabbix-web-nginx-mysql -e DB_SERVER_HOST="192.168.59.102" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD="root" -e ZBX_SERVER_HOST="192.168.59.102" zabbix/zabbix-web-nginx-mysql

验证:
地址:http://192.168.59.102:8080
用户名/密码:admin/zabbix


浙公网安备 33010602011771号