Docker搭建zabbix,配置zabbix-agent基于Ubuntu系统

Docker搭建zabbix,配置zabbix-agent基于Ubuntu系统

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vEOEjvSr-1648187439073)(/uploads/article/20220325/623d56b7e5aba.png)]
Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。

用户群:90%以上中小型的泛互联网企业

优点:

  1. 支持多平台的企业级分布式开源监控软件
  2. 安装部署简单,多种数据采集插件灵活集成
  3. 功能强大,可实现复杂多条件告警,
  4. 自带画图功能,得到的数据可以绘成图形
  5. 提供多种API接口,支持调用脚本
  6. 出现问题时可自动远程执行命令(需对agent设置执行权限)

缺点:

  1. 项目批量修改不方便
  2. 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发,难度较大;
  3. 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐(但是网上的模板比较,也可以使用模板导入的方法);
  4. 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;
  5. 数据报表需要特殊二次开发定义;

Docker zabbix 安装流程

最近研究关于服务器监控,由于一直用阿里云资源,但是查询各种监控比较麻烦,早期了解到zabbix运维工具,也受益于docker的流行,使我们安装使用更加的方便;由于搭建非本地数据库相对麻烦,以下以本机数据库为例演示,后续在更独立RDS数据库部署;

使用内置MySQL

Zabbix 应用实例将 10051/TCP 端口(Zabbix trapper)和80/TCP 端口(HTTP)暴露给主机。
我这里配置到物理机,对应的端口是:9091和9092,这里可以自行配置

docker run --name zabbix-appliance -t \
      -p 9091:10051 \
      -p 9092:80 \
      -d zabbix/zabbix-appliance:latest
  • 访问地址:http://ip:9092
  • 默认账户:Admin
  • 默认密码:zabbix

存在错误:

1.Zabbix agent is not available (for 3m)

2.Get value from agent failed: cannot connect to [[127.0.0.1]:10050]: [111] Connection refused

配置docker 容器的IP也出错,需要配置docker容器对应的gateway的IP
3.Get value from agent failed: cannot connect to [[172.17.0.2]:10050]: [111] Connection refused

解决思路:

  • 使用Docker安装几个容器后默认没有安装zabbix-agent,自然无法链接到本机自己的代理。
  • 宿主机和dokcer容器的网络不通原因

第一步:apt install zabbix-agent (Ubuntu 16.04 64位)

第二步:获取安装zabbix容器的IP(zabbix server ip)

docker inspect zabbix-appliance | grep IPAddress

"Gateway": "172.17.0.1",    # 配置到zabbix的agent代理程序的接口-主机IP地址中;
"IPAddress": "172.17.0.2",  # zabbix server ip

第三步:vim /etc/zabbix/zabbix_agentd.conf

Server=172.17.0.2       # zabbix server ip
ServerActive=172.17.0.2 # zabbix server ip
Hostname=Zabbix server  # 默认

第四步:修改zabbix web界面中主机配置

配置–主机–Zabbix server将agent代理程序的接口更改为“172.17.0.1”(容器里的Gateway IP)即可

第五步: zabiix-agent的操作

  • systemctl restart zabbix-agent
  • systemctl status zabbix-agent
  • systemctl start zabbix-agent.service
  • systemctl enable zabbix-agent.service

Docker安装zabbix
参考官方地址:https://www.zabbix.com/documentation/current/zh/manual/installation/containers

你可能感兴趣的:(工具,运维工具,https,nginx,http)