Zabbix监控系统提供分布式系统监视以及网络监视功能

目录

一.监控软件的作用

二.Zabbix基本介绍

1.Zabbix是什么?

2.Zabbix监控原理 

3.Zabbix的优点

4.Zabbix的缺点

5.Zabbix监控系统的监控对象

三.Zabbix的监控架构

1.server-client架构

2.server-proxy-client架构

3.master-node-client架构

四.Zabbix的程序组件

五.Zabbix的监控模式

1. 主动模式

2. 被动模式

六.部署安装Zabbix5.0


一.监控软件的作用

作为一个运维,需要会使用监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果和网站的健康状态

利用一个优秀的监控软件,我们可以:

  • 通过一个友好的界面进行浏览整个网站所有的服务器状态
  • 可以在 Web 前端方便的查看监控数据
  • 可以回溯寻找事故发生时系统的问题和报警情况

二.Zabbix基本介绍

1.Zabbix是什么?

官方网址:Zabbix :: The Enterprise-Class Open Source Network Monitoring Solution

  • zabbix是一个基于Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
  • zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
  • zabbix由两部分构成,zabbix server与可选组件zabbix agent(端口:10050)。通过C/s模式采集数据,通过B/S模式在Web端展示和配置
  • zabbix server 可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux等平台上。
  • zabbix agent需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。

Server

Zabbix Server需运行在LAMP(Linux+Apache+Mysql+PHP)环境下,对硬件要求低

Agent

目前已有的agent基本支持市面常见的OS,包含Linux、HPUX、Solaris、Sun、windows等

SNMP

支持各类常见的网络设备

2.Zabbix监控原理 

Zabbix监控系统提供分布式系统监视以及网络监视功能_第1张图片

  1. zabbix agent安装在被监控的主机上,zabbix agent负责定期收集客户端本地各项数据,并发送至 zabbix server端
  2. zabbix server收到数据后,将数据存储到数据库中
  3. 用户基于 Zabbix WEB 可以看到数据在前端展现图像
  4. 当zabbix监控某个具体的项目, 该项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,包括发送信息(邮件、微信、短信)、发送命令(shell 命令、reboot、restart、install 等)

3.Zabbix的优点

  • 开源,无软件成本投入
  • Server对设备性能要求低
  • 支持设备多,自带多种监控模板
  • 支持分布式集中管理,有自动发现功能,可以实现自动化监控
  • 开放式接口,扩展性强,插件编写容易
  • 当监控的 item 比较多服务器队列此较大时可以采用主动状态,被监控客户端主动从server端去下载需要监控的item然后取数据上传到server端。这种方式对服务器的负载比较小。
  • Api的支持,方便与其他系统结合

4.Zabbix的缺点

  • 需在被监控主机上安装agent,所有数据都存在数据库里,产生的数据据很大,瓶颈主要在数据库。
  • 项目批量修改不方便。
  • 社区虽然成熟,但是中文资料相对较少,服务支持有限。
  • 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发难度较大。
  • 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;且自定义的项目报警需要自己设置,过程比较繁琐。
  • 缺少数据汇 总功能,如无法查看-组服务器平均值, 需进行二次开发;

5.Zabbix监控系统的监控对象

类型 典型代表服务 安装的服务
数据库 MySQL,MariaDB,Oracle,SQL Server agent
应用软件 Nginx,Apache, PHP,Tomcat agent
集群 LVS,Keepalived,HAproxy,RHCS,F5 agent
虚拟化 VMware,KVM,XEN ,docker ,k8s agent
操作系统 Linux,Unix,Windows性能参数 agent
硬件 服务器,存储,网络设备 IPMI
网络 网络环境(内网环境,外网环境) SNMP

在这里插入图片描述

三.Zabbix的监控架构

在实际监控架构中,zabbix根据网络环境、监控规模等分了三种架构: server-client 、master-node-client、server-proxy-client

1.server-client架构

Zabbix监控系统提供分布式系统监视以及网络监视功能_第2张图片

  • zabbix的最简单的架构
  • 监控机和被监控机之间不经过任何代理 ,直接由zabbix server和zabbix agentd之间进行数据交互
  • 适用于网络比较简单,设备比较少的监控环境

2.server-proxy-client架构

Zabbix监控系统提供分布式系统监视以及网络监视功能_第3张图片

  • 其中proxy是server、client之间沟通的一个桥梁,proxy本身没有前端,而且其本身并不存放数据,只是将agentd发来的数据暂时存放,而后再提交给server 
  • 该架构经常是和master-node-client架构做比较的架构 ,一般适用于跨机房、跨网络的中型网络架构的监控

3.master-node-client架构

Zabbix监控系统提供分布式系统监视以及网络监视功能_第4张图片

  • 该架构是zabbix最复杂的监控架构,适用于跨网络、跨机房、设备较多的大型环境 。
  • 每个node同时也是一个server端,node下面可以接proxy,也可以直接接client 。
  • node有自已的配置文件和数据库,其要做的是将配置信息和监控数据向master同步,master的故障或损坏对node其下架构的完整性

四.Zabbix的程序组件

  1. Zabbix agent客户端守护进程,负责部署在被监控主机上,把被监控主机的数据传送给zabbix server,例如:收集 CPU 负载、内存、硬盘使用情况等;
  2. Zabbix server服务端守护进程,负责接收agent发送的信息,组织配置信息,统计配置信息和操作数据等
  3. Zabbix database存储系统,用于存储zabbix的所有配置信息,监控数据的数据库,例如mysql, pgsq|
  4. Zabbix webGUI图形化界面,zabbix的web界面,管理可以通过zabbix的web界面管理zabbix配置以及查看zabbix的监控信息,可以独一部署在一台服务器上
  5. Zabbix proxyzabbix分布式代理守护进程,分布式环境中使用,zabbix proxy代表server端管理该区域中的信息收集,最终统一发往zabbix server
  6. Zabbix getzabbix 数据接收工具,单独使用的命令,通常在 server 或者 proxy 端执行获取远程客户端信息的命令
  7. Zabbix senderzabbix 数据发送工具,用户发送数据给 server 或 proxy 端,通常用户耗时比较长的检查
  8. Zabbix_ java_ gatewayjava网关

五.Zabbix的监控模式

1. 主动模式

  • 主动检测: 由agent端主动收集信息发送给server端 工具是zabbix_sender
  • 相对于agent而言; agent(active),agent向server请求与自己相关监控项配置, 主动地将server配置的监控项相关的数据发送给server;
  • 主动监控能极大节约监控server的资源。

2. 被动模式

  • 被动检测:由server端主动拉取信息 工具是zabbix_get
  • 相对于agent而言 ; agent, server向agent请求获取配置的各监控项相关的数据,agent接收请求、获取数据并响应给server;

六.部署安装Zabbix5.0(未完结,待更新)

你可能感兴趣的:(分布式文件系统与运用,分布式,运维,安全)