王硕

大家好,我叫王硕,来自于 GrowingIO。

刚才听上一个演讲嘉宾讲精益看板很有感触,作为运维来讲,在某些公司有时候会非常痛苦,因为出了问题大家都会先找你,恨不得你就是那个干坏事的人,背锅的人,有些公司出大问题,老板会站在你身后看你去解决问题,而且日常会有很多插入的工作,最终会导致工作不是那么开心。我之前就职的两家公司都是外企,更讲究有效率的工作和加班,其实还是比较不错的,即使加班也会有加班费,法定节假日加班是 3 倍工资。每天工作不会让你干满 8 个小时,6 个小时已经不错了,如果你能高效干 4 个小时已经挺好了。如果你去参加开发者大会经常会听到敏捷这个词,在之前的公司当中,我们就是用 Scrum 来高效的管理 DevOps 团队的。

今天我讲的演讲主题是如何基于 AWS 做自动伸缩系统,AWS 是云计算的鼻祖,是最开始做云计算的。我们在 AWS 还没有提供自动伸缩服务之前我们就已经做出了自动伸缩系统,而且是使用了 Spot Instances,也就是竞价实例。

在进入正题之前先介绍一下 GrowingIO,GrowingIO 是基于用户行为的新一代数据分析产品,无需埋点即可采集全量、实时用户行为数据,数据分析更精细,帮助管理者、产品经理、市场运营、数据分析师、增长黑客等提升转化率、优化网站 / APP,实现用户快速增长和变现。这是一件非常有挑战的事情。放眼今天我们来看整个运维行业,如果你只是一个传统的 Ops,在大公司做一颗螺丝钉是完全没有问题的,但是如果你想去一家创业公司,你想让自己变得有竞争力,你必须成为 DevOps,你必须具有很强的开发背景。而今后不仅仅你要具有很强的开发背景、运维背景等相关的知识,你还要具备 Growth 思想,大数据分析的能力,而 GrowingIO 能够帮助你成为这样的人,欢迎加入 GrowingIO。

进入正题,为什么要做自动伸缩系统,首先集群要承载高峰期的压力,其次也要减少低峰期的服务器成本。DevOps 要干的事情很多,Cost Saving 是其中很重要的一个方面,这是我们做自动伸缩系统的一个目的。

接下来讲一讲 AWS 的 Instnaces 类型,首先最常见的一种是 On-Demand Instances,不管是按小时计费还是分钟计费,说白了起来就计费,基本上国内的云厂商都会支持这种方式。第二种是 Reserved Instances,国内的云厂商大部分也支持这功能。第三种是 Spot Instances,比如说一个机器你出一块钱我出两块钱,价高者得,这是一个竞价的过程。国内实现这个功能的厂商并不多。我们如果想降低服务器的费用,就要很好的利用 Spot Instances。我们就是通过这种方式,节省了很多服务器的费用,当然具体细节还涉及到很多复杂的东西,有可能很小的一个机型,通过不同的竞价反而价钱会比较高。比如说 A 机型本来要小于 B 机型,但也许通过竞价,价钱要比 B 机型价钱高,这里涉及到竞价算法的事情。

讲一讲我们遇到的痛点有哪些。首先,AWS 这么大的云厂商,我们都可能遇到某个机房机器不够的情况,你的自动伸缩系统要有能力 Launch 不同类型的机器、甚至不同机房的机器。第二,有些机器有可能因为某些特殊的原因,他是不能够被关闭的。第三个是网络原因,AWS 在全球市场是做得非常成功,但是在巴西市场做的不是特别好,经常有网络方面的问题。

讲一讲我们做这个系统的几个原则。第一点,我们尽可能的 Launch 竞价实例,这样成本最低。第二,如果其他机型没有了,AWS 机房没这个机型了,我们要有能力 Launch 其他的机型。第三,如果某个机房没机器了,我们可以在另外一个机房 Launch 服务器。第四点,在缩容的过程当中,我们要优先关闭 On-Demand Instances,说白了就是优先关贵的。最后一点,要保证整个集群要有至少那么几台 On Demond 机器来保证正常工作。

接下来讲一下 DevOps 今后的发展方向。如果你只是一个传统的 Ops,其实不太具备市场竞争力,就今天来看,如果你具有很强的开发能力,目前来讲你还能够找到一个比较好的工作,未来你一定要是具有大数据分析的能力,再加上 DevOps,你才能够具备一定的市场竞争力。我之前是在 LinkedIn 工作,做社交的公司都会有做一个 PYMK 的东西,People You May Know,其实就是做人脉的推荐,你可能对这个人感兴趣,他把这个人推荐给你了,或者说国内的很多做酒店的,比如说携程之类的,他也会给你推荐一些酒店。但是 DevOps 有什么场景需要这些大数据分析呢,我们之前做传统运维,你无法预测服务器未来会发生什么。今天每天服务器产生这么多数据,不管是系统级别的还是服务级别的,你怎么样去预测这台服务器明天会不会出现问题呢?能不能基于大数据分析,预测未来哪些服务器可能会出现问题,哪些服务可能会出现问题呢?我们在做面向用户这种产品的时候经常会讲用户的画像是什么,对于 DevOps 来讲,你的服务器相关的服务的画像又是什么?这是一个非常值得思考的问题,也是今后 DevOps 需要做的事情,DevOps 已经转型至 AIOps 了。

有很多数据需要分析,这些数据怎么收集起来的呢,不同公司有不同做法,简单来讲,就是你有 Agent 收集各种渠道来的 Metrics,让后放到一个时序数据库里进行存储,目前国内大公司用的最多的就是 OpenTSDB,我们通过对这些数据进行分析,来对服务器以及服务做一定的画像,预测未来它是否会出现问题。

接下来简单介绍一下 TSDB,这是全球的 TSDB 排行榜,目前来讲排第一的是 InfluxDB,国内用得不是特别多,据我了解目前国内只有七牛和饿了么在用。OpenTSDB 不用说,淘宝、百度、滴滴都在用。TSDB 有几个比较重要的概念,第一个是时间,因为它是一个时序数据库,第二是你的 Metric 是什么,第三是你的 Value 是什么,第四个是你的 Tags 是什么。比如我想统计你的响应时间,Response Time是个Value。但是你想通过不同维度来看这条 Metric,你会有打很多 Tag。你通过 Tag,按照不同维度去聚合,进行一定的数据分析。GrowingIO 这个季度的 OKR 有个指标就是关于系统稳定性的,而首先要做的就是要收集系统稳定性指标,而 GrowingIO 用了一周左右就把整个框架搭建起来了。在 GrowingIO 做事其实是非常快的,这就是创业公司的魅力。

接下来讲我们有了这些数据之后就要开始做分析,简单来讲就是我们通过历史数据,通过不同的 Detection Model,去进行建模,预测未来会是什么状态。异常检测的方式,我们目前还在做,因为现在我们只是把数据收集起来,有相应的图,接下来的工作就是要做 Detection Model 方面的数学建模的事情。

就是以上这些内容,我们现在还在持续招人,欢迎优秀的人加入 GrowingIO,最好有大数据背景,如果大家想加入 GrowingIO 可以给我发邮件或者加我微信。

关注中国IDC圈官方微信:idc-quan或微信号:821496803 我们将定期推送IDC产业最新资讯

扫描二维码,将会有专人将您拉进“大数据交流群”“云计算交流群”“区块链交流群”“物联网交流群”

查看心情排 行你看到此篇文章的感受是:


  • 支持

  • 高兴

  • 震惊

  • 愤怒

  • 无聊

  • 无奈

  • 谎言

  • 枪稿

  • 不解

  • 标题党
2017-08-25 10:33:00
运维管理 大数据给数据中心带来哪些改变?
大数据时代的来临首先对数据中心行业产生巨大影响。以往远程托管中心那些昂贵而又缓慢的内部服务器已经无力承载海量数据,现在,企业需要的是可扩展的存储解决方案,并且与 <详情>
2017-08-25 10:26:00
大数据资讯 大数据商用落地 看共享经济背后的“数据价值”  
为了抢占数据市场,争夺数据资源,在数据资源这一座金山面前,众资本家纷纷进入“共享”这片红海。 <详情>
2017-08-25 09:10:00
大数据资讯 首个年度大数据产业评估报告发布
8月24日,中国电子信息产业发展研究院在工业和信息化部信软司指导下发布了《中国大数据产业发展水平评估报告(2017年)》(以下简称《评估报告》)。作为《大数据产业发展 <详情>
2017-08-24 18:35:00
大数据应用 大数据公司该如何领跑亿万市场?
目前,数据的商业价值在越来越多的行业中逐渐得到实现,大数据应用逐渐落地生根。诸如工业、金融、公共事务、医疗、媒体出版、智能制造、零售、能源、地产等行业。 <详情>
2017-08-24 14:00:00
国内资讯 朱颖航:重新定义云时代的服务器硬件监控(二)
我们当前硬件的监控通常会怎么做,大家通常会采用带内IPMI的方式,厂商会有接口,会定义各种各样的传感器。基于采集到的数据,后面会有一整套的服务,会避免和别的厂商有通 <详情>