设为首页 收藏本站
查看: 1169|回复: 0

[经验分享] 第6章Zabbix分布式监控

[复制链接]

尚未签到

发表于 2018-1-1 17:31:46 | 显示全部楼层 |阅读模式
  Zabbix是一个分布式的监控系统。分布式监控适合跨机房、跨地域的网络监控。从多个Proxy收集数据,而每个Proxy可以采集多个设备的数据,从而轻松地构建分布式监控系统。
  ZabbixProxy可以用在以下环境中。
  1.监控远程区域。
  2.监控拥有不可靠网络连接的区域。
  3.当监控以千计的设备时分担Zabbix-Server服务器的压力。
  4.简化分布式监控的维护。
  Proxy架构的使用环境可以用6-1来表示。
DSC0000.png

图6-1

  1.Proxy和Server之间只需要一个TCP端口连接。因此,从安全方面考虑,需要一条防火墙规则来确保数据传输的安全。
  2.Proxy采集到的数据在传送给服务器之前都报错在本地。这样保证Proxy和Server断开数据不丢失。ProxyLocalBuffer和ProxyOfflineBuffer控制数据在本地保存的时间。
1.1准备部署Proxy环境
  下面要开始实践了,首先说明下实践环境:
  主机名
  IP地址
  描述
  系统版本
  linux-node1.com
  192.168.90.11
  Zabbix-Server
  CentOS7
  linux-node2.com
  192.168.90.12
  Zabbix-Proxy
  CentOS7
  linux-node4.com
  192.168.90.14
  Zabbix-Agent
  CentOS6
1.2安装Zabbix-proxy
  源码安装Zabbix的时候加上--enable-proxy参数。
  1.采用yum安装,yum安装方式如下:
[iyunv@linux-node2~]# rpm -ivhhttp://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

[iyunv@linux-node2~]# yum install zabbix-proxy zabbix-proxy-mysql mariadb -y

  1.  导入Zabbix-Proxy的数据库
[iyunv@linux-node2~]# systemctl start mariadb

  MariaDB[(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;
  MariaDB[(none)]> grant all privileges on zabbix_proxy.* to zabbi_proxy@localhostidentified by 'zabbix_proxy';
  MariaDB[(none)]> flush privileges;
[iyunv@linux-node2~]# cd /usr/share/doc/zabbix-proxy-mysql-3.0.3/

[iyunv@linux-node2zabbix-proxy-mysql-3.0.3]# zcat schema.sql.gz |mysql -uroot zabbix_proxy

  3.配置Zabbix-Proxy.conf
  zabbix-proxy配置文件详解:https://www.zabbix.com/documentation/3.0/manual/appendix/config/zabbix_proxy
[iyunv@linux-node2~]# grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf

  Server=192.168.90.11
  Hostname=Zabbixproxy
  LogFile=/var/log/zabbix/zabbix_proxy.log
  LogFileSize=0
  PidFile=/var/run/zabbix/zabbix_proxy.pid
  DBName=zabbix_proxy
  DBUser=zabbix_proxy
  DBPassword=zabbix_proxy
  SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
  Timeout=4
  ExternalScripts=/usr/lib/zabbix/externalscripts
  LogSlowQueries=3000
  4.启动Zabbix-Proxy服务
[iyunv@linux-node2~]# systemctl start zabbix-proxy

[iyunv@linux-node2~]# systemctl enable zabbix-proxy

1.3Web界面配置Proxy
  在ZabbixServer GUI中配置zabbix-proxy:单击Administrator→Prxies 如图6-2所示
DSC0001.png

图6-2

1.4监控Proxy架构主机
  1.监控一台Agent主机,Agent端调整为主动模式,以及监听的Server为Proxy的IP
[iyunv@linux-node4~]# grep '^[a-Z]' /etc/zabbix/zabbix_agentd.conf

  PidFile=/var/run/zabbix/zabbix_agentd.pid
  LogFile=/var/log/zabbix/zabbix_agentd.log
  LogFileSize=0
  Server=127.0.0.1
  ServerActive=192.168.90.12
  Hostname=linux-node4.com
  Include=/etc/zabbix/zabbix_agentd.d/
  2.添加主机的方式和正常模式一样。唯一的不同是Monitored by Proxy选项选择的是Proxy名称。如图6-3
DSC0002.png

图6-3

  3.添加主动模式)模板,如图6-4所示
DSC0003.png

图6-4

  4.查看使用Proxy监控,如图6-5、图6-6
DSC0004.png

图6-5

DSC0005.png

图6-6

  如果zabbix_proxy出现错误:started to fail (ZBX_TCP_READ() failed: [4] Interrupted system call)
  解决办法:注释server以及Proxy主机上hosts中取消ZabbixAgent,重启server以及Proxy
1.5Proxy主被模式
  zabbix-agent的工作方式有Active(主动模式)和Passive(被动模式)。Zabbix-Server和Zabbix-Agent之间的通信是Zabbix的专用协议,数据格式为JSON。主动模式由于是Agent将采集到的数据主动发送给Server,而不要需要Server每次连接Agent等待采集,所以采用主动模式会使Zabbix-Server具有最好的性能,在实际生产环境中,一定要将工作模式设置为主动模式,并尽可能地采用更多的Proxy,以降低Server的负担。
1.5.1Porxy被动模式
  默认情况下,Zabbix-Agent工作在被动模式下,工作的模式是由Key和Zabbix_agent.conf参数配置决定的。
DSC0006.png

图6-7

  在zabbix-agent.conf文件中设置被动模式,即将Server参数设置为允许连接的Server,修改配置文件需要重启Zabbix-agent
  Server= 127.0.0.1,192.168.90.11
  被动模式的流程
  1.Server打开一个TCP连接。
  2.Server发送一个Key为Agent.ping
  3.Agent接受到这个请求,然后响应数据
  4.Server对接收到的数据进行处理。
  5.TCP连接关闭。
1.5.2Proxy主动模式
  在zabbix-agent.conf文件中设置主动模式,即将ServerActive参数设置为允许连接的{Server|Proxy},即可配置主动模式。修改配置文件需要重启Zabbix-agent
  ServerActive= 127.0.0.1,192.168.90.11
  在item中,将Items的检测方式修改为主动模式(默认为被动模式),为了提高性能或者环境需要,将所有的items批量修改为主动模式。
DSC0007.png

图6-8

DSC0008.png

图6-9

  Agent向Server请求检测列表
  1.Agent向Server建立一个TCP的连接。
  2.Agent请求需要检测的数据列表。
  3.Server响应Agent,发送一个Items列表。
  4.Agent响应请求。
  5.TCP连接完成本次会话后关闭。
  6.Agent开始周期性地收集数据。
  Agent发送数据给Server
  1.Agent向Server建立一个TCP连接。
  2.Agent发送在采集周期内,需要采集数据给server
  3.Server处理Agent发送的数据。
  4.TCP连接关闭。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-430587-1-1.html 上篇帖子: Centos 7.4 下初探Zabbix安装 下篇帖子: Ubuntu下Zabbix安装及使用问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表