推荐-zabbix原理篇(1)

我的留言
加载中

已留言

本文大纲

  • snmp介绍

  • 监控流程

  • 开源监控工具zabbix

  • zabbix监控功能的实现

  • 支持数据库存储类型

  • Zabbix架构中的组件

  • Zabbix逻辑架构

  • Zabbix Server启动后都有那些进程?

snmp介绍

介绍zabbix 之前让我们先来熟悉一下什么是snmp?

SNMP:Simple Network Management Protoclol

翻译一下:简单网络管理协议

SNMP的工作模式是啥?

  • NMS向agent采集数据

  • agent向NMS报告数据

  • NMS请求agent修改配置

SNMP组件:

  • MIB:management information base
    MIB就是snmp的监控对象,以及监控对象的属性(包括名称等)

  • SMI:MIB表示符号

  • SNMP协议

SNMP协议版本:

  • v1, v2, v3

  • v2c: NMS –> agent
    加入了团体字的概念,目前用的比较多的版本。

  • v3: 认证、加密、解密

linux:  net-snmp程序包

通过udp协议server监听在161端口,agent监听在162端口

监控流程

数据采集(数据超过阈值报警)→数据存储(存储时间序列数据形成实施监控曲线图)→数据展示

开源监控工具zabbix

zabbix功能很强大,如何理解zabbix的功能,我打算从cacti和nagios的功能讲起

cacti是一款数据采集,数据存储,外加web界面展示的工具,它负责阈值范围内的实时变化,但是对超过阈值的告警功能很薄弱

  • 优点:实时监控数据变化,以web页面的方式呈现,更直观。

  • 缺点:告警不及时

nagios是一款告警功能很强大的工具,它不关心阈值范围内的变化,只关心状态变化(超过阈值),然后报警。报警方式通过邮件,短信等。

  • 优点:告警反映迅速。

  • 缺点:监控主机数量有限,承载低

zabbix    =   cacti   +  nagios

  • 优点:基于两款工具优点于一身并更强大,实现企业级分布式监控。

  • 缺点:2.2版本带宽占用大但是升级到2.4版本后更节省了带宽资源,其它再无发现。

zabbix监控功能的实现

监控主机zabbix有专用的agent,可以监控Linux,Windows,FreeBSD等 。

监控网络设备zabbix通过SNMP,ssh(不多用)

可监控对象

  • 设备:服务器,路由器,交换机

  • 软件:OS,网络,应用程序

  • 主机性能指标监控

  • 故障监控: down机,服务不可用,主机不可达

  • IPMI(Intelligent Platform Management Interface)

    • 智慧平台管理接口(原本是一种Intel架构的企业系统的周边设备所采用的一种工业标准。IPMI亦是一个开放的免费标准,使用者无需支付额外的费用即可使用此标准。)

支持数据库存储类型

cacti: rrd (round robin database)
abbix-database: MySQL, PGSQL(postgreSQL)、Oracle、DB2、SQLite

Zabbix架构中的组件

zabbix-server: C语言
OS: zabbix-agent: C语言
zabbix-web:GUI,用于实现zabbix设定和展示,PHP开发
zabbix-proxy: 分布式监控环境中的专用组件

Zabbix逻辑架构

定义一个template模板,里面包括多个items,trigger,graphs套用给host或者hostgroups。

server感情兴趣监控项目items通过zabbix。

poller进程(可以有多个进程实现并发处理)包括snmp,agent协议收集被监控主机信息。

如果阈值超过triggers触发器规定,就是形成一个events事件,然后actions处理动作(包括运行预先定制的脚本,不成功发送email或SMS)。

在服务器升级的时候提前设定maintenance维护模式不对服务器产生告警通知。

通过逻辑拓扑图展示工作流程

Zabbix Server启动后都有那些进程?

精选留言

关注该公众号可参与留言

写留言

关注该公众号可参与留言

写留言

加载中
以上留言由公众号筛选后显示

了解留言功能详情

微信扫一扫
关注该公众号

推荐-zabbix原理篇的更多相关文章

  1. 【如何快速的开发一个完整的iOS直播app】(原理篇)

    原文转自:袁峥Seemygo    感谢分享.自我学习 目录 [如何快速的开发一个完整的iOS直播app](原理篇) [如何快速的开发一个完整的iOS直播app](播放篇) [如何快速的开发一个完整的 ...

  2. iOS:app直播---原理篇

    [如何快速的开发一个完整的iOS直播app](原理篇) 转载自简书@袁峥Seemygo:http://www.jianshu.com/p/7b2f1df74420   一.个人见解(直播难与易) 直播 ...

  3. 如何快速的开发一个完整的iOS直播app(原理篇)

    目录 [如何快速的开发一个完整的iOS直播app](原理篇) [如何快速的开发一个完整的iOS直播app](播放篇) [如何快速的开发一个完整的iOS直播app](采集篇) 前言 大半年没写博客了,但 ...

  4. 分解机(Factorization Machines)推荐算法原理

    对于分解机(Factorization Machines,FM)推荐算法原理,本来想自己单独写一篇的.但是看到peghoty写的FM不光简单易懂,而且排版也非常好,因此转载过来,自己就不再单独写FM了 ...

  5. 微信技术分享:微信的海量IM聊天消息序列号生成实践(算法原理篇)

    1.点评 对于IM系统来说,如何做到IM聊天消息离线差异拉取(差异拉取是为了节省流量).消息多端同步.消息顺序保证等,是典型的IM技术难点. 就像即时通讯网整理的以下IM开发干货系列一样: <I ...

  6. Android插件化技术——原理篇

    <Android插件化技术——原理篇>     转载:https://mp.weixin.qq.com/s/Uwr6Rimc7Gpnq4wMFZSAag?utm_source=androi ...

  7. Cesium原理篇:5最长的一帧之影像

    如果把地球比做一个人,地形就相当于这个人的骨骼,而影像就相当于这个人的外表了.之前的几个系列,我们全面的介绍了Cesium的地形内容,详见: Cesium原理篇:1最长的一帧之渲染调度 Cesium原 ...

  8. Cesium原理篇:3最长的一帧之地形(2:高度图)

           这一篇,接着上一篇,内容集中在高度图方式构建地球网格的细节方面.        此时,Globe对每一个切片(GlobeSurfaceTile)创建对应的TileTerrain类,用来维 ...

  9. Cesium原理篇:7最长的一帧之Entity(下)

    上一篇,我们介绍了当我们添加一个Entity时,通过Graphics封装其对应参数,通过EntityCollection.Add方法,将EntityCollection的Entity传递到DataSo ...

随机推荐

  1. vue之组件的使用(转载)

    在工程目录/src下的component文件夹下创建一个 firstcomponent.vue并写仿照 App.vue 的格式和前面学到的知识写一个组件. <template> <d ...

  2. merge dict key

    #!/usr/local/python # -*- coding:utf-8 -*-user_dict = {'python': 23, 'Python': 51, '机器':10, 'PYTHON' ...

  3. ios之coretext

    API接口文档. https://developer.apple.com/library/mac/#documentation/Carbon/Reference/CoreText_Framework_ ...

  4. MySQL 8.0.12 基于Windows 安装教程

    第一步:到MySQL官网下载安装包:https://dev.mysql.com/downloads/mysql/ 第二步:将下载好的安装包(mysql-8.0.12-winx64 .zip)解压到相应 ...

  5. 利用system-config-kickstart实现半自动化安装

    老司机开车了… 上车请坐稳… centos7系统 首先确认已经安装了system-config-kickstart包,如果没有安装就yum install system-config-kickstar ...

  6. fit in gnuplot

    Table of Contents 1. fit-gnuplot 1 fit-gnuplot syntax >> fit [xrange][yrange] function 'datafi ...

  7. Android获取屏幕大小(Px)

    private DisplayMetrics dm = new DisplayMetrics(); TextView tv; Button bu; @Override protected void o ...

  8. Linux的常用shell命令技巧集

    1.删除0字节文件 find -type f -size 0 -exec rm -rf {} ; 2.查看进程 按内存从大到小排列 ps -e -o "%C : %p : %z : %a&q ...

  9. 【01】Firebug 教程

    Firebug 教程 什么是 Firebug? Firebug 是一个开源的web开发工具.   现在浏览器自带firebug了.     安装 Firebug Firebug下载地址: https: ...

  10. 实现List集合中数据逆序排列

    Collections.reverse(list); 实现list集合逆序排列