在高并发分布式环境下,对于访问量大的业务、接口等,须要及时的监控网站的健康程度,防止网站出现访问缓慢,甚至在特殊状况出现应用服务器雪崩等场景,在高并发场景下网站没法正常访问的状况,这些就会涉及到分布式监控系统,对于核心指标提早监控,防患于未然。php
常见的开源监控系统java
1.Zabbixmysql
Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件。ios
入门容易、上手简单、功能强大而且开源免费。web
Zabbix易于管理和配置,能生成比较漂亮的数据图,其自动发 现功能大大减轻平常管理的工做量,丰富的数据采集方式和API接口可让用户灵活进行数据采集,而分布式系统架构能够支持监控更多的设备。面试
2.Nagiossql
Nagios是一款开源的企业级监控系统,可以实现对系统CPU、磁盘、网络等方面参数的基本系统监控,以及 SMTP,POP3,HTTP,NNTP等各类基本的服务类型。另外经过安装插件和编写监控脚本,用户能够实现应用监控,并针对大量的监控主机和多个对象 部署层次化监控架构。数据库
Nagios最大的特色是其强大的管理中心,尽管其功能是监控服务和主机的,但Nagios自身并不包括这部分功能代码,全部的监控、告警功能都是由相关插件完成的。性能优化
3.开源监控工具比较服务器
4.建议首选Zabbix,免费开源监控首选,如下我主要以Zabbix为例,主要谈监控流程和核心监控指标。
Zabbix监控流程
Zabbix的监控流程能够简单描述为:
数据采集-->数据存储-->数据分析-->数据展现-->监控报警
数据采集:Zabbix经过SNMP、Agent、ICMP、SSH、IPMI等进行数据采集
数据存储:Zabbix存储在MySQL上,也能够存储在其余数据库
数据展现:web界面展现、(移动APP、java_php开发一个web界面也能够)
数据报警:邮件报警、微信报警、短信报警、报警升级机制
Zabbix的监控配置流程能够简单描述为:
告警是由一系列的流程组成,首先是触发器达到阀值,产生一个事件,接下来由Action对事件信息进行处理,其中包括两部分:
第一部分是发送消息,即将告警信息发送给用户。
第二部分是执行命令,即将事件用命令进行处理,达到对事件故障自动尝试恢复的效果。
Host groups(主机组)→Hosts(主机)→template(模板)→Applications(监控项组)→Items(监控项)→graph(图形) →screen (图形分组)→Triggers(触发器)→Event(事件)→Actions(处理动做)→Media types(告警升级|1.执行远程命令2.发送告警邮件)→User groups(用户组)→Users(用户)→Medias(告警邮件)
在实际生产使用的时候,Items、Trigger、Graph采用模板来进行监控,模板特色就是能够重复的事情一次完成,修改了模板等于修改了全部调用此模板的主机。
Zabbix监控功能
1.监控指标
主机的性能监控
网络设备性能监控
数据库性能监控
多种告警方式
详细的报表图表绘制
监控主机zabbix有专用的agent,能够监控Linux,Windows,FreeBSD等 。
监控网络设备zabbix经过SNMP,ssh(很少用)
2.可监控对象
设备:服务器,路由器,交换机
软件:OS,网络,应用程序
主机性能指标监控
故障监控: down机,服务不可用,主机不可达
3.基础监控数据
主要包括如下几个类别:
CPU
Load
内存
磁盘
IO
网络相关
内核参数
ss 统计输出
端口采集
核心服务的进程存活信息采集
关键业务进程资源消耗
NTP offset采集
DNS解析采集
对于这些基础监控选项所有理解透彻的时刻,也就是对Linux运行原理及命令进阶的时刻。
4.JVM监控
对于Java做为主要开发语言的大多数公司,对于JVM的监控不可或缺。
每一个JVM应用的参数,好比:
GC
类加载
JVM内存
进程
线程等
而这些参数的得到,均可以经过MxBeans实现。
5.mysql四大性能指标
查询吞吐量
查询执行性能
链接状况
缓冲池使用状况
6.业务应用监控
对于业务须要监控的接口,好比响应时间等。
以上就是分布式监控系统总结。
为了让学习变得轻松、高效!今天给你们免费分享一套教学资源,帮助你们在成为架构师的道路上披荆斩棘。
这套视频课程详细讲解了(Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构)等这些成为架构师必备的内容!
欢迎工做一到五年的 Java 的工程师朋友们加入的 Java 架构开发:855801563
本群提供免费的学习指导架构资料以及免费的解答
不懂得问题均可以在本群提出来以后还会有职业生涯规划以及面试指导