360内部监控系统Wonder实践之路
女主宣言
Wonder监控系统目前已经是360内部最大、最健全的监控系统。基于open-falcon改造的Wonder,从2016年4月上线至今已经运行了一年多,从最初的“乞丐版”,到现在的“神奇女侠版”,wonder的变化经历了很多。今天小主就为大家分享这篇来自公司内部的分享PPT:“Wonder监控系统实践之路”。
PS:丰富的一线技术、多元化的表现形式,尽在“HULK一线技术杂谈”,点关注哦!
前言
Wonder是 ADDOPS、HULK-dev团队基于开源项目Open-Falcon二次开发的监控系统。Wonder从2016年4月在360内部上线至今,节点数量超过了4W+台,采集的监控项超过千万。
特点:
强大灵活的数据采集
高效率的告警策略管理
人性化的告警设置
高效率的历史数据查询
高可用
Wonder对Open-Falcon改进的功能点:
Agent自动更新
存活监控、端口监控、日志监控
报警队列控制
超过最大报警次数重报
与硬件报修接口联动自动禁用报警
机房报警屏蔽
LastEvent状态持久化存储
现状
1
整体架构图
2
存活组件sniffer
存活监控组件sniffer:一个独立开发的存活监控组件,多机房部署,可以对机器的网络、端口存活进行多点监控。
如下是两组sniffer-agent存活组件采集的状态图:
3
线上规模
线上集群指标:
Transfer_QPS:20万/S;大约5分钟上报6千万监控项
采集监控项:1200万+
占用存储空间:2.4T
RRD归档存储时间:2年
4
数据上报
{
metric: df.bytes.used,
endpoint: w01v.add.bjyt.qihoo.net,
tags: fstype=ext4,mount=/,
value: 1.5,
timestamp: `date +%s`,
counterType: GAUGE,
step: 60
}
Counter(计数器):标识递增的数据,比如接口访问次数、网卡流量。
Gauge(原始值):当前瞬时的一个状态,可能增加,也可能减小,比如CPU使用率,平均延时等等。
sum(df_bytes_used{fstype="ext4",mount="/"}) by (fstype,mount,hulkid)
5
RRD归档策略
// 设置各种归档策略
// 1分钟一个点存 3d
c.RRA("AVERAGE", 0.5, 1, RRA1PointCnt)// 5m一个点存7d
c.RRA("AVERAGE", 0.5, 5, RRA5PointCnt)// 20m一个点存15d
c.RRA("AVERAGE", 0.5, 20, RRA20PointCnt)// 3小时一个点存6个月
c.RRA("AVERAGE", 0.5, 180, RRA180PointCnt)// 12小时一个点存2year
c.RRA("AVERAGE", 0.5, 720, RRA720PointCnt)
6
agent自动更新
Wonder 目前承接了将近4W台主机(包括非HULK管理的主机),Agent部署和维护升级是个不小的工作量。
部署:一次性全部安装使用Qcmd。
版本升级:Wonder Agent支持自动更新
8
结合CMDB
沿用的私有云的业务树层级关系,从最初的360 节点-主业务-子业务-角色,策略、自定义监控和日志监控都是继承关系,并且支持下级自由关闭继承策略和添加自有策略等操作。用户权限:和hulk强一致
9
报警设置
报警方式:
报警组设置:针对所有成员生效
个人报警方式设置:针对当前登录用户生效
添加策略:
策略克隆:
自定义监控:
自定义监控(Plugin)在Wonder中使用更为灵活,用户可以自己定义监控项的名称、用户、执行命令、单位等。
日志监控:
日志监控对应用程序的日志进行监控并对日志进行处理后上报。日志路径支持日期函数匹配。
存活监控:
存活监控作为一种特殊的基础监控已经内置,用户只需配置策略即可报警。
端口监控:
Nginx监控:
Nginx监控已经作为Wonder基础监控项加入到Agent中,支持访问统计、请求时间、499、50x错误统计等,展示界面如下。
10
报警统计
在报警统计中,用户可以非常方便查看报警的状态和历史,并且可以手动忽略报警事件(类似Zabbix的ack功能)。
报警状态:
报警历史:
11
应用监控
应用监控的原理是监控系统定时到部署业务的各台服务器以及vip上访问监控脚本,根据监控脚本返回的信息判断是否需要报警,用户只需写好监控脚本,脚本对项目需要监控的各个要点进行调用,将返回结果按照规定结构显示。
正在做的
Wonder目前正在做的事情:
LVS流量突变监控
数据筛选模块和缓存模块
接入Prometheus
提供自定义上报数据接口
支持同环比查看历史图
未来
在提供安全可靠报警的同时,未来Wonder要努力的方向:
提供尽可能全的基础数据和支持更灵活的自定义数据PUSH
通过数据挖掘,我们会对业务整体情况进行判断
智能监控方面,我们不仅仅只做常规报警预测(比如磁盘),后期还会朝动态阈值、报警关联、报警预测等努力
我们会争取接入更多的业务和提供更多开发的服务
扫描下方二维码了解更多内容
360内部监控系统Wonder实践之路相关推荐
- 微信团队原创分享:iOS版微信的内存监控系统技术实践
为什么80%的码农都做不了架构师?>>> 本文来自微信开发团队yangyang的技术分享. 一.前言 FOOM(Foreground Out Of Memory),是指App在 ...
- 大众点评支付渠道网关系统的实践之路
业务的快速增长,要求系统在快速迭代的同时,保持很好的扩展性和可用性.其中,交易系统除了满足上述要求之外,还必须保持数据的强一致性.对系统开发人员而言,这既是机遇,也是挑战.本文主要梳理大众点评支付渠道 ...
- 支付渠道网关系统的实践之路
http://www.tuicool.com/articles/rIbUzyj 业务的快速增长,要求系统在快速迭代的同时,保持很好的扩展性和可用性.其中,交易系统除了满足上述要求之外,还必须保持数据的 ...
- 从Zabbix到Prometheus,同程艺龙数据库监控系统的实践
来自:DBAplus社群 作者介绍 闫晓宇,同程艺龙数据库技术专家,具有多年互联网行业DB运维经验,在游戏.O2O及电商行业从事过DBA运维工作.2016年加入同程艺龙,目前在团队负责数据库架构设计及 ...
- 体育赛事直播系统的实践之路
谓智慧运动场,就是一套利用互联网科技.软硬件集成,实现体育场地升级的解决方案,它可以运用在篮球等一系列球类运动场中,通过摄像头实时捕捉运动员的技术动作以及跑位影像,可以实现场内屏幕直播以及场外网络直播 ...
- 外网质量监控系统实践之路
女主宣言 _ _ _ _ _ 用户在访问360服务器时,会经过运营商链路.各省的机房然后到达vip,那么在这个链路中任何一个环节出现问题,都会导致用户无法正常上网.如何快速.准确的定位到这个链路中的哪 ...
- 【广告架构day1】爱奇艺广告系统的演进之路:实践中的一些经验
本文来自爱奇艺的分享孙立伟.近年来爱奇艺快速发展,优质内容层出不穷,爱奇艺广告也随之发展和壮大,广告在线服务同时服务于品牌.中小.DSP 等不同客户,形成了可以满足不同需求类型的较为完善的商业广告变现 ...
- php主动推送弹幕_百万在线的美拍直播弹幕系统的实时推送技术实践之路
1.内容概述 1.jpg (30.13 KB, 下载次数: 321) 2 年前 上传 直播弹幕是直播系统的核心功能之一.如何迅速作出一个有很好扩展性的弹幕系统?如何应对业务迅速发展?相信很多工程师/架 ...
- 基于 Prometheus 的监控系统实践
监控作为底层基础设施的一环,是保障生产环境服务稳定性不可或缺的一部分,线上问题从发现到定位再到解决,通过监控和告警手段可以有效地覆盖了「发现」和「定位」,甚至可以通过故障自愈等手段实现解决,服务开发和 ...
最新文章
- canopy算法 java_mahout源码canopy算法分析之二CanopyMapper
- 编写CGI小结(Java)
- MFC初探 —— 基于对话框的MFC显示控制台
- dsp c语言流水灯程序,DSP流水灯源程序
- 罗技dpi计算机配置文件,罗技游戏鼠标的配置文件修改方法 Logitech 游戏软件为游戏鼠标的配置文件设置不同的 DPI...
- PHP获取一年有多少周和每周开始和结束日期
- FileZilla 下载
- 在win10中查看plt文件
- 【OpenCV】色彩空间介绍
- 磨金石教育摄影技能干货分享|优秀摄影作品欣赏——艺术的表达
- 《Reasoning about Entailment with Neural Attention》阅读笔记
- 课程表APP开发市场现状分析
- 2021/3/3 “openEuler20.09下配置docker镜像加速器”
- DoNet:浅淡对delegate的理解
- Docker中创建nginx容器出现docker: Error response from daemon: driver failed programming exter...解决
- C语言入门 输出Hello World!
- 时装过滤效果Lr预设
- 代码编辑器 常用注册码
- 照片不超过100kb怎么弄?图片怎么压缩到100kb以内?
- IMU 惯性测量单元 介绍(一)