zabbix启动教程(docker部署zabbix_agent的方法步骤)
zabbix启动教程
docker部署zabbix_agent的方法步骤zabbix_agent部署:
建议:zabbix_agent使用docker-compose方式单独部署
启动方式:
1、run方式启动
docker run --rm --network zabbix --name zabbix_agent--link zabbix_server:zabbix-server -e ZBX_HOSTNAME="mythird" -e ZBX_SERVER_PORT="10051" -e ZBX_SERVER_HOST="172.22.0.3" -p 3998:10050 -d zabbix/zabbix-agent:alpine-3.0-latest
2、docker-compose.yml
目录结构:
[root@container1 zabbix_agent]# cat etc/env_agent ZBX_SERVER_HOST=172.22.0.3 ZBX_SERVER_PORT=10051 ZBX_HOSTNAME=kgtest ZBX_LISTENPORT=3050 ZBX_LOGTYPE=file ZBX_LOGFILE=/tmp/zabbix_agentd.log
a、与zabbix_server/zabbix_proxy部署在同一个docker-compose.yml时,唯一的区别是:links的设置,其格式:servicename: name of zabbix
zabbix_agent: image: zabbix/zabbix-agent:alpine-3.0-latest container_name: zabbix_agent ports: - "10050:10050" environment: ZBX_HOSTNAME: kg volumes: - /etc/localtime:/etc/localtime:ro links: - zabbix_server:zabbix-server user: root privileged: true restart: always networks: - zabbix
b、单独部署:
A、docker的bridge模式:如果是在同一个机器上,需要使用和zabbix_server/zabbix_proxy相同的网络
[root@container1 zabbix_agent]# cat docker-compose.yml version: "3" services: zabbix_agent: image: zabbix/zabbix-agent:alpine-3.0-latest container_name: zabbix_agent3 ports: - "3999:3050" env_file: - ./etc/env_agent volumes: - /etc/localtime:/etc/localtime:ro - ./etc/docker-entrypoint.sh:/usr/bin/docker-entrypoint.sh:ro - ./etc/zabbix_agentd.d:/etc/zabbix/zabbix_agentd.d - ./scripts:/data/zabbix/scripts - ./logs:/tmp user: root privileged: true restart: always networks: - zabbix networks: zabbix: external: true
B、使用docker的host模式:为了监控tcp连接数
注意:使用host模式时,一定要需在防火墙中开放zabbix_agent映射在本机的端口
[root@kg zabbix_agent]# cat docker-compose.yml version: "3" services: zabbix_agent: image: zabbix/zabbix-agent:alpine-3.0-latest container_name: zabbix_agent ports: - "3050:3050" env_file: - ./etc/env_agent volumes: - /etc/localtime:/etc/localtime:ro - ./etc/docker-entrypoint.sh:/usr/bin/docker-entrypoint.sh:ro - ./etc/zabbix_agentd.d:/etc/zabbix/zabbix_agentd.d - ./scripts:/data/zabbix/scripts - ./logs:/tmp user: root privileged: true restart: always #为了实现tcp连接监控,需要使用host网络模式 network_mode: host
检查zabbix_agent是否正常工作:
首先启动zabbix_agent后,在server/proxy容器中先测试一下该agent是否可到达:
web界面设置:
a、如果未设置为自动发现agent方式时,需要手动添加agent主机
agent和server/proxy在同一台机器时,这时候的IP一定是docker分配的内网ip,端口为容器中端口,而不是映射到本机的端口
b、设置为自动发现agent机器
注意:如果设置为添加到某个主机群组时,需要先创建该主机群组
可能出现问题:
1、报错:temporarily disabling Zabbix agent checks on host "kgtest": host unavailable
解决方案:
a、如果是bridge模式,请检查一下agent的ZBX_HOSTNAME是否和主机配置中的主机名相同
b、如果是host模式,请检查一下防火墙是否已开放agent映射到本机端口。测试: telnet 本机IP port
2、报错:Received empty response from Zabbix Agent at [192.168.5.114]. Assuming that agent dropped connection because of access permissions.
其中,192.168.5.114为agent的外网/内网IP
原因:
a、使用zabbix_proxy代理:agent的ZBX_SERVER_HOST设置为zabbix_proxy的IP(172.22.0.6),但是web界面中的主机配置中却选择无agent代理程序。
解决方案:
选择使用指定的agent代理程序即可
b、直连zabbix_server:
A、agent的ZBX_SERVER_HOST设置为127.0.0.1而不是zabbix_server的IP(172.22.0.3)
解决方案:
将agent的ZBX_SERVER_HOST设置为zabbix_server的IP
B、zabbix_agent中日志报错:Message from 172.20.0.6 is missing header. Message ignored.
原因:这是因为zabbix_agent和zabbix_server版本不同不兼容造成的,zabbix_agent使用了新版本,但是zabbix_server使用旧版本造成的。
解决方案:检查一下zabbix_agent和zabbix_server版本
3、发现在中文界面进行自动发现时,出现以下报错:
切换为英文版界面后在操作就没有任何问题
需要更改zabbix_server中mysql中的character_set_server的编码格式。发现在线操作mysql方式无法解决,需要更改一下zabbix_server中的mysql服务启动脚本,解决方案,可以查看一下我的另外一篇文章《docker部署zabbix_server》
到此这篇关于docker部署zabbix_agent的方法步骤的文章就介绍到这了,更多相关docker部署zabbix_agent内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
- dockerfile配置参数(dockerfile中ENTRYPOINT与CMD的结合使用及区别)
- docker容器是怎么进行通信的(Docker容器间通信与外网通信的操作)
- docker启动项目需要tomcat吗(docker安装tomcat并部署Springboot项目war包的方法)
- docker架构设计详解(Docker核心原理之 Cgroup详解)
- dockerswarm使用教程(Docker Swarm集群管理的使用及原理解析)
- docker多个端口怎么区分(解决docker run时候启动两个占有不同端口的问题)
- 利用docker容器化开发环境(使用docker搭建sonarqube的方法)
- docker镜像保存教程(docker镜像导入导出备份迁移的操作)
- docker 命令上传镜像到镜像仓库(Docker 使用国内镜像仓库的方法)
- linux搭建nacos(docker搭建nacos1.3.0的实现)
- docker打包配置好的镜像(docker镜像的导入和导出的实现)
- docker镜像创建教程(Docker镜像加载原理)
- docker容器分配(Docker容器数据卷原理及使用方法解析)
- docker容器根据进程号查看端口(Docker 通过端口来连接一个容器的实现)
- docker gitlab 配置(使用Docker构建一个Git镜像使用clone仓库)
- dockerexec详解(docker中的run/cmd/entrypoint的区别详解)
- 省委书记出席的交流会,十位县委书记同场发言,代表公文材料的高水平(省委书记出席的交流会)
- 《刘老根3》热播,去世15年的她却再次被 伤害(去世15年的她却再次被)
- 十二星座爱情支配欲指数(十二星座爱情支配欲指数)
- 虐待儿童是发泄支配欲的愚蠢行为(虐待儿童是发泄支配欲的愚蠢行为)
- 你或许不知道你隐藏的支配欲望(你或许不知道你隐藏的支配欲望)
- 把宽体丰田86卖了,换成7.5代高尔夫GTI玩起姿态与性能并存的改装(把宽体丰田86卖了)
热门推荐
- sqlserver存储删除过程(Sql中存储过程的定义、修改和删除操作)
- mysql查询数据去除重复(MySQL 大批量插入,如何过滤掉重复数据?)
- 树莓派vnc设置失败(树莓派安装宝塔面板后VNC无法登陆的问题说明)
- lnmp 自动化安装(LNMP系列教程之 设置301重定向的方法)
- docker镜像实例(Docker的镜像制作与整套项目一键打包部署的实现)
- HTML5离线缓存
- MVC中CheckBox
- sqlserver2000安装之后在哪打开(SQL2000安装后,SQL Server组无项目解决方法)
- centos6.5 32位安装gitlab(centos7安装部署gitlab服务器的方法)
- dedecms不能调用文章发布时间(dedecms文章页上一篇与下一篇标题长度截取的方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9