本文仅作为部署过程的总结笔记,仅供参考。
部署zabbix可以有多种方式,可以参考官方使用文档(https://www.zabbix.com/documentation/4.0/zh/manual/installation/containers)进行操作,在此我主要选择使用容器方式进行部署。
前提:服务器上已经部署了docker,nginx,mysql。
此处目标是搭建 zabbix+mysql+nginx的架构。
docker pull zabbix/zabbix-server-mysql docker pull zabbix/zabbix-java-gateway docker pull zabbix/zabbix-web-nginx-mysql
首先,启动空的 MySQL 服务器实例
docker run --name zabbix-mysql --restart=always -v /etc/localtime:/etc/localtime -t -e MYSQL_DATABASE=“zabbix” -e MYSQL_USER=“zabbix” -e MYSQL_PASSWORD=“zabbix” -e MYSQL_ROOT_PASSWORD=“root” -d mysql:5.7 –character-set-server=utf8 --collation-server=utf8_bin
其次,启动 Zabbix Java gateway 实例
docker run --name zabbix-java-gateway --restart=always -v /etc/localtime:/etc/localtime -t -d zabbix/zabbix-java-gateway:latest
然后,启动 Zabbix server 实例,并将其关联到已创建的 MySQL server 实例
docker run --name zabbix-server-mysql --restart=always -v /etc/localtime:/etc/localtime -t -e DB_SERVER_HOST=“zabbix-mysql” -e MYSQL_DATABASE=“zabbix” -e MYSQL_USER=“zabbix” -e MYSQL_PASSWORD=“zabbix” -e MYSQL_ROOT_PASSWORD=“root” -e ZBX_JAVAGATEWAY=“zabbix-java-gateway” -e ZBX_JAVAGATEWAY_ENABLE=“true” –link zabbix-mysql:mysql –link zabbix-java-gateway:zabbix-java-gateway -p 10051:10051 -d zabbix/zabbix-server-mysql:latest
不得不提一句,官方文档中关于环境变量 ZBX_JAVAGATEWAY_ENABLE 的描述是:“是否启用 Zabbix Java gateway 以采集与 Java 相关的检查数据。默认情况下,这个值为 false。”然而官方在启动zabbix server实例的示例中却偏偏漏掉了这个配置的设置。如果遵照示例启动的化,将无法获取JMX数据(坑啊)。
最后,启动 Zabbix Web 界面,并将其关联到已创建的 MySQL server 和 Zabbix server 实例
docker run --name zabbix-web-nginx-mysql --restart=always -v /etc/localtime:/etc/localtime -t -e DB_SERVER_HOST=“zabbix-mysql” -e MYSQL_DATABASE=“zabbix” -e MYSQL_USER=“zabbix” -e MYSQL_PASSWORD=“zabbix” -e MYSQL_ROOT_PASSWORD=“root” –link zabbix-mysql:mysql –link zabbix-server-mysql:zabbix-server -p 80:80 -d zabbix/zabbix-web-nginx-mysql:latest
Linux:
yum install -y zabbix-agent
Ubuntu:
apt install zabbix-agent
Windows: 参考:https://www.zabbix.com/documentation/4.4/manual/concepts/agent
安装完成后配置文件一般在 /etc/zabbix/zabbix-agentd.conf,打开并配置几个关键项:
Server=xxx.xxx.xxx.xxx (zabbix server的IP地址或主机名,建议IP地址) ServerActive=xxx.xxx.xxx.xxx:xxxx (zabbix server的IP地址或主机名,端口号默认为10050) Hostname=xxx.xxx.xxx.xxx (自定义本台agent的主机名,需与zabbix网页端中添加的host名一致)
可同时配置主动与被动模式,这样网页端中添加主机后的可用性状态才为绿色。 其余参数可参考:https://blog.csdn.net/qiangli_strong/article/details/81021852
Ubuntu:
killall -9 zabbix_agentd apt-get purge zabbix-agent