WatchStor.com — 领先的中文存储网络媒体 | 51CTO旗下网站

技术文档 > 微服务器 > 正文
服务器解耦如何使云数据中心变得更高效
作者: litao984lt编译 2018-04-02 14:12 【机房360】

企业数据中心当前所采用的标准化服务器是浪费资源的,但未来的系统或将是可配置的,以便能够更好的匹配企业工作负载的需求。

根据一些市场调研的估计,当前在全球范围内,云计算的高速增长已然引起了数据中心业界的高度关注。毕竟,这些数据中心目前已经消耗了至少7%的全球电力供应,并且其耗电量还在进一步的持续增长。这导致IT行业亟待寻求提高数据中心基础设施效率的有效方法,其中甚至包括一些重新考虑计算机和数据中心构建方式方面的尝试努力。

2018年1月在英国曼彻斯特召开的计算机系统与高性能计算领域的顶级盛会HiPEAC 2018上,来自IBM公司的研究人员发表了一篇关于分解式计算机体系架构的论文。这项工作是由欧盟所资助的dReDBox项目的一部分,而该项目又是Horizo​​n 2020研究和创新计划的一部分。

服务器解耦意味着将服务器分解为其组成的计算和内存资源,以便根据每项工作负载的具体需要来分配服务器资源。目前,服务器是IT基础架构的基本组成部分,但一项工作负载无法使用比单台服务器更多的内存或CPU资源,也无法轻松地从服务器外部共享任何备用资源。

“部署到数据中心的工作负载往往在其使用资源的方式上存在很大的不成比例。有些工作负载会消耗大量的CPU资源,但并不需要太多的内存;而另一方面,其他的某些工作负载则将消耗比CPU的使用多出高达4个数量级的内存资源。”来自IBM公司的研究工程师Andrea Reale博士说。

在整个企业数据中心内,这意味着一些服务器将用到他们所有的CPU资源,但仍有大量的空闲内存;而对于其他一些服务器则情况正好相反,即使这些资源其实并没有被充分使用,但这些资源也会继续消耗电力资源。在一处典型的数据中心中,大约可能有16%的CPU资源和30%的内存资源会被白白浪费掉了。

但是,如果你企业的数据中心可以在软件控制下调解服务器资源,以便让您企业的每项特定工作负载拥有尽可能多的CPU和具体所需要的内存资源的话,那岂不是更好吗?

计算和内存的分离

dReDBox项目旨在通过使用称为“块(brick)”的分解计算和内存模块来解决这个问题。他们通过高速链接连接在一起,并且让足够的计算块与足够的内存块配对,以满足在既定时刻运行的任何工作负载的要求。从理论上讲,这使得企业数据中心的服务器可以针对特定应用程序进行资源的配置调解,以分配尽可能多的CPU核心和内存资源给工作负载,满足作业所需,然后可以将这些资源返回到资源池中,并在工作负载不再需要这些资源时将资源用于其他目的。

作为其研究项目的一部分,dRedBox团队已经构建了一款演示系统,其中brick块是围绕基于ARM的片上系统(SoC)芯片Xilinx Zynq Ultrascale +构建的。计算brick块拥有少量的本地内存,而内存brick块拥有更多数量的DDR4内存,可用于计算brick块。

在dRedBox体系架构中还有另外两种类型的brick块;加速器块可以提供GPU或FPGA硬件来加速应用程序(如机器学习或分析);以及一个控制器块,其是一种管理所有其他块的特殊块。

为了适应匹配现有的数据中心基础设施,dRedBox团队设想任何生产环境中部署的块都应安装在类似标准机架式服务器系统的2U机柜中。这些机柜外壳可能包含任何块类混合。

这种模块化安排的优点在于:其还可以轻松实现升级;企业数据中心的操作运营人员们可以简单地采用具备更高性能的新的计算块来替换,或者将内存块替换为具有更大内存容量的块,而不会让垃圾填满整个服务器。

然而,整个架构的关键部分是将块连接在一起的互连技术。这必须是高速和低延迟性的,否则当计算块读取存储在内存块中的数据时性能会受到影响。

低延迟架构

对于其演示系统,dRedBox团队在机箱内使用一款电气交换机矩阵连接块,而光学交换机矩阵连接到机架中另一个机箱内的块。对于IT环境而言,这些交换矩阵通常是电路交换的,这意味着它们在配置块之后会创建专用通道,不像以太网那样的分组交换网络,后者会根据数据分组中的地址将数据路由到其目的地。

根据Reale的介绍,选择这种安排恰恰是因为需要低延迟性。

“通过电路交换与分组交换相比,当从计算机块到内存块时,可以让内存请求的延迟低得多。”他说。

实际上,Reale声称即使使用研究级硬件,dRedBox系统也能够以远远低于1微秒的端到端延迟时间所需对远程存储器的访问,并且生产级处理器芯片以全时钟速度运行,性能会更高。

在计算和内存块之间建立电路交换链路的另一个优点是,其与软件看起来完全一样,就像内存直接连接到CPU的标准服务器一样。

“我们正在使用一些现有的操作系​​统扩展,比如在Linux中对于非统一内存的NUMA支持,以代表已知体系架构的应用程序的内存距离,而对于其他应用程序则是未知的,他们可以认为是本地内存,不需要知道内存在哪里。”Reale说。

演示设置的规模相对较小,仅包含三个托盘,但dRedBox团队显然可以通过运行实际的云工作负载来对其进行测试,尽管这些测试的结果目前尚未公布。

“我们不想使用基准测试,因为我们需要高保真度的结果,所以我们实际上使用了一组真实的云应用程序,包括数据分析和在线事务处理,内存缓存,并使用消息代理来测试这方面的努力将如何影响到物联网市场。”Reale说。

根据dRedBox团队的介绍,演示系统至少可以在性能方面与标准的横向扩展服务器部署相匹配,同时将所使用的资源减少25%到50%。在项目结束时,该团队希望能够展示整个dRedBox硬件机架的性能如何。

与此同时,架构的任何生产版本都需要适应现有的基础架构,特别是管理工具。为此,dRedBox控制面板将通过API与常用业务流程管理安排工具进行交互。

“控制面板或业务流程管理面板基本上是用于连接CPU和内存的一些带外服务器,并且这个接口是作为一款API公开的,特别是REST API,并且可以由数据中心的运营商要么手动使用或者要么更有可能实现集成——正如我们已经在项目中所做的那样——如果您想部署虚拟机或为容器部署Kubernetes,则需要像OpenStack这样的更高级的业务流程管理安排软件。”Reale解释说。

惠普企业公司、英特尔也在致力于服务器解耦工作

事实上,dRedBox团队并不是唯一寻求通过服务器解耦以作为解决现有数据中心架构所面临的诸多问题的可能解决方案的团队。

另一个团队是HPE的The Machine研究项目,该项目团队主要设计用于提供可支持大数据分析等应用程序的非常大的内存空间的系统。他们还具有独立的计算和内存模块,可以安装在基本上是机架式服务器的机箱集群中,并使用内存结构进行互连。在去年推出的演示系统中,HPE使用光链路连接了40个包含160TB共享内存的节点。

与此同时,英特尔公司也推出了该公司自己的称为RSD(Rack Scale Design)架构的项目计划。该项目计划从相似的目标开始,但迄今为止,英特尔一直致力于从服务器节点分解存储,而不是分离计算和内存。英特尔还专注于创建名为Redfish的API管理,旨在提供机架级别规模的资源发现和管理,并支持来自不同供应商的RSD产品之间的互操作性。

英特尔的RSD项目计划正在逐步发展,以便让戴尔EMC,爱立信和Supermicro等厂商能够以他们感到满意的速度将技术整合到他们的产品中。同时,HPE的新型计算机运算架构The Machine所开发的技术和概念很可能会被注入到其他平台,例如美国能源部的Exascale Computing项目,HPE也参与其中。

至于dRedBox项目,这是多家企业组织之间的协作努力,同时还包括多所大学及其分拆公司,并且涵盖了合作伙伴之间的多项知识产权协议。然而,该团队所期望的是,当项目结束时,其将能够提供一些可以部署在目标环境中的东西,但这仍然需要付诸额外的努力。

由于可以仅仅使用25%到50%的资源来运行工作负载,基于解耦架构的系统应该能够吸引更多数据中心客户。但是,正如我们以前所经常看到的那样,杰出的想法和理念其实并不总是能够推翻现状;您是否还记得IBM公司的PureSystems解决方案的案例呢?

通常情况下,供应商们往往都会发现投资于任何与他们目前向客户交付的产品差距过大的产品均会面临着过大的风险,而且,这将需要一家具有像英特尔这样级别影响力的企业才能真正将新技术推向市场。因此,真正可组合的硬件是否真的能够被推向市场还有待观察。也许只有当诸如谷歌、Facebook和亚马逊这样的超大规模企业用户对这方面表现出足够的兴趣时,我们才可以期待其将有可能成为现实。


标签:微服务器 

LecVideo