扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
【编者按】黑客马拉松是程序员们的“美国偶像”,非常受欢迎,黑客马拉松一般长达几十个小时,参赛者累了或坐或卧,现场休息,一群高手云集一堂,在这么短暂的时间内拿出作品,对团队成员的技术水平、身心承受能力都是一场终极考验。本次OCP峰会黑客马拉松冠军Ron Herardian团队和我们分享了这场中比赛许多不为人知的细节,成员之间相互配合,发挥各自专长,最终完美的完成整个项目,演绎24小时头脑风暴,下面看Opencompute的Ron Herardian给我们带来的精彩消息。
以下为译文:
在过去的三个OCP峰会上,对开源技术和硬件怀揣着激情和梦想的工程师们走到一起,参加24小时黑客马拉松,在此期间,他们不停地工作希望在激烈的竞争中脱颖而出。今年,三支队伍赢得了黑客马拉松比赛,他们中的两位会在OCP博客上分享他们的经历,本文来自Ron Herardian的博客,他将在此分享他们团队获胜的诸多细节。
每当介绍新技术,大多数工程师问的第一个问题就是它们如何让我们的工作变的更好、更高效,在Open Compute峰会的硬件黑客马拉松上,我们给这个问题找到了最佳的答案。
我的团队成员来自不同的公司,我们彼此以前从未见过,Andreas Olofsson来自Adapteva, Peter Mooshammer以前在IBM工作,Jon Ehlen来自Facebook, Dimitar Boyn来自I/O Switch Technologies,还有 Rob Markovic ,一个独立顾问,最后还有我自己,一个计算机爱好者和黑客。虽然Rob和我都熟悉来自I/O Switch 公司的Dimitar,但我们彼此并不熟悉,其他成员互相都不认识,尽管如此,我们在经过一个小时的头脑风暴之后,彼此之间配合的非常默契而且一项雄心勃勃的计划逐渐浮出水面。
我们选定的项目叫做Adaptive Storage(自适应存储),在这里网络上的计算和存储资源将是松散耦合的,而且是独立可扩展的,从而优化大数据平台Hadoop。该项目使用基于RISC处理器(ARM)的微型服务器和连接网络的磁盘驱动器来创建Hadoop 数据节点。I/O Switch提供了一块能够使磁盘驱动器直接连接网络交换机的印制电路板。Hadoop微服务器节点可以控制网络上一个或多个磁盘驱动器,但任何微服务器可以读任何磁盘驱动器,这将使它能够在公共网络交换机中灵活、动态地重组计算和存储资源,如果成功,Adaptive Storage可以用来消除Hadoop的hotspots和coldspots。
从一开始,整个团队对新的Parallella微服务器在云供应商和大型企业中的前景非常看好,尽管它似乎更适合业余爱好者或者教育市场。Parallella是一个强大的、灵活的可扩展计算平台。Parallella计算机拥有双核Zynq Z-7020 ARM A9处理器,外加16核Epiphany Multicore加速器,以及1GB的RAM,它还内置千兆以太网、 USB、HDMI以及50GB/S扩展连接器。
Parallella 微服务器
Adaptive Storage的概念是由Dimitar和Andreas受其他团队成员的启发而来的,这个项目需要在网络上获取松散耦合分布式Parallella计算能力来存储资源,这需要通过AoE将磁盘驱动器连接到网络,以及在Parallella Hadoop 数据节点上运行开源 AoE驱动。Adapteva提供Parallella硬件和Linux发行版,I/O Switch提供AoE到SATA的印制电路板(“AoE使能器”),以及其他硬件设备来构建测试实验室环境。
I/O Switch AoE 使能器
黑客们需要构建一个自定义编译Linux内核和开源驱动程序代码,团队的每个成员迅速发挥他们的专长,Andreas 在Parallella平台以及ARM处理器Linaro Linux上的有着丰富的实践经验,这对我们项目至关重要;Jon在演示Parallella存储节点和I/O Switch AoE使能器如何在真正的数据中心部署方面帮助很大,他还负责整个项目的实际用例和3D CAD制图;除了解决许多问题,Peter成功的将整个软件栈部署到虚拟机环境中给了团队信心,这使我们的目标可以如期实现;Rob和我准备测试实验室,以及负责故障排除工作、协调团队,以及临时到最近的电子商店购买设备,准备项目的演示等。
整个团队工作到1月28日周二深夜,Dimitar和Andreas在夜里轮流对自定义的Linux内核启动运行、在Parallella平台上部署Hadoop。凌晨1点左右,试验台Parallella电脑在内核编译时过热,我们将风扇抬高使之远离I/O Switch Hailstorm存储附件,并从另一个团队借来线将风扇和Parallella板连接起来,最终很快解决了这个问题。
Adapteva CEO:Andreas Olofsson, .
经过24小时的努力,我们顺利的完成我们的项目,Dimitar在现场做了详细的演示,并且耐心的问答了观众的提问,包括如何使用Adaptive Storage在可扩展对象存储上实现Seagate的 Kinetic存储API或Amazon S3 RESTful API。
I/O Switch Technologies CTO:Dimitar Boyn,
在Adaptive Storage上,磁盘驱动器是直接连接到网络交换机的,没有传统的存储阵列。Hadoop的Parallella微服务器也连接到交换机,它们当中的每一个都可以为一个或多个磁盘驱动器处理数据。因为每一个磁盘驱动器都通过I/O Switch AoE 使能器PCB单独连接到网络,任何微服务器可以读取任何磁盘驱动器,这意味着微服务器可以联合起来处理复杂的事务或更大的数据集。
我们的设想是微服务器可以按需结合和动态重组,因为额外的微服务器可以自动被加入进来处理复杂的事务或大型数据集,Adaptive Storage是弹性计算,额外的物理微服务器可以随时添加到网络交换机,独立存储。
同样的,任何微服务器可以接管网络上未赋值的磁盘驱动器来进行特定的写访问,不需要时可以释放它们,这也是按需进行的,因此Adaptive Storage是弹性存储。额外的物理磁盘驱动器可以随时被添加到网络,独立计算。
除了引人注目的省电特性和独立性、计算和存储资源的弹性可扩展,Adaptive Storage可以很容易消除Hadoop上的计算hotspots和coldspots,但Adaptive Storage的概念和方法并不局限于Hadoop。它可以应用于任何大数据技术,如Cassandra 、MongoDB或常规的对象存储。例如Adaptive Storage是Seagate Kinetic的有效补充,因为Kinetic API可以在微服务器上运行,管理网络上一个或多个磁盘驱动器。
实际上,Facebook的1/2宽度Knox OCP系列小型计算机系统接口扩展板可以很容易被全宽度的Adaptive Storage基线板取代,并且在这上面可以安装插件导轨以及扩展卡/底板,整个结构支持金属支架,从机械和制造业的角度来看这个结构非常简单。
Adaptive 存储基线板
短短的24小时内,在没有预算的情况下,我们团队的工程师仅仅利用几台电脑、电路板和网络设备开发出一种全新的方式来组织Hadoop 数据节点、构建和演示一个基于ARM处理器的微型服务器使用开源软件的工作模型,并且绘制出了可投入生产的CAD图纸。
经验告诉我们,研发一个类似的项目在一个大型技术公司可能需要几个月,这可能就是我们参加OCP峰会为什么这么开心的原因。我们不能肯定Adaptive Storage是否在未来一直适用,但我们都很兴奋,许多公司和个人采访我们的黑客,他们被看到的迷住了,想继续发展这个项目。这一切让我们增加了对开源和OCP的信心,我们能够使用开源技术来构建一些伟大的东西,未来我们将和更多志同道合的人们继续构建、创新和发展开源技术。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。