基于Docker部署Zabbix 5.0监控系统
创作时间:
作者:
@小白创作中心
基于Docker部署Zabbix 5.0监控系统
引用
CSDN
1.
https://m.blog.csdn.net/qq_41172950/article/details/142138395
本文将详细介绍如何使用Docker部署Zabbix 5.0监控系统。通过Docker容器化部署,可以快速搭建一个完整的Zabbix监控环境,包括MySQL数据库、Zabbix Server、Web界面和Agent组件。
一、启动一个空的Mysql服务器实例
docker run --name zbx5-mysql -d \
--network=host \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="Hqkj2012_" \
--restart unless-stopped mysql:5.7 \
--character-set-server=utf8 --collation-server=utf8_bin \
--default-authentication-plugin=mysql_native_password
二、启动Zabbix server实例,并关联这个实例到已创建的MySQL服务器实例
docker run --name zbx5-server-mysql -d \
-e DB_SERVER_HOST="127.0.0.1" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="Hqkj2012_" \
--network=host \
--restart unless-stopped \
zabbix/zabbix-server-mysql:5.0-centos-latest
三、 启动Zabbix web 接口,并将它与MySQL服务器实例和Zabbix server实例关联
docker run --name zbx5-web-nginx-mysql -d \
-e ZBX_SERVER_HOST="192.168.0.10" \ ##宿主机IP
-e DB_SERVER_HOST="192.168.0.10" \ ##宿主机IP
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix" \
-e MYSQL_ROOT_PASSWORD="Hqkj2012_" \
-p 7070:8080 \
--restart unless-stopped \
zabbix/zabbix-web-nginx-mysql:5.0-centos-latest
四、 启动本机Agent
docker run --name zbx5-agent -d \
-e ZBX_HOSTNAME="local-agent" \
-e ZBX_SERVER_HOST="127.0.0.1" \
--network=host \
--restart unless-stopped \
zabbix/zabbix-agent:5.0-centos-latest
五、 docker ps -a 查询容器运行情况
六、 登录zabbix
默认用户名/密码是:Admin/zabbix
七、 客户端Agent配置
root@stroreroom4 ~]# cat > /etc/yum.repos.d/zabbix.repo <<EOF
[zabbix]
name= zabbix
baseurl=http://mirrors.bclinux.org/zabbix/zabbix/5.0/rhel/7/x86_64/
gpgcheck=0
enabled=1
EOF
[root@stroreroom4 ~]# systemctl start zabbix-agent.service
[root@stroreroom4 ~]# systemctl restart zabbix-agent.service
[root@stroreroom4 ~]# vim /etc/zabbix/zabbix_agentd.conf
八、 监控Mysql
1、新mysql监控帐号
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'Hqkj2012-';
GRANT ALL PRIVILEGES ON *.* TO 'zabbix'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
2、查看mysql的sock文件路径
[root@stroreroom5 /etc/zabbix/zabbix_agentd.d]# find / -name mysql.sock
/opt/mas/mysql/mysql.sock
3、复制Zabbix监控Mysql模板文件
[root@stroreroom5 /etc/zabbix/zabbix_agentd.d]# cp /usr/share/doc/zabbix-agent-5.0.43/userparameter_mysql.conf /etc/zabbix/zabbix_agentd.d
[root@stroreroom5 /etc/zabbix/zabbix_agentd.d]# ls
userparameter_mysql.conf
4、设置模板归属
[root@stroreroom5 /etc/zabbix/zabbix_agentd.d]# chown -R zabbix:zabbix /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
[root@stroreroom5 /etc/zabbix/zabbix_agentd.d]# ll
total 4
-rw-r--r-- 1 zabbix zabbix 1118 Sep 14 10:23 userparameter_mysql.conf
[root@stroreroom5 /etc/zabbix/zabbix_agentd.d]#
5、修改模板文件(指定mysqladmin路径)
#template_db_mysql.conf created by Zabbix for "Template DB MySQL" and Zabbix 4.2
#For OS Linux: You need create .my.cnf in zabbix-agent home directory (/var/lib/zabbix by default)
#For OS Windows: You need add PATH to mysql and mysqladmin and create my.cnf in %WINDIR%\my.cnf,C:\my.cnf,BASEDIR\my.cnf https://dev.mysql.com/doc/refman/5.7/en/option-files.html
#The file must have three strings:
#[client]
#user=zbx_monitor
#password=<password>
#
UserParameter=mysql.ping[*],/opt/mas/mysql/bin/mysqladmin -h"$1" -P"$2" ping
UserParameter=mysql.get_status_variables[*], mysql -h"$1" -P"$2" -sNX -e "show global status"
UserParameter=mysql.version[*], /opt/mas/mysql/bin/mysqladmin -s -h"$1" -P"$2" version
UserParameter=mysql.db.discovery[*], mysql -h"$1" -P"$2" -sN -e "show databases"
UserParameter=mysql.dbsize[*], mysql -h"$1" -P"$2" -sN -e "SELECT SUM(DATA_LENGTH + INDEX_LENGTH) FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='$3'"
UserParameter=mysql.replication.discovery[*], mysql -h"$1" -P"$2" -sNX -e "show slave status"
UserParameter=mysql.slave_status[*], mysql -h"$1" -P"$2" -sNX -e "show slave status"
6、在/var/lib/zabbix目录下创建.my.cnf配置文件
[root@stroreroom5 /etc/zabbix]# mkdir /var/lib/zabbix
[root@stroreroom5 /etc/zabbix]# cd /var/lib/zabbix/
[root@stroreroom5 /var/lib/zabbix]# ll -lsa
total 12
4 drwxr-xr-x 2 root root 4096 Sep 14 09:52 .
4 drwxr-xr-x. 32 root root 4096 Sep 14 09:33 ..
4 -rw-r--r-- 1 root root 271 Sep 14 09:52 .my.cnf
[root@stroreroom5 /var/lib/zabbix]# vim var/lib/zabbix/.my.cnf
[mysql]
host=localhost
user=zabbix
password=Hqkj2012-
socket=/opt/mas/mysql/mysql.sock
[client]
host=localhost
user=zabbix
password=Hqkj2012-
socket=/opt/mas/mysql/mysql.sock
[mysqladmin]
host=localhost
user=zabbix
password=Hqkj2012-
socket=/opt/mas/mysql/mysql.sock
7、重启zabbix-agent
[root@stroreroom5 /var/lib/zabbix]# systemctl restart zabbix-agent
九、 Zabbix-server Web端配置
配置–主机-模板
Template DB MySQL
页面展示,监控服时间与本地不一致问题
root@gejie-10 ~]# docker ps -a
##进入zabbix/zabbix-web-nginx-mysql的配置文件
docker exec -it 5eb6704a21c9 /bin/bash
##修改配置文件
vim /etc/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai
热门推荐
铸铁试验平台:从材料到加工的全解析
香港工作签证类型全解析
内地人如何去香港工作?一共有2类方式7个合法途径(附详细攻略)
A2O污水处理工艺原理与解析
离心力是什么意思?
酒精成瘾不是意志力太差,可能是肠道菌群在惹事
领事法是什么?一文读懂领事法的核心内容与实用指南
是谁画出了可爱的比得兔?这是一位伟大女性的传奇一生。
宠物鸡市场调查:购买宠物鸡的合法性探讨
如何在附近寻找合适的租房?这类寻找怎样更高效和精准?
肺结核皮试有红肿正常吗?专业医生解读PPD试验结果
大腿后侧拉伤怎么办
关于失恋,这3点建议绝对可以帮到你
新同事如何尽快融入团队:十大实用建议
小耳朵,大作用之——“耳尖放血疗法”
风筝的拼音、历史与文化:承载梦想与快乐的象征
慢性风湿性心脏病的饮食禁忌
光伏科普:光伏组件八大材料
锌铝镁光伏支架哪种材质好?
江苏鸭血粉丝汤:传统与美味的碰撞
揭秘虎皮大衣交易法律问题:是犯法还是合法?
港股通交易规则详解:从交易时段到报价区间全解析
六分仪:航海光学测量仪器的原理与应用
侦查阶段应如何做好证据的收集、固定
美国临床肿瘤学会指南:癌症患者治疗期间如何正确运动?
房贷100万提前还款攻略:什么时候还最划算?
@所有家长 这些防拐教育一定要做到!
【防拐反拐安全知识】保护妇女儿童安全,提高全民防拐反拐意识
疫苗接种需要进行何种检查?
长沙地铁13号线有望提前启动,含浦片区受益