Invent and re:Invent:AWS 说我们永远都在 Day One

  • 杨赛

2014 年 11 月 14 日

话题:安全AWSDevOps语言 & 开发架构

2014 年 11 月 13 日,美国拉斯维加斯,AWS re:Invent 2014 大会官方日程的第三天。第二场主题演讲由 AWS CTO Werner Vogels 主讲,一个半小时的议程主要由合作伙伴的分享和两个新服务的发布信息组成。

Vogels 首先简单回顾了一下之前一天主题演讲的内容,他认为这里面最酷的一件事情是,那些刚刚发布的 Aurora、CodeDeploy、Key Management 等新的 AWS 服务自身,也都是在更基础的 S3、EC2、DynamoDB 这些服务上构建的,是用 AWS 服务构建、运行的 AWS 服务。

Vogels 回顾了去年 Kinesis 的发布,介绍日本吟味回转寿司店的案例。回转寿司店使用了带有 RFID 标签的碟子(不同的碟子装的寿司种类不同),刷碟子的信息直接上传给 Kinesis,然后中转给 EC2 进行处理,再保存至 S3,导入 RedShift,最后通过 Tableau 进行销售数据呈现。

合作伙伴们的分享

第一个登场分享的合作伙伴嘉宾是 Splunk CEO Godfrey Sullivan,专注于监控与管理层面。Splunk 将各种机器数据——服务器、安全、在线服务、Web 服务、购物车、数据库、应用、移动的各种指标,收集分析并实时产生报表。目前 Splunk 在全球有 8000 多名客户,在 AWS 运行 Splunk Cloud、Splunk enterprise、Splunk App for AWS、以及 Hunk 等服务(InfoQ 上此前有对 Hunk 的介绍)。

第二个登场分享的合作伙伴嘉宾是 Omnifone 首席工程师 Phil Sant。Omnifone 是专注于音乐服务的 B2B 平台,Music Unlimited、rara、Spotify、BMW 等企业 / 服务都用到了他们提供的服务,这些服务包括音乐的版权获取分发、流媒体处理、下载、移动播放等。Omnifone 早期自建数据中心,在 SUN 的服务器上花了 1500 万美元。后来他们针对 AWS 平台做了代码重构,并完全转移到了 AWS 上,这样的好处是全球服务可用以及更快速的开发。

第三个登场分享的合作伙伴嘉宾是 The Weather Company 的 EVP 兼 CIO Bryson Koehler。The Weather Company 是气象数据平台,以前主要是给电视台天气预报节目(The Weather Channel、WSI)提供数据的,现在则转向了面向电视、网站、移动客户端、移动平台(如 Google 和苹果)、企业(如美国航空公司)等多种客户的数据平台。这家公司在历史上做过很多收购,后来发展到 13 个数据中心的规模,数据中心之间相互依赖、重复组件多、技术组成混杂、故障点众多、设备种类杂(还有很老的 VAX)、新版本线上部署的成功率不足 75%。他们于是决定做很大的改变,公司的技术和文化都要改变。于是就有了今天这套构建在 AWS 上的新系统,目前已经用到了 19782 个 CPU 核、200TB 内存的 AWS 资源,每秒创建 4GB 的数据,平台的设计承载量为每日 150 亿次天气数据发布。该平台的数据来自 800 多个不同的数据源,卫星数据源 Radar Data 只是其中一个,还有 22 亿个监测点数据,结合大气科学和计算机科学进行高准确度的计算预测。

第四个登场分享的合作伙伴嘉宾是 Pristine 联合创始人和 CTO Patrick Kolencherry,他们在 Google Glass 上做的应用已经在医学领域使用,公司创建于 2013 年,目前已经有 25 个以上的医疗 / 企业客户。其中一个应用场景就是针对产妇的。产妇生产后的一个小时内,处于新生儿安全的考虑,新生儿是处于隔离地区的,这段时间母亲是看不到孩子的。而 Pristine 的应用就是让母亲远程看到孩子,这样有比较好的体验。在以前,初创企业要做企业级应用是很困难的,尤其因为资源和人手的局限性,不过 AWS 这种模式他们感觉解决了很多问题,尤其是生态,比如他们的 DevOps 交给了 Flux7 来代做,这样节省了人力又有很好的效果。Pristine 使用了 VPC、EC2、ElastiCache、ELB,还有 Route53 和 CloudFront,另外也大量使用了 Docker。Pristine 的计算节点用于 Signaling、认证、Crosslink、MongoDB、Rethink DB 等工作,在 EC2 上使用 Docker 大大简化了开发部署流程,以及依赖管理的工作。

Docker,又是 Docker

为什么在 AWS 上用 Docker 会比较好用呢?这就是本次发布的新服务:

Amazon EC2 Container Service(ECS,今日起可申请预览)。

开发者喜欢 Docker(Vogels 特意推荐大家看看 The Box 这本书),喜欢 Docker 的可移植性,但是 Containers 的任务分配规划在目前还是个很重很繁琐的事情。本服务便是为了解决这个问题而推出(在 EC2 上跑 Docker 的需求据说已经很多了):将计算资源分配的工作自动化、弹性化,提高资源使用效率,提高可用性,同时提供简单的 API 以便于集成。

AWS 产品市场部负责人 Paul Duffy 上台演示了这个新服务的用法。要使用 ECS,只需要选择支持 ECS 的 AMI 镜像安装到 EC2 里,集群就会自动签入该实例。通过 list-clusters 即可查看集群里可用的实例,通过 run-instances 即可启动,当然在我们给它安排任务之前,它也不会跑什么任务,需要做一个 register-task-definition 的动作,将哪个任务对应哪个 Docker 文件定义出来(定义文件是一个 JSON 文件),比如定义哪个是 RabbitMQ,哪个是 Redis,哪个是 NodeJS。定义好了之后,用 run-task 即可让任务跑起来,比如 Paul 在 demo 中先跑了 1 个 RabbitMQ,再跑了 5 个 Redis,再跑了 5 个 NodeJS(这条操作执行的时候 ECS 也同时启动了 5 个 Nginx),再跑了 30 个音频处理任务,然后又跑了 30 个音频处理任务的 v2 版本,然后用 stop-task 把在跑的 v1 版本都停掉,最后用 stop-task 把所有任务停止。

Demo 之后,Docker 公司 CEO 兼联合创始人 Ben Golub 上台分享。首先分享的是 Docker 的理念:发展了 18 个月的 Docker,现在已经有一个生态。而从一开始创建 Docker 到现在的目的一直都很简单:开发者是内容创作者,应该将他们从“分发”这一行为中解放出来,就好比印刷术将作者从抄写的工作中解放出来一样。

Ben 认为互联网应该成为通用的计算平台。2000 年以前的应用,存活周期长,耦合度高,一大坨的部署在一台服务器上;而 2014 年的应用,生命周期短(迭代速度快),松散耦合的部署在很多服务器上。正因这变化巨大,也带来了很多新的问题,我们需要将这些问题从开发者那一侧抽离出来,帮他们解决这些问题。

Ben 将应用的 Docker 化分为 5 个阶段:1、容器技术可用。2、容器标准化。3、构建围绕容器的生态。4、成熟的多 Docker 应用模式。5、可管理所有这些东西的平台。Ben 认为第一阶段在 Docker 诞生以前就已经完成了,过去 18 个月做的事情主要都是在 2、3 阶段。技术的发展是一方面,重要的是一直保持开放,所以 Github 上才会出现那么多跟 Docker 相关的开源项目。

Ben 认为 ECS 很好的地方在于这个服务很尊重 Docker Hub 的原有体系,因此他很高兴能在 re:Invent 这个场合跟大家做分享。Ben 介绍了他们客户 Gilt 的例子,Gilt 是一个很大的零售网站,使用 Docker 之前的开发部署周期是以星期计算,整个系统由 7 个大型应用组成。使用 Docker 之后,开发部署周期缩短为以分钟计算,系统被拆分为 300 多个微服务。分钟级的开发部署周期,意味着每天都可以迭代 100 多次,那就是 100 多次的创新。

Ben 最后说,很多人问他认为 Docker 世界的哪些玩家最终会获胜,他的答案是不知道。但无论如何,能将开发者从分发的工作当中解放出来的,都是胜利者。

Vogels 公布了 ECS 的定价:免费。使用时仅收取 EC2 资源的价格。

新服务,又是新服务

公布了 ECS 之后,Vogels 又公布了 AWS Lambda 服务。InfoQ 中文站编辑(出于激动的心情)对本服务已经优先做了报道,本文中就不再赘述。

实际上,Netflix 已经在其系统中使用了 Lambda,其首席产品官 Neil Hunt 简单介绍了一下他们的四个用法:一个是媒体文件上传 S3 后自动触发编解码农场,一个是跨 region 数据备份后自动验证备份,一个是部署新版本之后自动对变更做安全验证,一个是在监控系统进行配置变更后自动创建新的报警条件和面板。

Lambda 介绍完毕之后,Vogels 表示 AWS 会对基础服务进行持续的改进,于是又宣布了一个新的 EC2 实例类型 C4,其特点为:计算型。

  • 处理器基于 E5 v3(Haswell),正常情况下有 2.9GHz,Turbo Boost 模式下可达到 3.5GHz。
  • 36 个 vCPU
  • 支持 EBS(即,可以跑 Docker)
  • 网络性能超级稳定

与此同时,EBS 卷也进行了更新。通用型 SSD 卷可创建至 16TB,支持 10000 IOPS/160 MBps 的读写能力。可保证 IOPS 型 SSD 卷可创建至 16TB,支持 20000 IOPS/320 MBps 的读写能力。

这性能优化是怎么做的呢?Vogels 说这都要感谢 Intel 的伙伴们,并邀请 Intel 数据中心事业部总经理 Diane Bryant 上台跟他一起同台分享。C4 的处理器是 Intel 的伙伴们针对 EC2 专门优化的,双方的工程师们在这个项目上有非常深入的合作。另外,双方还一起赞助了大会当晚的 re:Play 晚会活动,邀请 SkrIIIeX 在晚会上演奏。

总结

AWS re:Invent 大会在 11 月 13 日达到了高潮,当晚的 re:Play 是一个万人规模的游戏场,白天拼命开发、使劲 Invent and ReInvent 的工程师们在晚上则拼命的 Play and Replay,正所谓 work hard play hard。

InfoQ 编辑在采访 AWS 首席布道师(兼 AWS 官方博客首席博主)Jeff Barr 的时候问他,AWS 起步的一个信念,是让 Web Services 可以满足企业对 IT 的一切需求,现在我们看到这个信念越来越多的变为现实,Web Services 能做的“企业级”的事情越来越多,那么我们到底走了多远?有 50% 吗?

Jeff Barr 的回答是:1%。

“我们永远都在 Day 1。我们并不在意我们已经走了多远,我们的眼睛只望向前方。”

与大家共勉!


更多精彩内容,欢迎访问以下视频获悉,相信能够给您震撼。

安全AWSDevOps语言 & 开发架构