2月27日在上一篇关于ARM和x86在数据中心应用的较量,已经不是一个新话题了。我们经常看到功耗、性能数字,以及应用软件和生态系统丰富程度的讨论。《华为UDS对象存储:ARM自组织硬盘满足CERN功耗》一文里面,笔者曾经提到“功耗和成本正是UDS使用ARM而不是Intel Atom等处理器的原因,据了解华为此前在这一系列的产品中使用过Atom。”
现在我想以大型用户的实际研发和部署进度为切入点,继续谈谈ARM和x86之间各自的优势,以及可能存在的不足。
本文的两个主要论点是:ARM在用于数据中心的SoC方面,目前相对于x86的功能和集成度有一定优势;另外百度与Facebook主导的Open Compute Project(开放计算项目),其存储(服务器)设计的密度和灵活性也有些差别。那为什么标题中还说两家“异曲同工”呢?先来看看百度的情况。
百度ARM云存储支持纯x86/ARM,或两者混布
ChinaByte比特网:关于百度的ARM云存储节点,是否方便透露使用了来自哪家的处理器?系统来自哪个ODM?
以我的了解,华为UDS对象存储(云存储)也使用了ARM,在存储节点上每颗ARM (应该是单核)对应一个硬盘,而管理(元数据)节点仍然是x86。
我看到百度也是每个ARM核心对应一个硬盘,因此想了解下整套系统的组成,是否也需要x86的管理节点搭配使用?ARM在这里是什么样的角(承担着哪些处理工作)?
百度:我们与ARM、Marvell 等业界领导者共同设计开发了这款ARM 云存储服务器,并拥有相关专利。完整的系统架构不方便透露。可以明确的是,我们的这套系统可以支持纯X86,或者纯ARM,或者两者混布。
点评:我想这个答复还算简单清楚,下面再看看实物照片:
百度的ARM云存储服务器,采用在2U机架中6个节点的机箱设计
上图下方为抽出的一个ARM节点,在外形尺寸上接近刀片服务器。我们可以看到4块希捷的3.5英寸硬盘,在右边红圈中的区域,2个带有散热片的芯片中应该有一个是来自Marvell的4核心ARM,附近斜插着一条ECC内存。
x86架构和arm架构区别
而放在机箱上的那个模块则是从机箱后部抽出来,在它两边是一对冗余电源模块。除了风扇排之外,这里大一点红圈中的3颗芯片应该是用于计算节点与对外万兆以太网(10GbE)接口之间的交换单元,右下方那个小芯片看上去像是ASPEED 的图形和远程管理(BMC)处理器。
可以看出,该2U系统有一块“中板”,负责内部通信和供电连接。
至本文截稿之时,笔者又看到了百度云首席架构师林仕鼎在HPCA大会上的演讲资料——《Application-Driven Datacenter Computing》。上图中提到了12 HDD/U 的密度,也就是2U 24块硬盘;另外内置网络交换模块也符合我们在上面的判断。
接下来讨论下Facebook的存储设计。
开放计算项目:30、15(45)盘位2U SAS JBOD
上图来自Open Compute Project(开放计算项目)的Open Vault Storage Hardware v0.7规格文档,作者自然是Facebook的人了。
这里的Open Vault存储实际上不包含服务器(主机)部分,只是一个JBOD硬盘扩展柜。关于x86和ARM在Facebook的应用我们会在后面谈及。
在2U的机箱里,上下容纳有2个像这样抽出硬盘“托盘(tray)”,那一共就是30个3.5英寸驱动器。WD 4TB企业级黑盘(单节点裸容量可达120TB)在该文档的多个照片中出现(如果换作我是西部数据的市场人员,把这些盘白送给Facebook也蛮值得的)。
从横向并排可以放5块硬盘这一点,可以确定Open Rack机柜不是标准的19英寸(682.5mm)宽度。如下图,它的宽度为538mm。
这张图机架尺寸图来自Open Compute Project的Open Rack Hardware v1.0文
至于硬盘与外界的I/O部分,主要是由前面那块绿的SAS扩展板(SEB)来实现,上面关键的芯片和一般的JBOD都是用的SAS Expander。Facebook关键不同的一点是:在机箱前后气流进出的位置,居然不像传统服务器/存储那样安装塑料防尘面板。正如我们的判断,有知情者表示,他们是在整个数据中心机房的进风口来做防尘处理。
因此如果有人想直接完全照搬Open Compute Project的设计,需要考虑一下。拿来做参考,或者在其基础上改动当然是可以的。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。