【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

又拍云 CDN 全网实时、精准化监控技术实践

  • 2016-01-10
  • 本文字数:1244 字

    阅读完需:约 4 分钟

又拍云如何在国内业界率先做到 CDN 全网实时、精准化监控?就这个问题,又拍云 CTO 黄慧攀于 8 月 25 日在“云头条”做了专题分享。内容涉及监控在云服务中的重要性,以及实现监控性能提升的技术实战方法。

首先,从整体上讲,又拍云的云服务有三块:

  • CDN
  • 云存储
  • 云处理

每个云服务的监控侧重点各有不同。

CDN:监控性能和可用性

又拍云的 CDN 用到了听云(基调)和安全宝、DnsPod 等外围的服务监控。zabbix 是最基础的服务器监控,它的不足之处在于:

  1. 实时性差;
  2. 无法方便的对业务进行监控(需要做大量对接工作)。

Agent 是 又拍云自己写的 shell 脚本,负责从服务器自身内部发现问题,并告警。如:本机的各个业务系统是否在正确运行,和当前服务器连接关键机房的网络质量等。缺点在于如果自身网络出现问题就无法告警,但能根据自己的业务特点,做多种健康检查,比较灵活。

数据中心:自主研发狗眼监控系统

注:标黑色线的,表示该项监控的主要用途

数据中心有两块大业务:

  • 云存储
  • 云处理

去年又拍云用 zabbix 来负责服务器硬件资源的监控,但无法满足需求,所以我们又拍云自己开发了一个系统,命名为“狗眼系统”,来专门做服务监控。它可以监控到又拍云某项具体服务:

  • 吞吐量
  • 平均处理耗时

更重要的是,它能做到秒级告警,又拍云数据中心每个子业务都做了狗眼的接入,以保障整个平台的稳定性。

举个例子,某个客户上传一个图片,并要求做缩略图存储。这会牵扯到几个业务系统:

  • API;
  • 云处理;
  • 云存储。

如果上传失败,或者上传很慢,以前又拍云通过 zabbix 观察哪台服务器压力大,非常麻烦,在集群服务的情况下单台服务器根本不反映集群的服务状态。

而在开发出狗眼监控后,又拍云能准确的判断到哪个子业务的负载有问题,影响到了整个业务流程,比如:云处理环节出问题了,影响到整个文件上传速度。 狗眼会根据历史情况,判定当前这秒的数值是否偏差,异常,并做出告警。又拍云的工作人员马上检查云处理这个服务集群的状况,了解是否因为当前的处理量过大或者网络读写等情况导致。

狗眼系统从 2013 年 12 月开始开发,耗时 1 周。用了将近半年时间连接 又拍云服务。“狗眼”有 20w 个 UDP 包的处理能力,有了狗眼系统,又拍云从原来的盲人摸象,进化为具有敏锐的“嗅觉”。能快速准确的定位为问题。

日常监控:实时日志分析系统

另外,又拍云还有实时日志分析系统。有些具体的错误信息需要在日志里面体现出来。日志分析系统无法做全量,一般 200 OK 正常的请求日志没必要记录和处理的,又拍云只处理 code & 400 的记录。

有这么多个渠道给出告警信息,还得避免狼来了的情况发生,对告警进行去重、筛选非常重要,黄慧攀将监控分了主要的 2 种角色,互相配合一起来做告警,方便维护。

这些监控最有用的是历史数据,在上面可以分析出异常,如又拍云针对全国机房的链路情况,每 10 分钟采一次样,采集到的数据加以处理总结出一些规律,如有些机房在晚高峰的时候会总出口拥堵而导致性能下降。更细致的观察需要根据节点的服务日志记录分析,如平均下载速度,下载速度大于 10mbps 的比例,回源慢的影响比例等。

2016-01-10 01:031056

评论

发布
暂无评论
发现更多内容

netty案例,netty4.1高级应用篇二,手写RPC框架第二章《netty通信》

小傅哥

Netty 小傅哥

数字化背景下的经济社会发展的新特征 新趋势

CECBC

区块链 人工智能 大数据

JDK8 日期 API 使用

HeGuang

JDK1.8

我,一个当代普通大学生的自述

有梦的咸鱼

个人成长 大学生日常 个人感悟 讨论写作

netty案例,netty4.1源码分析篇四《ByteBuf的数据结构在使用方式中的剖析》

小傅哥

Java Netty 小傅哥

spring事务的这10种坑,你稍不注意可能就会踩中

简爱W

牛逼操作,ThreadLocal还能当缓存用

简爱W

Java

Java 约束注解

HeGuang

netty案例,netty4.1源码分析篇六《Netty异步架构监听类Promise源码分析》

小傅哥

Netty 小傅哥

世界正在重塑 加密货币将扮演什么角色

CECBC

数字货币 加密货币

区块链的共识机制有哪些好处优势?

CECBC

区块链 分布式 金融

8锁问题

HeGuang

synchronized

netty案例,netty4.1高级应用篇三,手写RPC框架第三章《RPC中间件》

小傅哥

Netty 小傅哥

一个实用的开源项目,可以快速将 Elasticsearch 数据导出到 csv

AlwaysBeta

Python 数据库 elasticsearch Kibana Lucene Elastic Search

netty案例,netty4.1源码分析篇一《NioEventLoopGroup源码分析》

小傅哥

Netty 小傅哥

大数据技术思想入门(二):分布式存储集群特点

cristal

Java 大数据 hadoop 分布式

Week10---课后总结

Geek_165f3d

做职场里的“超级英雄”,需要怎样的盔甲与工具?

脑极体

Spring的Controller是单例还是多例?怎么保证并发的安全

简爱W

这么理解业务架构就对了!

周金根

BIZBOK 业务架构

【数据结构与算法】力扣实战之移动零、盛最多的水、爬楼梯

三钻

算法 大前端 LeetCode 数据结构与算法

netty案例,netty4.1源码分析篇二《ServerBootstrap配置与绑定启动》

小傅哥

Java Netty 小傅哥

netty案例,netty4.1源码分析篇三《Netty服务端初始化过程以及反射工厂的作用》

小傅哥

Java Netty 小傅哥

Week10--课后作业

Geek_165f3d

oeasy 教您玩转linux010101查看内核uname

o

一款高仿 Eyepetizer | 开眼短视频的 MVVM 开源项目

vipyinzhiwei

android kotlin 短视频 eyepetizer 开眼

netty案例,netty4.1源码分析篇五《一行简单的writeAndFlush都做了哪些事》

小傅哥

Java Netty 小傅哥

书摘之《堂吉诃德》—— 谁不曾想过仗剑走天涯?

小匚

读书笔记

阿里内部流传的Mybatis笔记终于流传出来了,赶紧收藏

简爱W

深入浅出Vert.x架构

dinstone

都2020了,你的APP还不能运行小程序?

FinClip

小程序生态 私有小程序技术

又拍云 CDN 全网实时、精准化监控技术实践_音视频(后端)_UPYUN_InfoQ精选文章