博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标
阅读量:5741 次
发布时间:2019-06-18

本文共 1850 字,大约阅读时间需要 6 分钟。

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

在高并发分布式环境下,对于访问量大的业务、接口等,需要及时的监控网站的健康程度,防止网站出现访问缓慢,甚至在特殊情况出现应用服务器雪崩等场景,在高并发场景下网站无法正常访问的情况,这些就会涉及到分布式监控系统,对于核心指标提前监控,防患于未然。

常见的开源监控系统

1.Zabbix

Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件。

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

入门容易、上手简单、功能强大并且开源免费。

Zabbix易于管理和配置,能生成比较漂亮的数据图,其自动发 现功能大大减轻日常管理的工作量,丰富的数据采集方式和API接口可以让用户灵活进行数据采集,而分布式系统架构可以支持监控更多的设备。

2.Nagios

Nagios是一款开源的企业级监控系统,能够实现对系统CPU、磁盘、网络等方面参数的基本系统监控,以及 SMTP,POP3,HTTP,NNTP等各种基本的服务类型。另外通过安装插件和编写监控脚本,用户可以实现应用监控,并针对大量的监控主机和多个对象 部署层次化监控架构。

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

Nagios最大的特点是其强大的管理中心,尽管其功能是监控服务和主机的,但Nagios自身并不包括这部分功能代码,所有的监控、告警功能都是由相关插件完成的。

3.开源监控工具比较

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

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应用的参数,比如:

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

GC

类加载

JVM内存

进程

线程等

而这些参数的获得,都可以通过MxBeans实现。

5.mysql四大性能指标

查询吞吐量

查询执行性能

连接情况

缓冲池使用情况

6.业务应用监控

对于业务需要监控的接口,比如响应时间等。

以上就是分布式监控系统总结。

阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

转载于:https://blog.51cto.com/13981400/2317627

你可能感兴趣的文章
【WebAPI No.4】Swagger实现API文档功能
查看>>
PESCMS Ticket 客服工单系统 v1.2.6 发布
查看>>
shell java 执行
查看>>
CentOS 7 - 配置服务实现开机自启动
查看>>
HTTP请求报文和HTTP响应报文
查看>>
腾讯开源 Lua 开发插件 sluaunreal,加速游戏业务开发
查看>>
点击事件获得li标签内容
查看>>
MYSQL ORDER BY 两个字段
查看>>
将博客搬至CSDN
查看>>
Spring Cloud 2.x系列之springboot集成quartz
查看>>
图的理解:基本概念
查看>>
Windows 10无法使用debug的解决方案
查看>>
Java集合框架学习总结
查看>>
[二] JavaIO之File FileSystem WinNTFileSystem简介
查看>>
ior和mdtest测试工具安装和使用
查看>>
分析优酷2016.04最新视频加密算法
查看>>
(转)mac 清理xcode
查看>>
Android开发冷启动解决方案 实现秒开
查看>>
JDK 11 是发布了,但收费吗?
查看>>
git 常用命令
查看>>