无论您是在打造一个全球网络还是购买食品杂货,可持续生活的一些规则都是相同的:慎重考虑要获得的东西,最大限度地利用拥有的东西,并尝试升级利用废物,而不是把它们扔掉。这些规则是 Cloudflare 的核心——我们认真对待帮助构建更好的互联网这一使命,我们的定义是不仅拥有最安全、最可靠和性能最好的网络,而且是最可持续的网络。
随着互联网的飞速发展和 Cloudflare 网络使用量的增加,即使今天对我们硬件的可持续性进行线性改进,也会在未来带来指数级的收益。我们想利用本文概述我们如何思考网络中硬件的可持续性影响,以及我们正在做什么来持续减轻这种影响。
服务器领域的可持续性
一台服务器在美国使用时,其总碳足迹约为 6 吨二氧化碳当量(CO2eq)。任何计算设备的碳足迹包括四个部分:
隐含排放:原料和生产
包装和运输
产品的使用
报废。
服务器的实际运行和使用产生的排放占整个生命周期影响的绝大部分。次要影响是隐含排放(即最初设备制造过程中的碳足迹),大约占总排放量的 10%。
产品使用排放
很难降低服务器运行的总排放量。如果存在需要计算能力的工作负载,服务器将完成工作负载并使用所需的能源来完成它。然而,我们能做的是不断地寻求提高每千克二氧化碳排放的计算输出量——而做到这一点的方法是不断地升级我们的硬件,达到最节能的设计。当我们从一代服务器切换到下一代服务器时,我们经常看到计算输出在相同的功耗水平上有非常大的增长。在这方面,考虑到能源是我们业务的一大成本,我们减少环境影响的动机自然与我们的业务模式相一致。
隐含排放
另一大类排放是隐含排放,我们对这个领域的控制实际上远远超过对产品使用的控制。如前所述:隐含碳排放是指设备运行以外产生的排放。我们如何减少运行一系列服务器所涉及的隐含排放?事实证明有几种方法:模块化设计,依赖于开放标准而非专有标准以实现重用,以及回收。
模块化设计
第一个大机会是通过模块化系统设计。模块化系统是减少隐含碳的一个很好的方式,因为它们导致更少的新组件,并允许那些没有效率升级的部件使用更长的时间。模块化服务器设计本质上是将主板的功能分解到子板上,以便服务器所有者可以有选择地升级用例所需的组件。
模块化设计的影响有多大?如果 30% 的服务器提供了有意义的效率提升(通常是 CPU 和内存,有时是 I/O),我们可能确实需要升级它们来满足效率目标,但在隐含碳(即服务器的其余部分,通常包含不能提高效率的组件)中创建额外的 70% 开销是不合逻辑的。模块化设计允许我们升级那些将提高数据中心运行效率的组件,但将可以继续发挥作用的“胶合逻辑”组件中的碳分摊到更长时间内。
以前,许多系统供应商在外设上进行了荒谬和无用的更改(自定义 I/O,特定用例可能不需要的输出,例如因远程操作而可能不使用的急救推车 VGA 等),这将迫使每个新的 CPU插槽设计都需要新的主板设计。通过标准化这些跨供应商的接口,我们现在可以只提供我们需要的组件,并且自己重用更大比例的系统。这一趋势也有助于提高可靠性(子板经过了更充分的测试)和供应保证(因为标准化的子组件板可以从更多的供应商那里采购)。鉴于过去几年的全球供应挑战,我们全行业都在考虑这些问题。
采用基于标准的硬件以鼓励重新利用
但是即使采用模块化设计,组件在被弃用后也需要去某个地方——从历史上看,这个地方就是垃圾填埋场。市场对二手服务器有需求,但许多是带有专有固件和 BIOS 的封闭系统的一部分,因此重新使用它们的成本很高,或者不可能集成到新系统中。循环经济的情况是这样的:对于封闭的固件和 BIOS 支持,以及专有或非标准化互连,其服务费用会使重用成本过高。如何解决这个问题?如果服务器可以使用开源固件和 BIOS 支持,就可以大大降低重用部件的成本——如此一来,另一个供应商就可以支持新客户。
回收
然而,除此之外,还有一些零部件故障,或者即使是在二手市场,运行起来也不再经济。金属回收总是可以进行的,一些制造商开始投资于这方面的计划,尽管用于提取可用元素的能源投资有时是没有意义的。这个领域出现了一些创新,Zhan 等人 (2020 年) 开发了一种环境友好和高效的水热缓冲技术,用于回收基于砷化镓(GaA)的集成电路,镓和砷的回收率分别达到 99.9 和 95.5%。目前的应用仍然有限——大多数制造商都在讨论水循环利用和可再生能源,而不是全面回收金属——但我们正在密切关注这一领域,以利用任何进一步的创新。
Cloudflare 正在采取什么措施来减少我们的服务器影响
讨论这些概念都很好,但我们今天就在做这项工作。我将其分成两个方面来讨论:采取措施,通过模块化和开放标准设计来减少隐含排放,以及为我们的工作负载使用最节能的解决方案。
Gen 12:言出必行
我们的下一代服务器 Gen 12 即将推出。我们正在强调基于模块的设计,并关注开放标准,以实现服务器内部组件的重用。
模块化设计
从历史上看,Cloudflare 的每一代服务器都需要进行大规模的重新设计。升级到新的 CPU 需要更换新的主板、电源、机箱、内存和 BMC。反过来,这可能意味着新的风扇、存储、网卡,甚至是电缆。然而,这些组件中的许多在每一代之间并没有发生巨大变化:这些组件使用较旧的制造工艺生产,并利用不需要最新速度的互连协议。
为了帮助说明这一点,让我们看看我们今天的 Gen 11 服务器:单插槽服务器,功率约为 450 W,CPU 和相关内存占其中的 320 W(在峰值负载时可能达到 360 W)。该系统上的所有其他组件运行功率为 100 W(大部分为风扇,这就是为什么那么多公司正在探索替代冷却设计),所以它们不是优化努力或更新的集成电路能大幅提高系统效率的地方。因此,我们不是为每个新服务器从头重新构建所有这些部件,并产生更多的隐含碳,而是尽可能多地重用它们。
通过将因效率原因需要更改的组件与其他系统级功能(存储、风扇、BMC、可编程逻辑设备等)分开,我们能够最大限度地跨代重复使用电子组件。随着时间的推移,构建这样的模块化系统显著减少了我们的隐含碳足迹。考虑一下,如果能够升级汽车引擎以提高效率,而不改变其他工作良好的部件,如车身、座椅和窗户,将能减少多少浪费。因此,我们在世界各地的数据中心都采用了模块化设计。
同时推动开放标准
作为一个行业,如果我们想要实现真正的模块化和减少 70% 电子垃圾的目标,我们就必须共同努力,加快跨接口、标准和供应商的互操作性。我们已经开始这方面的努力,利用标准的外接卡形式 (OCP 2.0 和 3.0 网卡,用于安全和管理模块的数据中心安全管理模块等) 。我们的下一代服务器设计使用 数据中心模块化硬件系统。这是一个开放源码的设计规范,允许模块化的子组件跨公共总线连接(不管系统制造商)。这种技术允许我们跨越数代维护这些组件,而不必在不像 CPU 和内存那样经常变化的部件上产生更多碳债。
为了实现更全面的循环经济,Cloudflare 广泛且越来越多地使用开源解决方案,例如 OpenBMC,这是对我们所有供应商的要求,而且我们努力确保修补能上溯到社区。开放系统固件通过可审计性实现了更强的安全性,但可持续性的最重要因素是,新的一方可以承担对该服务器的责任和支持,这使得可能不得不被销毁的系统可以被重用。这确保了 Cloudflare 所用硬件的 99% (数据承载资产除外,这些资产会根据我们的安全政策被销毁)都被重新使用,从而减少了为满足全球容量需求而需要制造的新服务器的数量。如需进一步了解如何实现,以及如何加入我们减少电子垃圾的愿景,请参阅这篇博客文章。
为我们的工作负载使用最节能的解决方案
我们可以推动(硬件方面)可持续性的另一个重要方式是,在响应需求指数式增长的同时,不是铺张浪费地投入更多服务器来解决问题,这在概念上很简单,但在实践中却很困难:测试和部署更节能的架构,并根据我们的工作负载对其进行调优。这意味着我们不仅要评估下一代服务器和网络设备的效率,还要减少硬件和能源浪费。
目前,在生产中,我们看到相同能耗下,Gen 11 服务器可以比 Gen 10 服务器多处理 25% 的请求。这与我们在 2021 年年中测试时的预期基本一致, 鉴于我们继续推出当时无法测试的新产品和服务,我们很高兴看到这一结果。
系统能效对我们来说已经不像以前那么简单了。从历史上看,评估效率的关键指标一直是每秒每瓦的请求数。这个指标允许评估新一代服务器时进行多代性能比较,但它实际上是根据我们的历史核心产品套件设计的。
我们希望——并鉴于扩展的问题而要求——我们的全球网络成为一个日益智能的威胁检测机制,同时也为我们的客户提供一个高性能的开发平台。任何在选购新电脑时看过基准测试的人都知道,在一个领域(如 SpecInt_Rate、STREAM 等传统基准测试)的快速性能并不一定意味着在另一个领域(如 AI 推理、视频处理、批量对象存储)的快速性能。我们下一代服务器的验证测试过程需要考虑所有这些工作负载及其相对流行程度——而不仅仅是请求。Cloudflare 硬件和软件之间的深度协作为其他运行第三方代码的公司提供了无法追求的优化机会。我经常说这是我们的超能力之一,这是让我每天对自己的工作感到极度兴奋的机会。
另一种既可持续又高效的方法是利用域特定的加速器。加速器是一个广泛的领域,我们已经看到了在应用层加速器(参见我们最近关于 Cloudflare Stream AV1 硬件加速的公告 )以及基础设施加速器(有时被称为智能网卡)方面的机会。话虽如此,如果添加的新设备不如它所取代的东西那么有效,则只会增加问题,而且节点级别的性能分析经常忽略在我们这样的分布式网络中部署的复杂性,所以我们的行动是迅速但谨慎的。
展望未来:行业标准报告
我们尽自己最大的努力去推动自己的发展,但在某些领域,整个行业都需要加快步伐。
特别是:服务器组件制造和运营的排放报告标准严重缺乏,因此我们正在与标准机构(如“开放计算项目”)合作,帮助定义整个行业的可持续性指标。这篇文章解释了我们正在如何提高我们的效率,减少我们的碳足迹,但应该有一个明确的方法,以便我们用来确保您知道您支持的是什么类型的企业。
《温室气体核算体系》(Greenhouse Gas (GHG) Protocol)倡议在制定国际公认的企业温室气体核算和报告标准并促进其广泛采用方面做得很好。他们将范围 1 的排放定义为“报告公司运营的直接碳核算”,这比较容易计算,并将范围 3 的排放量化为“间接价值链排放”。为了获得对产生设备的整个生命周期中的标准化指标,我们需要了解子组件的制造过程、供应链、运输,甚至是在建设我们的数据中心时使用的建设方法的碳足迹。
对于建立行业标准的合理指标,确保所有供应商进行一致的碳核算是一个必要条件。
帮助构建一个更好、更环保的互联网
云的碳排放对地球有重大影响,根据一些统计,到 2030年,信息通信技术将占全球能源需求的 21%。我们全力以赴使 Cloudflare 在地球上的足迹尽可能小。如果您已经走到了这一步,并且有兴趣为在互联网上构建最全球化、最高效和最可持续的网络做出贡献——硬件系统工程团队正在招贤纳士。欢迎加入我们。