基于Docker部署4.2 版本的zabbix监控平台的两种方法

发布时间:2025-10-10 点击:20
系统运维
一、准备工作
两台vmware 虚拟机
一台充当zabbix server(安装docker)ip:192.168.73.133
一台充当zabbix agent(安装docker)ip:192.168.73.136
基础环境
cat /etc/redhat-release
centos linux release 7.5.1804 (core)
dcoker安装
#关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
#关闭selinux:
sed -i \\\’s/enforcing/disabled/\\\’ /etc/selinux/config
setenforce 0
#安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加docker软件包源
yum-config-manager –add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装docker ce
yum install -y docker-ce
#启动docker服务并设置开机启动
systemctl start docker
systemctl enable docker
#查看版本号
[root@localhost ~]# docker versionclient: docker engine - community version: 19.03.1 api version: 1.40 go version: go1.12.5 git commit: 74b1e89 built: thu jul 25 21:21:07 2019 os/arch: linux/amd64 experimental: falseserver: docker engine - community engine: version: 19.03.1 api version: 1.40 (minimum version 1.12) go version: go1.12.5 git commit: 74b1e89 built: thu jul 25 21:19:36 2019 os/arch: linux/amd64 experimental: false containerd: version: 1.2.6 gitcommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: version: 1.0.0-rc8 gitcommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: version: 0.18.0 gitcommit: fec3683#配置镜像加速器
curl -ssl https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io`#重启镜像
systemctl restart docker
docker安装完毕!
zabbix server端操作
提供两种不同的安装方式
1、采用zabbix官网中的docker安装章节内容,在官方镜像库中拉取镜像的方式进行安装
https://www.zabbix.com/documentation/4.0/zh/manual/installation/containers
本文档主机的本地目录结构目录在/home/zabbix下,设置了用于保存容器的数据,其它目录根据实际应用情况可选,以下操作命令需要连接外网进行镜像拉取,没有外网需要离线下载镜像包
1)启动一个单独的数据库mysql用于保存zabbix数据
docker run --name mysql-server -t \\\\-e mysql_database=zabbix \\\\-e mysql_user=zabbix \\\\-e mysql_password=zabbix \\\\-e mysql_root_password=zabbix \\\\-v /home/zabbix/data:/var/lib/mysql \\\\-d mysql:5.7 \\\\--character-set-server=utf8 \\\\--collation-server=utf8_bin \\\\--restart=always \\\\-p 3306:3306定义了数据库名zabbix,数据库用户zabbix,密码zabbix,在本地目录/home/zabbix/data中持久化保存mysql容器运行中的数据,确保容器退出运行后,数据不会丢失,最后两条是定义了数据库的字符集为utf8,解决了mysql数据库保存中文的问题;
2)启动zabbix server服务,并关联这个服务到上面已经启动的mysql数据库实例上,确保zabbix的数据可以保存到mysql数据库中,挂载在本地目录中的还有其它一些内容,根据生产环境实际情况灵活决定是否挂载,如果挂载可以通过容器直接加载本地目录中的脚本或认证信息,镜像版本使用的centos版本,便于后续能够使用python脚本,预装了py环境
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 \\\\-v /home/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \\\\-v /home/zabbix/externalscripts:/usr/lib/zabbix/externalscripts \\\\-v /home/zabbix/modules:/var/lib/zabbix/modules \\\\-v /home/zabbix/enc:/var/lib/zabbix/enc \\\\-v /home/zabbix/ssh_keys:/var/lib/zabbix/ssh_keys \\\\-v /home/zabbix/ssl/certs:/var/lib/zabbix/ssl/certs \\\\-v /home/zabbix/ssl/keys:/var/lib/zabbix/ssl/keys \\\\-v /home/zabbix/ssl/ssl_ca:/var/lib/zabbix/ssl/ssl_ca \\\\-v /home/zabbix/snmptraps:/var/lib/zabbix/snmptraps \\\\-v /home/zabbix/mibs:/var/lib/zabbix/mibs \\\\-p 10051:10051 \\\\-d zabbix/zabbix-server-mysql:centos-latest \\\\-restart=always挂载说明:
/usr/lib/zabbix/alertscripts
该卷用于保存自定义警报脚本,它是alertscriptspath参数zabbix_server.conf
/usr/lib/zabbix/externalscripts
外部检查(项目类型)使用该卷,它是externalscripts参数zabbix_server.conf
/var/lib/zabbix/modules
该卷允许加载其他模块并使用loadmodule功能扩展zabbix服务器。
/var/lib/zabbix/enc
该卷用于存储tls相关文件。这些文件的名称使用规定zbx_tlscafile,zbx_tlscrlfile,zbx_tlskey_file和zbx_tlspskfile变量。
/var/lib/zabbix/ssh_keys
该卷用作ssh检查和操作的公钥和私钥的位置。它是sshkeylocation参数zabbix_server.conf。
/var/lib/zabbix/ssl/certs
该卷用作客户端身份验证的ssl客户端证书文件的位置。它是sslcertlocation参数zabbix_server.co

云服务器宝塔面板安装建站教程
申请商标服务费
建设英文类的网页有什么要知道的
移动网上商城的运营方法,移动网上商城运营的小技巧
中文域名什么意思?2019中文域名的趋势如何
学生租阿里云服务器教程
阿里云服务器管理网站吗
php 英文啥意思