昨天晚上,我们的 CTO 黄慧攀在云头条做了一个关于 UPYUN CDN 全网监控技术的主题分享,其中着重介绍了 UPYUN 自行开发的“狗眼”监控系统(不要太在意这个名字)。这个系统,是 UPYUN CDN 实时监控的关键基础。
下面是这次分享的现场内容。
欢迎大家评论。查看更多 UPYUN 技术现场分享请关注公众号 ( upaiyun )
——————————————————————————
今天跟大家分享的经验是:监控,这个在服务中尤其重要的环节。尤其是提供 7x24 不间断的云服务
我们的云服务有三块:
CDN
云存储
云处理
每个云服务的监控侧重点都不一样, CDN 这块重点强调的是性能和可用性。 我们用到了 听云(基调)和安全宝、 DnsPod 等,外围的服务监控。
而 zabbix 则是最基础的服务器监控了,这里就不对此做更多的介绍。但重点说说,它的不足之处:
实时性差
无法方便的对业务进行监控(需要做大量对接工作)
另外一个是 Agent ,这个是我们自己写的 shell 脚本。主要是从服务器自身内部发现问题,并告警。如:本机的各个业务系统是否在正确运行,和当前服务器连接关键机房的网络质量等等。 缺点就是:如果自身网络挂了,它就无法告警了
但能根据自己的业务特点,做很多种健康检查。很灵活
数据中心有两块大业务
云存储
云处理
这两个都是非常关键的云服务。去年我们被吐槽最多的就是云存储服务了
这里我们用到了 zabbix 来负责服务器硬件资源的监控,但这个远远不够。。。上面就提到它有很多缺点,无法满足我们的需求,所以我们自己开发了狗眼系统,来做服务监控。
它可以监控到我们某项服务的:
吞吐量
平均处理耗时
最重要的是,它能做到秒级告警
所以我们数据中心,每个子业务都做了狗眼的接入,以保障整个平台的稳定性。如:某个客户上传一个图片,并要求做缩略图存储。
那么就会牵扯到几个业务系统。
API
云处理
云存储
如果上传失败,或者上传很慢,我们一般情况下是找 zabbix 看看哪台服务器压力大。
这个确实是太拙计了...
尤其是在集群服务的情况下,单台服务器根本不反映集群的服务状态
所以狗眼的监控,我们就能准确的判断到哪个子业务的负载有问题,从而影响到了整个业务流程
比如说:云处理环节出问题了,影响到整个文件上传慢。那我们就能去检查云处理这个服务集群怎么个情况,是否因为当前的处理量过大, or 网络读写等情况
而有了“狗眼”之后,我们从原来的盲人摸象,进化为有了敏锐的“嗅觉”,能快速准确的定位为问题。另外呢,我们还有实时日志分析的系统。因为有些具体的错误信息,还是需要在日志里面体现出来的。
注意日志分析系统无法做全量,我们得有所选择。一般 200 OK 正常的请求日志没必要记录和处理的,我们这个日志监控目前是排错,所以我们只处理 code > 400 的记录。
给大家分享个脑图
我们把监控分了主要的 2 种角色, 1 、第三人称; 2 、第一人称;互相配合一起来做告警。期待 100% 无死角
脑图上标黑色线的,表示是该项监控的主要用途
DNSPod 的端口存活监控,就是为做自动容灾的
它会根据历史情况,判定当前这秒的数值是否偏差,异常。并做出告警,页面上就是某个值异常了。。。我的电脑在不停的叫 ing
我们有这么多个渠道给出告警信息,运维人员会发疯的。
并且还得避免狼来了的情况发生。所以我们很有必要对告警进行必要的去重、筛选
另外有个统一的告警平台,也方便维护。对于这些监控,最有用的是历史数据,在上面可以分析出异常来
如我们针对全国机房的链路情况,就有每 10 分钟的采样
采集到的数据要加以处理,才好利用起来
再上图介绍
很清晰的看到 120 多个边缘节点连接我们中转节点的网络速度,其中 4 个是有质量问题的
还能看到历史 48 小时的情况
有些机房,在晚高峰的时候会有机房总出口拥堵而导致性能下降。我们需要历史记录来做出判断
这个就更细致的,是根据节点的服务日志记录分析出来的。平均下载速度、下载速度大于 10mbps 的比例,和回源慢而影响的比例,等等
中间的柱状图还多个颜色混合 0.0 太复杂,就不跟大家解释了。毕竟这是我们家自己做的链路监控系统,外面米有的。
哦对了,在附加一个大家可能会感兴趣的 QA 吧:
Q :狗眼只是定位于自用?之后会对外 商用么? 另外,为什么取“狗眼”这个名字?
A :目前是仅自用,未来打算开源发布。主要是意在一种屌丝心态吧。。
————————————————————————————————————————————————
查看更多内容请关注 UPYUN 公众号。
[重要的另]
UPYUN 公众号及线上渠道长期征集高质量的技术专题类原创文章,如果你是一位业余的技术写手,或者仅仅是有写文章的兴趣,可以联系邮箱: dongying.wang@upai.com ,就具体的投稿事宜和我们沟通。
合适的文章将会在保留作者一切权益的前提下,通过我们的线上渠道进行广泛传播,回报更不会少,同样也欢迎行业观察类、产品类的高质量文章
望周知。
二维码如下,也可以通过微信公众平台和我沟通,谢谢
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.