写点什么

阿里云计算资深总监唐洪谈飞天现状以及 5K 项目发展

  • 2013-10-31
  • 本文字数:3453 字

    阅读完需:约 11 分钟

2013 年 8 月,历时 4 个月,阿里集团涵括云梯 1 空间优化与跨机房集群扩展、以及云梯 2 单集群规模从 1500 台升级到 5000 台,同时实现跨集群扩展的 5K 项目顺利取得阶段性成果。

阿里云开发者大会上,我们就飞天的发展现状和这次5K 项目取得的突破采访了阿里云计算资深总监唐洪。

InfoQ:现在飞天的整体规模是怎样的?有多少数据中心部署了飞天?

唐洪:大概有几十个数据中心,差不多每个阿里巴巴集团的数据中心里面都会有我们自己部署的飞天集群,单集群的规模也已经到了 5000 台。整个飞天我们从 2008 年做了 5 年的时间,可以看到集团使用基于飞天云平台的比例越来越重,基本上所有阿里集团重量级的应用都会用到阿里云。其他部门没有精确的统计过,比如说大的数据处理方面,我觉得云平台的比例超过一半以上。

我们以前有内部有个说法,叫云梯 1,云梯 2。云梯 1 是基于开源系统搭建的,是飞天没有完全成熟之前的云梯过渡阶段,现在使用的资源已经小于飞天的资源。

InfoQ:飞天现在每年版本的更新状况。

唐洪:其实很难界定,版本的概念是传统软件的一种概念,我们的版本首先是作为一个操作系统,以服务化的方式来提供的,比如说现场发现一个 bug 我们马上就更新了。我们一般一年一到两次这样大的升级,但是外界用户一般是看不到的。

InfoQ:我看到网上有一些评测,阿里云 IO 速度有些慢,我不知道您是怎么看的?

唐洪:有一种是一些竞争对手的评测,他们从不同的角度来做类似于苹果和橘子的比较。其实对一个系统的设定,每个人的取舍不同,比如系统性能的稳定性、数据的可靠性等,大家关注的方面显然不太一样,因此性能快慢也是相对来说的,对于绝大多数的用户来说,不是追求极致的把一个硬盘的性能压到极致,而是要降低他的运维 IT 的负载、降低他的硬件购置的成本。所以我们没有追求单个虚拟机能够做到多快多快的性能。我们追求在一个合理的,在一个比较好的性能的范围内,提供好的性价比。第三类是碰到一些客户的问题,所谓 IO 的问题其实是一些我们系统设计里边碰到的比较有挑战性的问题,可以认为是个 bug,也就是说它的平均的性能满足期望,但是偶尔性能可能会导致整个系统不响应,我们 2012 年开始花了很大的精力在解决这样的问题,我们从工单的角度来看这方面的问题是解决差不多了。

InfoQ:阿里云基础设施,如防断电、防不可抗的自然灾害等有没有优越于其他服务商的?

唐洪:第一,在阿里巴巴,我们维护淘宝总站的团队和维护阿里云是一个团队,所以在国内是屈指可数的几家公司运营这么大的网站。第二个, 从硬件角度来说防断电,我们设有几级的保护措施,比如我们在每一个机房会有柴油机发电机,当它断电之后柴油发电机可以切换进来,确保它有足够多的能量供给 72 小时临时供电。我们会有一个 UPS,断电以后 UPS 切换进来,然后是发电机发动起来,我们会收到报警把一些非关键性的功能关掉。延长整个数据中心的使用时间。另外一方面从软件层,比如杭州前一阵发大水,如果时间再久一点,可能是连柴油机都顶不上了情况下、甚至网络隔绝的情况下,我们的云服务器会提供异地架构的方案,但是需要客户去做一些配合,比如说你可以在两个不同的数据中心购买我们的云服务器,这样发生故障的话你可以切换到另一个那边去,这是无状态的东西。还有有状态的,比如 OSS、OTS 这些服务,我们会做异地的同步,应该都还没有发布,但是对重点客户我们在做测试,今年或者明年会提供这些东西。

InfoQ:你们在研制飞天的时候,硬件研发到了什么样的阶段?目前飞天面临的最大的挑战是什么?

唐洪:飞天作为一个通用的计算服务,已经标准化硬件,所有的飞天集群机型都是差不多的,比较通用型的带 CPU、带内存,有些云服务比如说针对存储型的,全部用的 SSD 的硬盘,相对来说有比较好的耦合。

对于挑战来说,当你把一个服务从企业内部的人群变成了互联网人群的话,首先要考虑的是安全的问题,企业审核的流程,可以做到一些控制,如果放在公共的互联网上,任何人可以到 5K 上,他们的作业是并行跑的,安全首先是非常非常大的挑战,我们是做了很多的工作。

其次企业用户和互联网的量级是不一样的,企业用户数以百计,互联网用户数以千计、数以万计,在整个架构上用户管理上有不一样的大的架构。很多美国的互联网公司也基于 hadoop 做了很多的东西,为什么从来没有公司可以把 hadoop 这种能力作为功能服务弄出去?这个本身需要做很大的工作才有可能变成一个公共服务的。

InfoQ:云服务对外界的市场的比例多少?

唐洪:没有数过多少机器用于对内服务,多少机器用于对外服务,我猜想差不多一半的样子,比如数据形态的大规模数据的处理,对内服务多一些,对于长尾的,比如对于移动应用端的东西可能对外的多一些。

InfoQ:我们了解到飞天实现了 5000 节点的单集群,我想问一下单集群有什么好处,双集群又有什么好处。

唐洪:飞天在单个集群里面,可以说是透明。单个应用,通常来说只能用到一个集群里面的资源,也就是说,属于你的一个集群只有 500 台的话,你最大的规模也就只能到 500 台了。所以大集群容纳的作业也就大了。

其次是数据,当你有分多个集群的时候,在本地和远程访问的性能是不太一样的。集群大了之后,可以做的事情就更多了,承载的数据就更加容易访问。当然也不是说多集群就不可以做到这一点,因为很多的集群是用有很多小的集群来做的,包括 hadoop 也有这样的方式。通常来说,它的效率就会低一点。

InfoQ:单集群升至到 5000 台,跨集群的计算,已经是一个比较大的规模。它在国内甚至在国际上的影响是怎么样的?飞天 5K 影响力谈一下。

唐洪:这是一个技术的东西,我觉得它的影响力单单技术实现到一个东西是没有影响力的,我们今年在开发者大赛的时候,做了一个飞天 5K 的体验项目,把它的计算能力给外面的人用了,这件事情谷歌,facebook 都没有做到过的事情。一个随随便便的开发者,当他有一个需求,想要用 5000 台机器跑一个小时,做一些事情的时候,可以直接使用。

InfoQ:未来数据可能不断的往外成倍的往上翻,我相信有一天 5000 台会达到极限,那时候怎么做?

唐洪:那时候说不定是 10000 台一个集群了。正常的话,技术演进也是一个渐变的过程,我们这次大概半年的时间从 1500 扩展到 5000,3 倍的扩展,5000 到一万 2 倍的扩展,绝对数量是比较可怕的,但是相对而言就小一点的问题了。 还有就是硬件的红利:CPU 在变快、网速从千兆变成了万兆,核心交换机的容量也可以增大,某种意义上到那个时候简单的支持红利,即使集群规模在 5000 台,处理能力也会有可能翻倍的。

InfoQ:咱们是单集群 5000 台往上加,还是说再去加集群?

唐洪:单个集群到 5000 台,但是会有第二个 5000、第三个 5000,你通常说的是业务的数目增加,不是单个业务量,通常单个业务量一个 5000 台支撑可以的,这就是我们为什么要做 5000 台的量的原因。

InfoQ:咱们 5K 项目,总目标是咱们提供跨机房的服务,最终这些收益的人群,是定位在什么地方?

唐洪:某种意义上 5K 是个基础,不是根本的目标。我们把 5K 作为整个云服务的基础,一方面能提供大规模计算的能力,另外有 5K 是可以帮助我们做成本的节省,比如有些应用是 CPU,有些应用是内存,有些应用是 IO,只有池子大了我才能在几个应用之间进行互补,否则池子那么小,资源占满,其他东西跑不上来,所以 5K 可以降低运维的成本、集群数目少提高了调度的效率、削峰填谷的事情可以做的更多,这样反映在用户上面,对他们来说我们可以提供更低廉的服务,做到同样的资源。

InfoQ:前面几十个数据中心,我想知道,多大的比例部署了 5K?

唐洪:我们现在有三个集群部署了 5K。

InfoQ:您去年说飞天是谷歌 + 亚马逊的服务模式,现在跟亚马逊、谷歌比起来有什么优势?

唐洪:我们作为一个公司来说,要看产品和业务的竞争力,跟谷歌比不是非常公平的比较,因为谷歌没有在推云服务。谷歌在云那方面做的一直羞羞答答的,一直没有大踏步向前走,它其实有云服务,但我听到的小道消息的说法是有两派人,一派人觉得我们不应该做,就是谷歌不应该做这种公共云计算服务商,他觉得谷歌不应该把这种大规模计算的能力公布出去,造就他的很多的竞争对手,对它的搜索对它的广告造成危险。亚马逊的角度来说,大规模计算服务,它是没有的。对我们的优势,毕竟我们在国内对中国的云计算,或者是移动互联网的市场我们会有第一手精确的了,这样对我们产品的本地化,贴近用户的使用习惯,我们觉得可以比亚马逊做的更好。

InfoQ:您看到前面的路是怎么样的?

唐洪:道路,前景很光明,道路还是很艰苦的,马拉松才跑了 5 公里。还有很长的路,还有很多人要跑。

2013-10-31 22:364752
用户头像

发布了 89 篇内容, 共 32.2 次阅读, 收获喜欢 4 次。

关注

评论

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

架构师训练营 -- 第七周学习总结

花花大脸猫

使用HSDB 查看jvm内存

引花眠

JVM系列之:详解java object对象在heap中的结构

程序那些事

Java JVM GC JOL

应届生求职面试真的有那么难吗

xcbeyond

面试 应届生

Mybatis二级缓存,你确定要用么?

xcbeyond

mybatis 二级缓存 一级缓存

什么?还没有自己的域名?

北漂码农有话说

ARTS打卡 第8周

引花眠

ARTS 打卡计划

Apache BeanUtils和Spring BeanUtils剖析

Bruce Duan

BeanUtils 浅拷贝和深拷贝

ARTS 05 - 使用 Ecto.Migration 来做数据库迁移

jerry.mei

学习 算法 ARTS 打卡计划 函数式编程 Elixir

技术革新产业变革新动能

CECBC

罪羊树——暴力也是种优雅

烫烫烫个喵啊

算法 二叉树 替罪羊 平衡二叉树

MyBatis几种好用的写法

Bruce Duan

MyBatis标签

架构师训练营——请简述 CAP 原理

WW

写一个 web 性能压测工具

WW

性能测试

满山李子

极客大学架构师训练营

Docker容器中一定要避免的10件事

xcbeyond

Docker 避坑

LeetCode 144. Binary Tree Preorder Traversal

liu_liu

算法 LeetCode

LeetCode 565. Array Nesting

liu_liu

算法 LeetCode

自从用完Gradle后,有点嫌弃Maven了!速度贼快!

xcbeyond

maven Gradle

架构师训练营作业 (第七周)

默默

MySQL 大表优化方案

Bruce Duan

MySQL优化

week7 总结 性能测试

Geek_z9dmvw

SpringBoot 使用 jasypt 对配置项进行加密

hungxy

Java springboot jasypt

JDK1.8新特性(四):函数式接口

xcbeyond

新特性 函数式编程 JDK1.8 JDK1.8新特性

JDK1.8新特性(五):Stream,集合操作利器,让你好用到飞起来

xcbeyond

stream 集合 新特性 JDK1.8 JDK1.8新特性

记一次西安thoughtworks的面试经历

xcbeyond

面试 thoughtworks

MinIO 简介和搭建一个对象存储服务

耳东@Erdong

Minio store Object store

两个指针缩小范围算法,CQRS 命令查询职责分离模式 John 易筋 ARTS 打卡 Week 09

John(易筋)

ARTS 打卡计划

如何保证消息不丢失?处理重复消息?消息有序性?消息堆积处理?

Bruce Duan

消息队列 保证消息不丢失 处理重复消息 消息有序性 消息堆积处理

IDEA 插件: EasyCode 一键生成所需代码

Bruce Duan

idea插件 easycode 生成代码

分布式锁用 Redis 还是 Zookeeper?

xcbeyond

redis zookeeper 分布式锁

阿里云计算资深总监唐洪谈飞天现状以及5K项目发展_服务革新_水羽哲_InfoQ精选文章