1、通过传感器,采集数据,存储,输出显示器,如果采集到数据达到阈值就会报警
SNMP协议工作模式:
–NMS主动请求agent采集数据
–agent主动向NMS监控端发送报告,NMS端和agent端都须监控在socket上
–NMS端主动请求agent端修改改变数据
SNMP的组件:
MIB:management information base,管理信息库,实现定义监控端或被监控端数据采集规范 定义被管理对象的属性,属相权限,数据类型等,agent在本地必须有MIB库,MIB库中定义了监控指标 MIB视图可定义MIB库中部分指标(需要的指标),每一个视图用一个数字或者名称标记,每一个被监控的 对象都有其唯一的OID,MIB树的概念 SIM:MIB表示符号 SNMP协议 SNMP协议版本: V1,V2,V3, v2c,基于社区管理机制,NMS--->agent发起数据请求时,传送社区标识(秘钥),纯文本的,用的多 V3,新版本功能强,用得少,支持认证加密解密 Linuxs实现SNMP包:net-snmp程序包 NMS可发起的操作: Get,GetNext,Set,Trap, Agent可发起的操作: Respose 基于UDP: NMS:162 Agent:161 SNMP只实现数据采集,存储,报警等没有实现 Nagios只关心状态转换,并完成报警 Cacti数据收集展示,状态转换敏感度较低 Nagios+Cacti以前比较常见,但是这是属于两套监控系统,比较麻烦,然后就有了Zabbix 注明的开源监控工具: Zabbix,Zennos,Opennms,Catcti,Nagios(Icinga),Ganglia 监控功能的实现: 专用agent ssh SNMP(标准协议,标准接口) IPMI:智慧平台管理接口,Intel构架企业系统周边设备采用的一种工业标准,免费 Zabbix2.2版本之前使用JSON格式(XML),明确告诉agent具体指标意义,agent无需在本地约定MIB库, JSON具有元数据,消耗带宽 Zabbix2.4比2.2版本之前流量带宽节省三分之一 Zabbix:具有专用的agent的监控工具 监控主机:Linux Windows FreeBSD 网络设备:SNMP SSH(并非所有) 可监控对象: 设备/软件 设备:服务器 路由器 交换机 IO系统 软件:OS 网络 应用程序 偶发性的故障: 主机down 服务不可用 主机不可达 严重事件: 主机性能指标: 趋势,事件序列数据: 数据存储: Cacti:rrd,环状数据库, Zabbix:mysql pgsql Zabbix发展历史: 1998-2009(1.8)-2012(2.0)-2015(2.4) Zabbix监控手段: Zabbix agent SNMP agent IPMI agent Agentless monitoring Web monitoring Database monitoring Internal check Caculated monitoring Custom command monitor 监控指标: Web 响应时间 下载速度 响应代码等 报警手段: E-mail ,SMS ,Jabber ,Chat message ,Command Exeution(命令执行) Zabbix architecture: Zabbix架构组件: Zabix—server(c语言研发) OS :Zabbix agent Zabbix-database Zabbix-web:用于实现zabbix设定和表示(PHP研发) Zabbix-proxy:分布式监控环境中的专用组件 Zabbix-database:MYSQL PGSQL(postgreSQL) Oracle DB2 SQLite,并非实际组件,协调server Zabbix基于JMX监控java程序 Zabbix常用术语: 主机主机(host):要监控的网络设备,可由IP或或DNS名称指定; 主机组(host group):主机的逻辑容器,可以包含主机和模板,但同一个组内的主机和模板不能互相链 接;主机组通常在给用户或用户组指派监控权限时使用; 监控项(item):一个特定监控指标的相关的数据,这些数据来自于被监控对象;item是是zabbix 进行数据收集的核心,没有item,将没有数据;相对某监控对象来说,每个item都由“key”进行标识; 触发器(trigger):一个表达式,用于评估某监控对象的某特定item内所接收到的数据是否在合 理范围内,即阈值;接收到的数据量大于阈值时,触发器状态将从到的数据量大于阈值时,触发器状态将从 “OK”转变为转变为“Problem”,当数据量再次回归到合理范围时,其状态将从“Problem”转换回“OK” 事件(event):即发生的一个值得关注的事情,例如触发器的状态转变,新的状态转变,新的agent或重 新上线的或重新上线的agent的自动注册等; 动作(action):指对于特定事件事先定义的处理方法,通过包含操作(如发送通知如发送通知)和条 件(何时执行操作何时执行操作);; 报警升级(escalation):发送警报或执行远程命令的自义定方案,如每隔案,如每隔5分钟发送一次警 报,共发送分钟发送一次警报,共发送5次等; 媒介(media):发送通知的手段或通道,如Email、、Jabber或SMS等; 通知(notification):通过选定的媒介向用户发送的有关某事件的信息; 远程命令(remote command):预定义的命令,可在被监控主机处于某特定条件下时自动执行; 模板模板(template):用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph、 screen、application以及以及low-level discovery rule;模板可以直接链接至单个主机; 应用(application):一组item的集合; web场景(web scennario):用于检测web站点可用性的一个站点可用性的一个或多个或多个HTTP请求; 前端(frontend)::Zabbix的的web接口; Zabbix产生数据主要由四部分组成: 配置数据 历史数据:50Bytes 历史趋势数据:128Bytes 事件数据:130Bytes Zabbix安装过程; 准备好mariadb数据库,创建Zabbix数据库---->CREATE DATABASE zabbix; 创建Zabbix数据库用户----->GRANT ALL on zabbix.* TO 'zbxuser'@'$(hostname)' IDENTIFIED BY 'zbxpasswd'; 生效创建的用户---->FLUSH PRIVILEGES; 将Zabbix官方yum源加入本地/etc/yum.repos.d/*.repo,如下: [zabbix] name=zabbix baseurl=http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/ gpgcheck=0 enable=1 安装相应的Zabbix软件包 ---->yum install zabbix-release zabbix-server zabbix-server-mysql zabbix-get zabbix-web zabbix-web-mysql zabbix-sender 将安装完成的/usr/share/doc/zabbix-server-xxxx/(zabbix版本不同,文件不相同,2.2版本下 在create目录下存在三个脚本,schema.sql--->image.sql---->data.sql) ---->mysql -uzabbix zabbix < schema.sql ---->mysql -uzabbix zabbix < image.sql ---->mysql -uzabbix zabbix < data.sql 这里我安装的是3.4版本,/usr/share/doc/zabbix-server-xxxx目录下存在一个create.ql.gz文件, 将其导入数据库中 ---->zcat /usr/share/doc/zabbix-serve-xxx/create.ql.gz | mysql -uzabbix -h172.20.10.3 -pzaxpasswd zabbix /etc/zabbix/zabbix-server.conf下: DBhost=172.20.10.3,其为mysql数据库的主机IP,生产中mysql数据库基本是独立的主机,所以这 里不使用localhost来指定 DBpassword一般默认为空,这里补全创建zabbix数据库中用户密码,DBpassword=zaxpasswd
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95650