07
2024
11
21:11:41

Docker搭建一款分布式系统网络监控系统

Zabbix是一个基于Web界面的企业级开源解决方案,专注于提供分布式系统监视以及网络监视功能。
[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag[_tag_]_]|16|17|2|21|24|28|29|31|35|36|37|39|41|42|43|46|47|48|5|50|51|55|56|57|58|59|6|60|61|62|63|64|65|66|67|68|7|8" data-id="1730365518144">_]_]|16|17|2|21|24|28|29|31|35|36|37|39|41|42|43|46|47|48|5|50|51|55|56|57|58|59|6|60|61|62|63|64|65|66|67|68|7|8" data-id="1730365518144">_]_]|16|17|2|21|24|28|29|31|35|36|37|39|41|42|43|46|47|48|5|50|51|55|56|57|58|59|6|60|61|62|63|64|65|66|67|68|7|8" data-id="1730365518144">_]_]|16|17|2|21|24|28|29|31|35|36|37|39|41|42|43|46|47|48|5|50|51|55|56|57|58|59|6|60|61|62|63|64|65|66|67|68|7|8" data-id="1730365518144">_]_]|16|17|2|21|24|28|29|31|35|36|37|39|41|42|43|46|47|48|5|50|51|55|56|57|58|59|6|60|61|62|63|64|65|66|67|68|7|8" data-id="1730365518144">_]_]|16|17|2|21|24|28|29|31|35|36|37|39|41|42|43|46|47|48|5|50|51|55|56|57|58|59|6|60|61|62|63|64|65|66|67|68|7|8" data-id="1730365518144">_]_]主要特点

  • 全面监控:能够监视各种网络参数,包括服务器、网络设备、虚拟机以及应用服务等,确保服务器系统的安全运营。

  • 灵活通知:提供灵活的通知机制,允许系统管理员根据自定义阈值设置报警功能。一旦监测到异常情况,Zabbix会及时发送通知,帮助管理员快速定位和解决问题。

  • 数据可视化:通过Web界面,用户可以方便地查看实时监控数据及历史记录,包括CPU负荷、内存使用、磁盘使用、网络状况等。

  • 自定义监控:允许用户根据实际需求设置自定义监控项和报警条件,提升监控系统的实用性与灵活性。

  • 能够监视各种网络参数和服务器状态,确保系统的稳定性和安全性。

  • 支持多种监控方式和告警通知方式,可以根据实际需求进行灵活配置。

  • 提供友好的Web界面,用户可以方便地查看实时监控数据和历史记录。

  • Zabbix是一款开源软件,用户可以免费使用并根据自己的需求进行定制和扩展。

核心组件

  • Zabbix Server:负责管理和分析监控数据。它可以通过SNMP协议、Zabbix Agent、ping以及端口监视等方法,提供对远程服务器或网络状态的监视和数据收集功能。Zabbix Server支持多种操作系统平台,如Linux、Solaris、HP-UX等。

  • Zabbix Agent:一个可选组件,需要安装在被监视的目标服务器上。它主要完成对硬件信息或与操作系统相关的内存、CPU等信息的收集,并将这些信息发送给Zabbix Server。Zabbix Agent同样支持多种操作系统平台

应用场景

  • 某大型电商平台通过部署Zabbix,实时监控其网站访问量、服务器负载及交易状态。通过URL的链路监控,该平台能够及时发现并解决在高峰期访问量骤增所带来的服务器压力问题,保证了在线服务的顺畅运行。

  • 在金融行业中,Zabbix被用于监控ATM机、POS机等金融设备的运行状态,确保金融服务的稳定性和安全性。

如需了解更多信息,可以访问其官方网站或查阅相关的技术文档。

官方网站
https://www.zabbix.com/

Docker镜像
https://hub.docker.com/u/zabbix/
GitHub地址
https://github.com/zabbix/zabbix

安装教程

| 部署方案

  • 在Server机器部署Zabbix Server和MySQL、Zabbix Web

  • 在Agent机器部署Zabbix Agent

  • 数据库用于存储监控数据和配置信息的数据库,目前常用的有mysql和postgresql两种数据库。

  • zabbix的server端,负责接收agent发送过来的监控数据,并且提供zabbix的所有核心功能。

  • zabbix的UI端,提供操作控制台和监控展示等功能。

  • zabbix的代理端,部署在目标主机上,用于收集主机的监控数据,并提供给到zabbix server。

Docker部署操作步骤:安装Docker、部署空的Mysql、部署Zabbix server、部署Zabbix web、部署Agent

| 安装docker

sudo apt update
sudo apt install -y docker.io docker-compose

| 部署空的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="zabbix" \
   --restart unless-stopped mysql:5.7 \
   --character-set-server=utf8 --collation-server=utf8_bin \
   --default-authentication-plugin=mysql_native_password

部署Zabbix server

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="zabbix" \
   --network=host \
   --restart unless-stopped \
   zabbix/zabbix-server-mysql

部署Zabbix web

 docker run --name zbx5-web-nginx-mysql -d \
   -e ZBX_SERVER_HOST="127.0.0.1" \    ##宿主机IP,此处在同一台机部署
   -e DB_SERVER_HOST="127.0.0.1" \     ##宿主机IP,此处在同一台机部署
   -e MYSQL_DATABASE="zabbix" \
   -e MYSQL_USER="zabbix" \
   -e MYSQL_PASSWORD="zabbix" \
   -e MYSQL_ROOT_PASSWORD="zabbix" \
   -p 8080:8080 \
   --restart unless-stopped \
   zabbix/zabbix-web-nginx-mysql

部署Agent

docker run --name zbx5-agent -d \
   -e ZBX_HOSTNAME="local-agent" \
   -e ZBX_SERVER_HOST="127.0.0.1"  \ Zabbix server的IP地址,,此处在同一台机部署
   --network=host \
   --restart unless-stopped \
   zabbix/zabbix-agent

执行完毕以上命令之后,访问 http://ip:8080即可看到Zabbix web操作界面。

图片

图片

图片

图片

图片

图片




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/8379.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: