Zabbix监控docker 2013年开始使用Zabbix,2014-2016年负责Zabbix二次开发及架构设计,目前从事PaaS平台及微服务的开发和运维工作,Zabbix实践爱好者,Cactifans...作者,golang爱好者 以前使用cadvisor监控Docker容器状态,最近看到可以使用Zabbix Module的方式,通过部署一个zabbix agent的docker容器来监控宿主机器和宿主机器上...Zabbix Docker module下载 OS for Zabbix 3.4 for Zabbix 3.2 for Zabbix 3.0 CentOS 7 Download Download Download...并重启agent,之后在zabbix里添加主机,关联docker模版即可....Zabbix Server配置 在zabbix server上导入监控docker的模版,一共2个模版,下载后解压 点击下载 我使用主动模式,因此导入Zabbix-Template-App-Docker-active.xml
实现效果: 编辑conf配置键值 [root@elx summer]# cd /etc/zabbix/zabbix_agentd.d [root@elx zabbix_agentd.d]# ll...total 8 -rwxr-xr-x 1 zabbix zabbix 118 Sep 28 01:02 userparameter_find_container.conf -rwxr-xr-x 1 zabbix...zabbix 1081 Sep 27 19:51 userparameter_mysql.conf [root@elx zabbix_agentd.d]# cat userparameter_find_container.conf...UserParameter=docker.discovery,/home/summer/docker.py UserParameter=docker.[*],/home/summer/docker.py...[eureka,ping] zabbix_docker模板.xml: <?xml version="1.0" encoding="UTF-8"?
# 4.zabbix的组件 Zabbix Web GUI:提供Web界面 Zabbix Database:提供数据存储功能,专用于存储配置信息,以及采集到的数据 Zabbix Server:接收Agent...的web接口; # 6.zabbix报警级别 6个报警级别:未分类、信息、警告、一般严重、严重、灾难 # zabbix5.0基于docker安装 ---- # 1.安装Docker-MySQL docker...=utf8 --collation-server=utf8_bin # 2.安装Docker-Java Agent docker run --name zabbix-java-gateway -t...\ -v /etc/localtime:/etc/localtime:ro \ -d zabbix/zabbix-java-gateway:latest # 3.安装Docker-Zabbix docker...:latest # 4.安装Docker-Nginx docker run --name zabbix-web-nginx-mysql -t \ -e DB_SERVER_HOST="mysql-server
# docker-compose.yaml文件 version: '2' services: zabbix-server: image: zabbix/zabbix-server-mysql:centos.../zbx_env/var/lib/zabbix/enc:/var/lib/zabbix/enc #- ..../zbx_env/var/lib/zabbix/mibs:/var/lib/zabbix/mibs privileged: true volumes_from: - zabbix-snmptraps...define('ZBX_GRAPH_FONT_NAME', 'simhei'); define('ZBX_FONT_NAME', 'simhei'); 重启web服务 # docker-compose.../zbx_env/etc/zabbix/zabbix_server.conf:/etc/zabbix/zabbix_server.conf environment: DB_SERVER_HOST
横空大气排山去,砥柱人间是此峰 牛兆濂《登华岳南峰极顶七绝》 Zabbix Agent2监控docker容器 首先我们先来看一下zabbix agent2监控docker插件的实现原理,其实就是通过调用...docker的API来获取数据,插件目录位于zabbix-agent2/src/go/plugins/docker,我们先来看一下client.go文件 这里就是定义了使用UNIX套接字地址来进行docker...下面是zabbix实现自动发现容器和镜像的两个方法,会返回包含容器和镜像信息的json数据 ?...了解了docker插件的实现思路后我们可以根据我们的需求进行扩展,添加对应的api获取数据就可以了,或者根据这个思路在zabbix agent上实现相同的自定义脚本,甚至可以根据docker插件的实现逻辑来自己编写插件实现其他的监控需求...下面我们来使用agent2的模板监控docker 链接docker模板 ?
容器间的互联 在运行zabbix之前务必要了解容器间互联的方法 # 创建一个nginx容器 docker run -d -p 80:80 nginx # 创建容器,做link,并进入容器中 docker...run --name zabbix-java-gateway -t \ -d zabbix/zabbix-java-gateway:latest 3、启动zabbix-mysql容器使用...--link zabbix-java-gateway:zabbix-java-gateway \ -p 10051:10051 \ -d zabbix/zabbix-server-mysql...:latest 4、启动zabbix web显示,使用link连接zabbix-mysql与mysql。...-p 80:80 \ -d zabbix/zabbix-web-nginx-mysql:latest 关于zabbix API 关于zabbix API可以参考官方文档: https:/
Docker 作为这个时代的产品,降低了开发者对于基础设施的关注以及快速部署的特点,迅速成为了热门,但随着 K8S 的诞生,Docker 的热度逐渐开始下降,但不乏一些企业依然还在使用,这也是我写这篇文章的目的...环境 zabbix版本:5.4 系统版本:CentOS 8.4 Docker版本:1.13 安装插件 在 Zabbix agent2 未出现时,采用嵌入 Zabbix 插件的方式或者脚本的方式实现对...Docker 的监控,当 Zabbix Agent2 出现就比较简单了。.../Applications 下面,名字是 Docker by Zabbix agent 2,选择后即可。...,除了遇到权限问题,其他就没什么太大的问题,Docker 部分应该会做两篇文章,第二篇是模板详解的篇章,第三章是实战,后续也会继续写关于 Zabbix 与容器技术相关的文章,最后还是那句话,适合你的才是最好的
#验证docker docker --version #安装MySQL5.7 docker run --name mysql-server -t \ -e MYSQL_DATABASE="zabbix...docker run --name zabbix-java-gateway -t \ -d zabbix/zabbix-java-gateway:latest #安装Docker-Zabbix docker...-p 10051:10051 \ -d zabbix/zabbix-server-mysql:latest # docker run --name zabbix-web-nginx-mysql -t...:zabbix-server \ -p 80:8080 \ -d zabbix/zabbix-web-nginx-mysql:latest #显示所有的容器,包括未运行的 docker ps -a #列出正在运行的容器...docker ps #查看docker日志 docker logs dc4bb1220dac http://IP/zabbix.php?
镜像 node01 zabbix/zabbix-agent 被监控端 Docker已安装,参考《002.Docker版本及安装》。...二 正式构建Zabbix Server 2.1 创建目录 1 root@docker01:~# mkdir my_zabbix 2 root@docker01:~# mkdir /zabbix_mysql_data...2.2 创建Docker Compose 1 root@docker01:~# cd my_zabbix/ 2 root@docker01:~/my_zabbix# vi docker-compose.yml...root@docker01:~/my_zabbix# docker-compose up -d 2.4 确认验证 浏览器访问http://172.24.8.111 ?...三 构建Zabbix Agent 3.1 安装Docker 需要被监控客户端节点安装Docker,参考《002.Docker版本及安装》。
Docker Run Zabbix Server 6.0 LTS Ubuntu 20.04 Install Docker Docker Run Zabbix Server 6.0 Containers...Docker Compose Run Zabbix Server 6.0 Containers Access Zabbix Server 6.0 Web UI Zabbix Server 6.0 Monitor...Docker Host Zabbix Hub docker https://hub.docker.com/u/zabbix 1,Ubuntu 20.04 Install Docker (1)Docker...docker version (6)Check Docker info docker info 2,Docker Run Zabbix Server 6.0 Containers Zabbix Server....service (4)zabbix_agent2 -t test root@docker-node01:/# sudo zabbix_agent2 -t agent.ping root@docker-node01
$ docker version 03 — 部署zabbix组件 zabbix支持mysql/postgresql两种数据库,本示例使用支持mysql的zabbix版本。 1....安装zabbix-java-gateway 下载镜像 $ docker pull zabbix/zabbix-java-gateway:alpine-6.2-latest 启动容器 $ docker...安装Zabbix Web 界面 下载镜像 $ docker pull zabbix/zabbix-web-nginx-mysql:alpine-6.2-latest 启动web容器 $ docker...04 — 安装agent zabbix agent部署较为简单,你可以使用docker,也可以使用Yum、二进制包等方式安装,此处演示基于docker的安装方式。...$ docker volume create -d local zabbix_agent 启动agent容器 $ docker run --name zabbix-agent -t \
容器间的互联 在运行zabbix之前务必要了解容器间互联的方法 # 创建一个nginx容器 docker run -d -p 80:80 nginx # 创建容器,做link,并进入容器中 docker...run --name zabbix-java-gateway -t \ -d zabbix/zabbix-java-gateway:latest 3、启动zabbix-mysql容器使用link...--link zabbix-java-gateway:zabbix-java-gateway \ -p 10051:10051 \ -d zabbix/zabbix-server-mysql...:latest 4、启动zabbix web显示,使用link连接zabbix-mysql与mysql。...-p 80:80 \ -d zabbix/zabbix-web-nginx-mysql:latest 关于zabbix API 关于zabbix API可以参考官方文档: https://www.zabbix.com
docker容器的脚本,以下操作是在zabbix_agent端进行的。...) docker ;; *) echo "Usage:`basename $0` {docker}" ;; esac 第二种脚本: #cat /etc/zabbix/script/docker_discovery.py...docker_discovery.py,/etc/zabbix/script/docker_minion.py #这种写法比较具体 添加配置文件,配置文件放在/etc/zabbix/zabbix_agentd.d...如下: #cat /etc/zabbix/script/docker_minion.py #!...chmod 757 docker_minion.py 添加配置文件,配置文件放在/etc/zabbix/zabbix_agentd.d/里面,如下 cat docker_status.conf UserParameter
1、安装 rpm -Uvh https://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm...yum install -y zabbix-agent vi /root/run.sh !.../bin/bash /usr/sbin/sshd -D /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf 2、上传 docker commit...centos7 centos7zabbix docker login --username=hatqiang registry.cn-shenzhen.aliyuncs.com docker tag...:latest 4、启动的时候要和zabbixserver的docker互联 docker run -it -p 10022:22 --link zabbixserver:zabbixserver
Wanger | Zabbix开源社区签约专家 Zabbix运维工程师,熟悉Zabbix开源监控系统的架构。乐于分享Zabbix运维经验,个人公众号“运维开发故事”。...01 - Zabbix Agent2监控docker的实现原理 首先我们来看一下zabbix agent2监控docker插件的实现原理,其实就是通过调用docker的API来获取数据,插件目录位于...zabbix-agent2/src/go/plugins/docker,我们先来看一下client.go文件 这里就是定义了使用UNIX套接字地址来进行docker客户端与服务端的通信。...了解了docker插件的实现思路后我们可以根据我们的需求进行扩展,添加对应的api获取数据就可以了,或者根据这个思路在zabbix agent上实现相同的自定义脚本,甚至可以根据docker插件的实现逻辑来自己编写插件实现其他的监控需求...02-使用Zabbix Agent2的模板监控docker 链接docker模板: ? 然后就可以看到docker的状态了。 ? ? ?
//安装docker和docker-compose ### 修改dns vim /etc/sysconfig/network-scripts/ifcfg-eno1 DNS1=223.5.5.5...INPUT -p tcp -s 172.16.239.0/24 -j ACCEPT ### 重启服务生效 systemctl reload iptables systemctl restart docker.../mariadb-m-m/m1/ docker-compose up -d 启用GTID 主主复制 m1,m2同时配置 #m1和m2同时操作 mysql -uroot -pxxxxx -h 127.0.0.1...-A INPUT -p tcp -s 172.16.239.0/24 -j ACCEPT #重启服务生效 systemctl reload iptables systemctl restart docker...启动zabbix-server并测试 登录m1,m2 cd /opt/ly-traffic/zabbix54 docker-compose up 安装keepalived并配置 #安装 yum -y
下面就是实际工作中用到的zabbix双机互备搭建方案。...执行脚本 sh system_init_v3.sh //系统初始化 sh system_init_python3.sh //安装python3 sh system_init_docker.sh...//安装docker和docker-compose 修改dns vim /etc/sysconfig/network-scripts/ifcfg-eno1 DNS1=223.5.5.5 DNS2...-A INPUT -p tcp -s 172.16.239.0/24 -j ACCEPT //重启服务生效 systemctl reload iptables systemctl restart docker...启动zabbix-server并测试 登录m1,m2 cd /opt/ly-traffic/zabbix54 docker-compose up 安装keepalived并配置 安装 yum -y
备份 ZABBIX Server文件 mkdir /zabbix-backup cp /etc/zabbix/zabbix_server.conf /zabbix-backup/ cp /etc/zabbix.../zabbix_agentd.conf /zabbix-backup/ cp /etc/zabbix/web/zabbix.conf.php /zabbix-backup/ cp -R /usr/share.../zabbix/ /zabbix-backup/ cp –R /usr/share/doc/zabbix-* /zabbix-backup/ ZABBIX Server升级操作 1.停止ZABBIX-Server...= 'zabbix'; ZABBIX 4.0.6 比 ZABBIX 3.4.14 数据库新增4个表 ?...2.升级ZABBIX Proxy 升级zabbix proxy yum源 rpm –Uvh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/\zabbix-release
使用官方模板 Docker by Zabbix agent2 template 很容易实现Docker容器监控。模板下载链接和配置步骤可以在 Zabbix 集成页面上找到。...目录 导入官方Docker模板 安装并配置Zabbix Agent2 Zabbix Agent2 的特定插件配置 配置Docker主机 Docker by Zabbix agent 2 template...验证主机和模板配置 运行中的Docker模板 导入官方Docker模板 导入Docker by Zabbix agent 2 template 因为要使用官方模板Docker by Zabbix Agent2...-f /var/log/zabbix/zabbix_agent2.log 在进入Zabbix前端页面之前,我想提醒你注意一下Docker socket文件权限——Zabbix 用户需要有访问 Docker...可以通过执行以下命令将 zabbix 用户添加到 Docker 组: usermod -aG docker zabbix 配置Docker主机 配置Docker主机 导入模板之后,我们需要为Docker
zabbix工作原理 zabbix运行的大概的流: zabbix-agent需要安装到被监控的主机上,它负责定期收集的各项数据,并发送到zabbix-server端,zabbix-server将数据存储到数据库中...zabbix的组成 zabbix主要由两部分组成:zabbix-server和zabbix-agent,或者说是监控者与被监控者 zabbix-server:监控者,通过收集agent发送的数据,写入数据库...默认端口号为10051 zabbix-agent:被监控者,通过安装zabbix agent,可将主机作为一个被监控的节点,通过agent采集数据并发送到zabbix server或zabbix proxy...默认端口号为10050 zabbix其他重要组件及工具 zabbix-proxy:监控代理者,通过安装zabbix-proxy,可将主机作为代理,代理zabbix-server收集部分被监控的监控数据...、server-proxy-agent架构 是zabbix企业级的架构,如名称所示其结构由zabbix-server、zabbix-proxy、zabbix-agent构成,其中zabbix-proxy
领取专属 10元无门槛券
手把手带您无忧上云