1、监控服务介绍
1.1逻辑布局
1.2整体布局
1.3常见的监控方案:
开源监控软件:cacti、nagios、zabbix、smokeping、open-falcon等
1.3.1Cacti
https://www.cacti.net/
https://github.com/Cacti/cacti
Cacti是基于LAMP平台展现的网络流量监测及分析工具,通过SNMP技术或自定义脚本从目标设备/主机获取监控指标信息;其次进行数据存储,调用模板将数据存到数据库,使用rrdtool存储和更新数据,通过rrdtool绘制结果图形;最后进行数据展现,通过Web方式将监控结果呈现出来,常用于在数据中心监控网络设备。
1.3.2Nagios
https://www.nagios.org/
Nagios用来监视系统和网络的开源应用软件,利用其众多的插件实现对本机和远端服务的监控,当被监控对象发生异常时,会及时向管理员告警,提供一批预设好的监控插件,用户可以之间调用,也可以自定义Shell脚本来监控服务,适合各企业的业务监控,可通过Web页面显示对象状态、日志、告警信息,分层告警机制及自定义监控相对薄弱。
1.3.3SmokePing
https://oss.oetiker.ch/smokeping/
Smokeping是一款用于网络性能监测的开源监控软件,主要用于对IDC的网络状况,网络质量,稳定性等做检测,通过rrdtool制图方式,图形化地展示网络的时延情况,进而能够清楚的判断出网络的即时通信情况。
1.3.4Open-falcon
https://www.open-falcon.org/
https://github.com/XiaoMi/open-falcon
小米公司开源出来的监控软件open-falcon(猎鹰),监控能力和性能较强。
1.3.5夜莺
https://n9e.didiyun.com/
一款经过大规模生产环境验证的、分布式高性能的运维监控系统,有滴滴基于open-falcon二次开发后开源出来的
分布式监控系统。
1.3.6Zabbix
https://www.zabbix.com/cn/
目前使用较多的开源监控软件,可横向扩展、自定义监控项、支持多种监控方式、可监控网络与服务等。
1.3.7Prometheus
针对容器环境的开源监控软件
1.3.8商业监控解决方案
监控宝(https://www.jiankongbao.com/)
听云(https://www.tingyun.com/)
1.4Zabbix使用场景及系统概述
https://www.zabbix.com/cn/features
Zabbix是一个企业级解决方案,支持实时监控数千台服务器,虚拟机和网络设备,采集百万级监控指标,适用于任何IT基础架构、服务、应用程序和资源的解决方案
1.4.1zabbix使用场景
1.4.2zabbix系统概述
1.4.2.1数据采集
周期性时序数据
主机/对象:服务器、路由器、交换机、存储、防火墙、IP、PORT、URL、自定义监控对象...
采集目标:监控项,指标数据(metrics data)
1.4.2.2数据存储
监控数据存储系统
SQL: MySQL/MariaDB(Zabbix)
NoSQL:Redis(Open-falcon)
rrd: Round Robin Database(Cacti)
1.4.2.3数据类型
历史数据: 每个监控项采集到的每个监控值
趋势数据: 趋势表里主要保留某个监控项一个小时内历史数据的最大值、最小值和平均值以及该监控项一个小时内所采集到的数据个数。
1.4.2.4阈值
可按照预定义的阈值等级实现分层报警
1.4.2.5告警机制
email,短信,微信,语音,故障自治愈
1.4.3zabbix 核心任务
1.4.3.1数据采集
数据采集方式:zabbix-server,zabbix-proxy,zabbix-agent
Agentless:SNMP,Telnet,ssh, IPMI, JMX,
Agent:zabbix agent
1.4.3.2数据存储
zabbix database
1.4.3.3数据展示
zabbix web:
graph -> screen -> slideshow(将多个screen以幻灯片的方式进行轮流展示)
grafana:
以zabbix为数据源展示更绚丽的界面
1.4.3.4告警通知
host (host groups) <- templates #从模板继承告警配置
host -> items -> triggers -> action (条件-conditions, 操作-operations) #自定义告警配置