理论教育 谷歌的数据集装箱:解决大计算问题的新方式

谷歌的数据集装箱:解决大计算问题的新方式

时间:2023-05-27 理论教育 版权反馈
【摘要】:综合这些需求,谷歌的研发人员提出了“数据集装箱”的设计理念,成为第一个用标准化集装箱计算机方式来解决大计算问题的公司。谷歌的数据集装箱设计从最基本的单机开始。然后每个数据中心根据需要安放不同数量但是相同设计的集装箱。2005年谷歌研制出了上述数据集装箱的设计方案,并于2006年在俄勒冈州的达尔斯建造了自行设计的第一个集装箱数据中心。这个占地12万平方米的数据中心一共容纳了45个数据集装箱。

谷歌的数据集装箱:解决大计算问题的新方式

谷歌的两个创始人从1997年在斯坦福大学校园的学生宿舍开始创业时就以Linux集群为基本系统架构。不仅如此,他们选用的计算机硬盘因为是二手货,所以质量难以保证,这使得他们在数据存储和管理上采用了冗余性极强的分布式方式。后来当公司业务发展起来需要搬离校园后,谷歌开始租用第三方数据中心提供的计算资源。

谷歌最早租用的数据中心是易贝等互联网公司也使用的在硅谷圣克拉拉(Santa Clara)的Exodus数据中心。谷歌起初采用了传统的服务器农场模式,但是这种模式的能源利用效率非常低,用在实际计算上的能源开支只占总开支的1/3,其余2/3都被消耗在了空调和其他非计算性功能消耗上。这一趋势在服务器数量逐渐增加的情况下显得更为突出[8]。为了节省资金,谷歌最初在Exodus仅租用了该中心半个设备单元。尽管通常情况下这半个单元空间只能存放300台Linux服务器,谷歌却在这里挤进了600~800台服务器。每一组台架上,一般只能放置5~10台服务器,谷歌则挤进了80台。结果该中心的用电量和数据传输量很快达到峰值。过多的服务器产生了大量的热,使得谷歌的工作人员不得不在墙壁上打开几个洞,往里输送冷气降温来维持服务器的正常运行。

2001年,谷歌随着业务量的增加,租用的数据中心也达到4个,服务器总量达到一万多台。在这段时间里,为了保证索引擎的反应速度,谷歌需要将高达太字节(TeraByte)大小的索引文件从西海岸复制到东海岸的数据中心,这意味着每月高达几十万美元的传输费用,于是谷歌利用数据传输公司的服务协议的缺陷,通过每个月只使用两个晚上的免费高速传输方式节省了这笔费用。这一经验让谷歌意识到了拥有实际光纤通信网络的重要性。这时恰逢互联网泡沫破裂,许多拥有光纤通信网络的设备公司纷纷破产,于是谷歌利用这一时机有计划地购买了一批倒闭的宽带公司,将这些公司的宽带、光纤资源整合在一起,从而拥有了遍布全美的基础通信设施,这些设施成为谷歌重要的战略资源。后来,谷歌通过这些光纤资源不但可以免费传输自己的数据,还可以为用户提供更多的服务。

也是在这一段时间,包括Exodus在内的许多数据中心因为互联网泡沫破裂而陷入财政危机,有的被收回到投资者手中,谷歌利用这个机会以低廉的租赁价格包下了这些数据中心,然后根据自己的需要将其进行改建,其中包括2003年谷歌在佐治亚州道格拉斯县改建的第一个谷歌数据中心。在这一数据中心,谷歌通过更有效的设计不但可以放置大量服务器,还可以直接用零配件装配新服务器。如果想要全面提高数据中心的能源使用效率,仅仅通过改装现有的数据中心是不够的。因为传统的数据中心存在着很多低效设计和高成本的电力供应问题,仅仅改装仍然无法满足谷歌日益增加的对运算量的需求。于是,谷歌的管理层决定从选址开始,设计和建造一个以节能为中心的新型数据中心,这一策略和后来在此基础上谷歌建造的一系列新的数据中心成为谷歌风格的云计算平台的核心硬件基础。

一个数据中心的能源利用效率一般从三个方面来衡量[9]。其中前两个主要是靠物理手段提高效率。也就是说,需要从数据中心的整体架构入手。谷歌的数据中心设计人员发现,为了提高数据中心的实际消耗能源的效率,减少空调的能源损耗是一个重要、有效措施。传统的数据中心为了延长价格昂贵的服务器使用寿命,通常将温度降低到20℃左右,这样可以将服务器的损耗率降低到4%。谷歌的人员发现如果把温度提高到27℃,尽管可能会使服务器的损耗率增加到10%,却可以节省大量的电能,节省的电能所带来的收益完全可以弥补10%的廉价服务器损耗。谷歌的设计人员又发现传统数据中心是将空调产生的冷气直接释放到服务器所在的空间,导致服务器产生的热空气与空调降温后注入的冷空气混合,取得降温效果。这样做事倍功半,效率很低。如果将冷热空气尽量隔离,只给热空气降温的话,效率就会高得多,这意味着需要将一定数量的服务器配置到一个相对密闭的空间里,这样才能有效地分隔冷热空气。

维护大量的服务器需要一定的人力。而谷歌未来的每一个数据中心安置的服务器数量至少是十几万台,这就意味着需要相对简单的维护操作才能节省人力。简单而且标准化的软硬件配置成为必然的选择。综合这些需求,谷歌的研发人员提出了“数据集装箱”(Container-ized Data Center)的设计理念,成为第一个用标准化集装箱计算机方式来解决大计算问题的公司。

谷歌的数据集装箱设计从最基本的单机开始。首先将单机服务器的配置标准化,然后将一定数量的服务器装配到一个标准尺寸的集装箱里。集装箱内部按照高效率分隔式冷却系统来设计,避免了冷热气流的混杂。这种设计不仅提高了降温效率,而且可以将集装箱外包给最有价格竞争力的公司来生产。然后每个数据中心根据需要安放不同数量但是相同设计的集装箱。标准化的集装箱设计简化了编程复杂度和维护人员业务流程的标准化,使得每个数据中心的管理人员可以像管理一台计算机一样来管理几十个集装箱的组合。这种标准化设计理念不久就被微软等其他公司相继采用。

2005年谷歌研制出了上述数据集装箱的设计方案,并于2006年在俄勒冈州的达尔斯建造了自行设计的第一个集装箱数据中心。这个占地12万平方米的数据中心一共容纳了45个数据集装箱。每个集装箱里容纳1160台服务器。

这些服务器的硬件设计细节由于商业竞争的原因一直到2009年才透露出来。每一台服务器的厚度为3.5英寸,主板上包括两个微处理器、两个硬盘和8个内存槽。与其他服务器不同的是,谷歌的服务器没有机箱和显卡,只有12伏电源,而且每个服务器的主板上自带一个12伏电池(见图12-1)。传统的数据中心或者是服务器农场都是将不间断电源与服务器分开设置,往往是一台或几台高功率不间断电源设备为上百台服务器提供稳定电源服务。这些不间断电源设备往往被分置在不同的房间里。这些设备本身的转换能耗和空调能耗是传统数据中心电源能耗的重要部分。而谷歌则独具匠心,将一个简单的微型12伏直流电池与单机服务器的主板直接“捆绑”在了一起。也就是说,每台服务器都有自己单独的不间断电池。这就使得不间断电源这一部分的节能效率从不到90%升至99%。由于这种电池成本低廉,尽管每个服务器都配备一个,但谷歌花在不间断电源上的成本并不高。(www.daowen.com)

978-7-111-50777-2-Chapter12-1.jpg

图12-1 谷歌服务器的特别设计,右上角是提供备用电源的12伏电池

在发现了可以将数据集装箱的温度上升到一定程度而不会导致服务器的失调概率后,谷歌在后来的数据中心设计中采用了水循环和蒸发吸热降温的方法。一般来讲,空调器都需要用冷却器(Chiller)将循环出来的冷却剂中的热量吸收掉,冷却器消耗的电能大概占数据中心能耗的30%~50%。如果将电冷却改成自然冷却,比如将数据中心设置在干燥和低温的地方,通过自然蒸发来带走热量,就可以大大降低能耗。谷歌的所有数据中心都采用了水循环与冷却器互补的制冷技术[10]。这个办法经过实践证明是行之有效的。2009年,谷歌在比利时建造的第一个欧洲数据中心干脆取消了冷却器,直接利用了无冷却器的水循环降温设计,完全依靠蒸发来散热。如果遇到服务器负载过重、温度偏高,单纯依靠水循环可能不能满足散热要求,这时该数据中心会让一些服务器停止运行,将运算任务转到其他数据中心。从理论上讲,如果一个公司有遍布全球的数据中心的话,它可以将运算任务在全球数据中心中进行不断的即时分配,使得处在夜间时间段的数据中心处理主要的计算任务,从而充分利用自然环境降温。由于采用了水循环和蒸发的设计,谷歌数据中心的实际消耗能源与计算设备能源消耗的比率(PUE)在2011年第一季度最高达到了1.09。也就是说非计算设备的能源消耗只占计算设备能源消耗的9%。这跟传统数据中心2以上的PUE值相比是一个很大的进步。谷歌在2009年推出了其完全靠水蒸发冷却的比利时数据中心之后,微软也不甘落后,几个月后在爱尔兰的都柏林推出了更绿色的空气冷却数据中心,也就是完全依靠自然环境的空气来给数据中心降温的设计[11]

除了提高能源效率,汲取廉价能源对数据中心来说也至关重要。以前的数据中心都是依靠发电厂提供的电力运转。不过,随着提供云服务的数据中心的规模的增大和数量的增多,城市的电力供应系统从经济效益和实际供应量上都已经不能满足其需求。这使得包括谷歌、亚马逊、微软在内的众多云计算巨头在几年前就开始探索包括水利、风力,甚至潮汐发电的可能性,并暗中购买拥有这些廉价能源的地区来为将来的数据中心筹划选址。谷歌在2005年选择俄勒冈州的达尔斯建造第一个数据中心的部分原因就是因为该地在哥伦比亚河边,可以充分利用廉价的水力发电提供的电源来支持中心的能源需求。这些大公司的云计算数据中心每天大约需要15兆瓦的电力来维持,这相当于美国1.5万家庭的日用电量。2010年,谷歌的数据中心共使用了226万兆瓦的电力[101]。图12-2是谷歌在爱奥瓦州康瑟尔布拉夫斯数据中心为搜索引擎和YouTube服务提供支持。

978-7-111-50777-2-Chapter12-2.jpg

图12-2 谷歌在爱奥瓦州康瑟尔布拉夫斯数据中心(10683平方米)为搜索引擎和YouTube服务提供支持

在找到了行之有效的集群发展模式后,谷歌开始在全美和世界各地根据业务的发展不断建立新的数据中心。这些中心对计算机的需求使得谷歌在2010年前后成为与戴尔等计算机生产商比肩的世界上最大的个人计算机生产商之一。不过谷歌在这一过程中主要扮演计算机的设计和使用者的角色,硬件的生产则外包给了亚洲的公司,比如2010年前后谷歌的单机服务器的生产包给了中国台湾的广达计算机,内存的生产包给了中国台湾的南亚科技[12]

通过谷歌发扬光大的集群架构成为云计算重要的硬件组织模式,但它本身并不能满足所有企业对计算资源的整合需求,尤其是对并行计算需求不是很高的企业。2005年前后,美国的传统大型企业陆续遇到了前面提到的传统数据中心的发展瓶颈,比如随着计算规模的增加,服务器数量的增多,有些大公司传统数据中心对电力的需求已经超过当地供电公司输送能力的上限。如何管理、维护和升级日益繁多的企业员工的个人计算设备也成为很多公司的发展瓶颈,于是这些公司开始通过虚拟机技术进行服务器的整合,同时虚拟机技术也为员工计算设备更换和维护提供了解决方案。将虚拟机技术商业化并推广到企业中的是1998年在加州硅谷成立的威睿(VMware)公司。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈