前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >巨人之地:构建超大规模云计算设施

巨人之地:构建超大规模云计算设施

作者头像
静一
发布2018-07-31 15:49:25
4770
发布2018-07-31 15:49:25
举报
文章被收录于专栏:云计算D1net

如今,全球数字基础设施的建设是一项独特的协作活动,各国政府、研究机构和企业都在创建数据中心、电缆、基站、卫星、传感器的巨大网络中发挥作用。但是有一些行业厂商做出了无与伦比的贡献,通常是那些建立大型网络,并提供大量数字业务的公司,以及花费数十亿美元来进一步扩大其市场主导地位的公司。

如今,全球数字基础设施的建设是一项独特的协作活动,各国政府、研究机构和企业都在创建数据中心、电缆、基站、卫星、传感器的巨大网络中发挥作用。

但是有一些行业厂商做出了无与伦比的贡献,通常是那些建立大型网络,并提供大量数字业务的公司,以及花费数十亿美元来进一步扩大其市场主导地位的公司。

“十五年前,当我开始在谷歌公司工作时,当时并没想到谷歌公司将会构建世界上最大的网络,或者是世界上最大的计算基础设施,”谷歌公司副总裁Benjamin Treynor Sloss表示。他的工作是让谷歌公司的业务保持不间断运营,从搜索到地图,再到云平台的所有一切,

他说,“如果谷歌的业务停止运行,那这就是我的过错,维护业务运行是我的主要职责。”

当Sloss加入谷歌公司时,当时无法预测该公司及其基础设施要求的规模有多大。他说,“我当时只是知道在接下来的三个月中需要做很多事情,并在两到三年内将会得到更大的发展。”

而在微软公司,该公司数据中心战略和架构高级主管David Gauthier的经历与Sloss类似。他说,“我在微软公司工作了大约19年,而且我一直参与我们的数据中心基础设施的建设与运营。这是一段相当艰难的旅程,先是在微软公司早期的MSN,然后是Bing的原始算法搜索。而在当时成为一个超大规模厂商时,我认为微软公司并没有真正掌握将要发生的事情,那就是云计算,而云计算行业在很短的时间内得到指数级发展。”

谷歌公司也不得不应对这种非凡的增长,其进军云服务市场进一步加剧了这一趋势。“当我们开始提供公共云产品时,采用了正在使用和运行的数据中心、基础设施、网络、服务器,以及已经使用的所有内容。”Sloss说。

他表示,现在的目标是让谷歌云平台客户能够以与谷歌搜索或Gmail相同的可用性、性能以及功能丰富性来构建服务。

Sloss说,处理这一挑战需要仔细平衡想法、路线图和优先事项,并将他的工作比喻为是一个投资组合管理人员的工作。他说,“我的团队中有5000人,在每一个领域,我都有一些人员在接下来的三到六个月里做一些没有必要的事情。”

Sloss说,“谷歌公司许多员工正致力于迭代改进技术,而一部分员工则专注于成功概率较低的技术研发。这些事情必须齐头并进。我们鼓励员工遵循谷歌公司的70-20-10理念(核心业务占70%,核心相关项目占20%,不相关项目占10%)。我们每个季度都投入了大量的资金,并得到进一步的努力,以获得少数能真正完成的项目,转变为可以极大地推动业务发展的项目。”

“例如,使用机器学习来提高效率,提出这个问题的人来自其中的一个迭代团队,”Sloss说。 2016年,谷歌公司的DeepMind部门宣布将一个数据中心的能源使用效率(PUE)提高了15%。

有关谷歌公司采用该算法的广泛程度的细节有限:“我要说的是:正在推出这个算法,我们将在构建或改造新数据中心时继续推广,而人们需要了解我们目前拥有的大部分数据中心,他们已经从中受益。”Sloss说。

而微软公司的Gauthier说:“我们都在使用人工智能和机器学习来优化我们的基础设施,降低能源消耗,以及降低水和其他资源的消耗。”

容量问题

机器学习也被用来帮助进行容量规划。去年,亚马逊网络服务公司的首席执行官安Andy Jassy表示,“AWS公司最不了解的一个方面就是面临巨大的物流挑战,这是一项非常难以运营的业务。”

“当然,我们在许多领域使用机器学习,”AWS技术传播者Ian Massingham表示,“容量预测是一种经典的序列预测机器学习用例。那我们为什么不这样做呢?实际上也有客户这样做。游戏发行商Electronic Arts公司正在使用机器学习来规划自己的EC2容量队列,因此当他们推出新游戏时,他们已经准备好了足够的容量。”

“他们的介绍并不十分具体,但我可以采取一种非常有根据的猜测。”Sloss谈到了AWS公司的容量规划,“需求计划不仅仅是对需求曲线的简单推断。实际上有可预测的高峰和低谷,就像9月到5月之间谷歌搜索的需求增长,然后在6月到8月之间,很多学生放假时,需求曲线会变平。所以人们可以看到这些历史影响。我们可以规划容量,当人们谈论数十亿美元投资建设基础设施时,提高5%的效率变得非常重要。我们假设亚马逊公司也可能在做同样的事情,但没有对外公布,而我们已经做这样的事情已超过15年。”

Gauthier同样表示:“我认为我们可以使用机器学习,这是公平的,但无法证实。”

为了确保有足够的容量来满足突然的需求增长,每次Microsoft Azure启动新区域时,它都会确保其数据中心位置有新的空间,并且其公用事业提供商拥有额外的资源。“我们最不愿意做的就是开通一个全新的区域,并且没有增长。”Gauthier说,“我认为人们对于采用云计算还保持着拥有无限能力的幻觉。这确实是云计算面临的挑战,因为许多基础设施和硬件正在变得越来越成熟。我们如何进行容量规划以保持这种错觉,这正是比较矛盾的地方。”

保持对AWS所追求的突然容量转移控制的一种方法,就是限制客户可以在不与云计算公司讨论他们的计划的情况下启动多少个实例。“因此,如果客户想要超过这些账户限制,就需要提出一份申请表,快速审查其用例。”Massingham说,“然后我们知道潜在的消费足迹是什么,我们可以用它来告知我们的容量规划。”

为了提供过度配置而不会因此而损失过多的资金,AWS公司还运营着EC2现货市场,这是一个打折的拍卖式市场,如果客户采用一个经典的市场模型购买这些资源,另一个客户可以竞价购买可收回的资源。“人们所看到的是,我们试图恢复那尚未被利用的产能的边际成本,尚未出售用于需求使用或储备实例的产能。”Massingham说。

现货市场是AWS社区所要求的一项举措,Massingham认为该社区为云计算公司提供了独特的优势。

“我们很早进入云计算市场,由于某种原因,其他可能成为竞争对手的企业在当时没有意识到云计算的潜在影响,因此我们占据了先机。”他说。

而企业具有领先优势的是获得了大量客户反馈和使用的数据,“因此我们非常了解客户对现有服务的重要性,并有机会与客户讨论他们希望我们添加到服务中的内容和平台。”他说。

下一件大事

谈到云计算市场份额,AWS公司目前处于市场领先地位,但每个公司都有一个庞大的研发部门,试图找到未来发展更为重要的东西,改进功能或技术创新,这将给他们带来优势,或者削减他们内部服务的成本。

“我们实施了许多不同的计划,这些计划将持续两年到五年甚至更长时间,以试图让企业跟上技术的发展方向。”Gauthier说道。“我们看看数据中心的其他部分需要花费时间、资金和精力来运行,从发电机到UPS,再到配电系统,然后再了解设计的超大规模系统到底有多必要,通过分配工作负载来处理软件故障,并应对可用性挑战。“

AWS公司表示,正在尝试摆脱对电网的依赖,在过去五年中在机架级尝试采用氢气和甲烷气体动力燃料电池。Gauthier 表示,“为了消除电网的损失,消除变压器的所有配电挑战,并将它们整合到一个非常有效的系统中。我们的试点采用新能源的数据中心运行良好,它使我们能够向供应商生态系统展示使用燃料电池的可能性。”

Gauthier说,为此采用新能源的另一个优势是,能够消除数据中心柴油发电机需求的技术和产品都会使新建的数据中心获得许可变得更加容易。“我不能提供燃料电池何时进入生产数据中心的时间表,但我可以说这绝对是我们的首要任务。这是一项非常有趣的技术,它是我们与生态系统共享的东西。我们定期举办行业会议,甚至我们的一些竞争对手也会谈论技术,以及我们如何可以让这个行业更加成熟。”

美国能源部国家可再生能源实验室的一位消息人士与微软公司合作测试和应用燃料电池技术。谷歌公司代表已表示对该技术感兴趣,并参观这个实验室以了解更多信息。

Gauthier说,微软公司研发部门非常积极参与的另一个领域是高密度的机架冷却,可能使用液体冷却技术。随着人工智能和机器学习工作量的增加,“数据中心的功率密度不断增加,而我们正在密切关注风冷技术。此外,我们开始采用其他冷却技术方向。”

谷歌公司也在研究液体冷却技术。凭借其最新一代Tensor Processing Unit TPU 3.0,它首次采用了这项技术。“其他条件相同,液体冷却比空气冷却更加昂贵,因为将采用更多的管道、更多的铜材,以及更多的热交换器,必须冷却每个芯片。”Sloss说,“所以除非真的需要,否则不会这样做,但由于这些机器学习系统的功率密度越来越高,必须获得更好的冷却。”

在采用TPU和其他内部硬件产品之前,谷歌公司通常会让其数万名员工试用该设备。Sloss说,“当我们首次推出这样的产品时,其功能可能并不成熟,并且需要不间断运行。它实际上并不是一种可以作为服务提供的形式。”

在这种情况下,谷歌采用“dogfooding”的方法,即让谷歌公司自己的员工作为测试基础。“这是一个足够大的用户群,企业可以在公共场合找到各种各样的东西,并且拥有更宽容的受众。当提供一些技术并不成熟的产品时,谷歌公司不断进行完美更新,但却不会有关于这种产品的新闻报道。”

这个过程以及对创新的关注可以帮助企业在市场和技术方面保持领先,Sloss表示,“我们将谷歌公司视为第一家大规模实施云计算的公司,因为在1998年就开始构建这些技术产品。而当时一些拥有定制系统和定制数据中心的企业都认识到云计算在灵活性和经济性方面带来了巨大的好处。所以我并不担心会被所拥有的设计——我们现在设计的是每个企业都在投资的东西。但一个更有趣的问题可能是:云计算之后将会是什么? ”

同样,他认为这是一个投资组合的问题:“谷歌公司的总工程量中有多少利用了当今使用的基础设施,而不是使用下一代技术?我不知道我能否准确预测未来15年的基础设施会是什么样子。但我会看到谷歌公司仍然处在机器学习基础设施的最前沿,这与云计算基础设施几乎没有什么不同。对我来说,这是一个关于计算进展的一个有趣的新角度。”

规划停机时间

但Sloss警告说,创新需要牺牲。他创建了网站可靠性工程的概念,这个学科融合了软件工程的各个方面,并将其应用于IT运营问题。并且,他指出产品开发和SRE团队在创新速度和产品稳定性之间可能遇到结构性冲突。“这可以通过引入错误预算,即设定的错误百分比和停机时间来解决。” Sloss说。

那么是否有错误预算?Sloss说,“是的,它只是非常小,谷歌公司的可用性目标通常在5个9的范围内。”

Sloss说,如果用户无法访问谷歌网站时,很多原因与谷歌公司的业务中断毫无关系。而作为用户,实际上无法区分完全可用性和5个9的可用性。对人们来说它看起来完全一样。但是,供应商所需的努力和成本水平,以及从5个9到6个9所需的工程资源和特征速度的消耗实际上是巨大的。”

Sloss正是这么认为的,100%并不是企业大多数服务的可用性目标,这是关键。他说,“即使达到100%的可用性,但实际上人们对其体验可能是99%。一旦明白了这一点,那么问题是:什么样的可用性目标能让用户非常满意,能够以极快的速度和非常低的价格交付大量新产品的平衡?然后就要选择正确的点,这是至关重要的。”

实现大规模系统的高可用性,同时仍在不断发展和推出新功能,这给所有主要的云计算厂商带来了困难,因为每个公司都遭受了计划外停机和停机时间。

“我们在AWS内遇到了大多数提供商永远无法实现的扩展挑战。”Massingham说,“我们设计的系统可以解决大多数提供商从未设计过的挑战。当然,我们过去曾经遇到过服务事件,但人们可能已经注意到的一件事是,这些事件发生的频率比以往任何时候都要低得多。”他说。

微软公司减少这些事件数量的方法之一是简化数据中心的运营。“如今的数据中心越来越复杂,其中一些维修转移程序拥有75个或80个步骤,并且将在10或12种不同的动力传动系统中实现这一目标。”Gauthier说,“这只是大数定律,人们会犯错误。因此,我们在数据中心的设计上花了很多时间,考虑如何在维护情况下最小化必须采取的步骤。”

但Sloss说,基础设施的最大原因是软件漏洞。“当人们考虑云计算中的灾难事件时,他们往往会关注那些戏剧性的事情:如果发生火灾怎么办?如果发生爆炸怎么办?如果发生大规模停电怎么办?如果发生地震怎么办?而实际问题却是软件漏洞。”

出于这个原因,该公司在冷存储方面进行了大量投资,因为弹性要求企业拥有一个漏洞无法接触的离线存储。

Sloss 表示,“即使我们遇到过最引人注目的问题,重点仍然是‘这个错误应该由谁负责?'它的主题是:‘如何修复我们的分析、流程、系统等等,在将来不会发生这种情况?’这种理念完全适用于我们现在在公共云中所做的事情,因为在公共云中,人们无法控制谁在使用系统。”

总之,这些行业巨头不得不改变经营方式,在这样做的同时,也可能改变其他公司的运作方式。

(来源:企业网D1Net)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-07-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云计算D1net 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云 TI 平台
腾讯云 TI 平台(TencentCloud TI Platform)是基于腾讯先进 AI 能力和多年技术经验,面向开发者、政企提供的全栈式人工智能开发服务平台,致力于打通包含从数据获取、数据处理、算法构建、模型训练、模型评估、模型部署、到 AI 应用开发的产业 + AI 落地全流程链路,帮助用户快速创建和部署 AI 应用,管理全周期 AI 解决方案,从而助力政企单位加速数字化转型并促进 AI 行业生态共建。腾讯云 TI 平台系列产品支持公有云访问、私有化部署以及专属云部署。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档