分享

数据中心成本与利用率现状分析

lzw 发表于 2015-5-17 13:30:01 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 3 32001


问题导读

1.如何推测数据中心规模?
2.大规模的数据中心的利用率如何?
3.数据中心成本与利用率分析的作用是什么?







百度对数据中心管理技术非常重视,因为正是百度数据中心的几十万台服务器支撑着百度公司每年数百亿的收入。

Matrix 项目要解决的是什么样的世界级难题呢?宏观上来讲,就是实现成本与收益之间的平衡,用尽可能低的数据中心成本来实现尽可能大的企业收益。

规模与成本
数据中心已经成为我们生活的一部分,比如我们使用各种手机 App 上网,就是一个典型的“前端移动计算 + 后端数据中心”的场景。我们触按手机屏幕后,手机就会将“触按”这个动作转变为一个网络请求,发送到后端运行云应用的数据中心进行处理,然后再通过网络传回来,在手机屏幕上显示(如图 1 所示)。这个过程大概需要 2~4 秒,其中一大半时间消耗在数据中心内。正是数据中心在后台支持着全世界数十亿网民的各种请求。

1.png

2013 年,时任微软首席执行官的斯蒂夫·巴尔默在全球合作伙伴大会的主题演讲中提到,“我们(微软)的数据中心已超过 100 万台服务器,谷歌比我们更大一些,亚马逊比我们稍小一点。雅虎和脸谱等其他企业大概是 10 万台的量级。所以真正理解和管理如此大规模的数据中心,并提供公有云服务的企业是屈指可数的。”而国内的几家互联网巨头也都拥有超过 30 万台服务器的规模,并且正朝着 100 万台的规模快速发展。在很多企业看来,数据中心规模属于商业秘密,因为很容易根据数据中心规模推测该企业的业务规模以及发展规划,所以很多企业都不愿意透露。于是有很多好奇者采用各种方式去推测超级互联网企业的数据中心规模,例如斯坦福大学教授乔纳森·库梅 (Jonathan Koomey) 曾根据数据中心的用电量比较准确地推断出谷歌在 2010 年大约拥有90万台服务器。而詹姆斯·皮恩 (James Pearn) 根据数据中心的占地面积、每个机架的尺寸、服务器的尺寸等数据,估算了谷歌在全球各个数据中心能容纳的服务器数量(如表 1)。根据皮恩的估算,谷歌的数据中心已经可以容纳 230 万台服务器(实际数量应该比估算值小)

2.png


100 万台服务器的成本是多少呢?我们可以参考被称为文艺复兴式的黑客——詹姆斯·汉密尔顿在博客中的一些数据。汉密尔顿是负责亚马逊网络服务 (Amazon Web Services, AWS) 数据中心的杰出工程师,之前在微软负责必应 (Bing) 的数据中心。 2013 年《连线》网站上曾经有一篇文章《亚马逊为何聘用一名修车工管理云帝国?》专门介绍了这位开着游艇掌管亚马逊价值数十亿美元数据中心的极客 。在巴尔默透露微软拥有 100 万台服务器的数字后,詹姆斯·汉密尔顿写了一篇博客“Counting Servers is Hard”,来估算 100 万台服务器的成本:如果每台服务器很便宜,只需 2000 美元的话,那么购买服务器需要 20 亿美元(约 125 亿元人民币);此外还需要配备至少 300MW 的供电系统,还需要建 15~30 个机房。这些加起来大概需要 22.5 亿美元。所以 100 万台服务器的总建设成本大概是 42.5 亿美元(约 260 亿元人民币)。

这些只是建设成本,另外还需要服务器维护和更新成本,包括每年要消耗掉约 26 亿度电(约 15 亿元人民币),服务器一般 3~5 年就会淘汰,需要购置新服务器。所以,就算 5 年更新一轮,那么仅电费就需要 75 亿元,服务器更新又需要 125 亿元。相当于数据中心 5 年的运行维护成本是 200 亿元,平均每年 40 亿元。当然,这个估算是针对比较便宜的服务器,其实一般用于计算的服务器价格都会在 2 万元以上,所以仅购买服务器成本就会超过 200 亿元。

利用率现状
这么大规模的数据中心的利用率如何?图 2(a) 是 2006 年谷歌的 5000 台服务器的平均 CPU 利用率分布,这些服务器运行的是搜索、Gmail 等在线应用。从图 (a) 可以看出,这些服务器的平均 CPU 利用率约为 30%。图 2(b) 是 2013 年 1~3 月份谷歌的 2 万台运行在线应用的服务器平均 CPU 利用率分布图。7 年过去了,CPU 利用率并没有显著提高,仍然只有 30% 左右。这意味着,假设 100 万台服务器中有 50 万台利用率只有 30%,那么相当于 5 年 100 亿元人民币的运维成本中有 70 亿元被浪费掉了,只有30亿元真正产生了效益。

3.png
谷歌的数据中心技术是全世

界领先的,2006 年谷歌就已经拥有了 45 万台服务器。谷歌在 2004 年前后就已经开始研制数据中心管理系统 Borg,将运行“在线应用”(加引号埋个伏笔)服务器 CPU 的利用率提高和维持在 30% 的水平。而更多的企业达不到这个水平,比如麦肯锡估计整个业界服务器的平均利用率大约是 6%,而高德纳 (Gartner) 的估计稍乐观一些,认为大概是 12%。这两个数字与笔者了解到的基本吻合,国内一些银行的数据中心利用率大概是 5% 左右,而印度塔塔公司曾公布他们的服务器利用率大概是 12%。云计算不是可以通过虚拟化技术在一台服务器上运行多个虚拟机来提高 CPU 的利用率吗?其实谷歌的 Borg 系统早就采用了类似的容器技术,2013 年的那 2 万台服务器上就是多个应用混合在一起运行后得到的结果。谷歌将数据中心分为了两类,一类是包含在线应用的数据中心, CPU 利用率只有 30% ;而另一类是不包含在线应用,专门运行 MapReduce 等批处理的数据中心,CPU 利用率平均为 75%,如图 2(c) 所示。


欢迎加入about云群9037177932227315139327136 ,云计算爱好者群,亦可关注about云腾讯认证空间||关注本站微信

已有(3)人评论

跳转到指定楼层
hb1984 发表于 2015-5-18 15:49:29
谢谢楼主分享。      
回复

使用道具 举报

hugoclassic 发表于 2020-12-7 11:08:09
现在CPU利用率大多冗余,利用率超过45%就考虑扩容了,因为快要到数据交换的瓶颈了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条