技术开发 频道

将OpenStack部署到Hadoop的四种方案

  全盘考虑

  大数据技术和私有云环境都很有用;不过,如果将两者结合在一起,企业会获得巨大的利润。尽管结合两者会让环境变得更复杂,企业仍然可以看到将 OpenStack 私有云和 Apache Hadoop 环境结合在一起产生的显著的协同效应。如何来做会更好?

  方案1. Swift+Apache Hadoop MapReduce

  在私有云环境中,常见的大数据部署模型之一是:将 OpenStack 的 Swift 存储技术部署到 Apache Hadoop MapReduce 集群,从而实现处理功能。使用这种架构的优势是,企业将获得一个可扩展的存储节点,可以用该节点来处理其不断累积的数据。根据 IDC 的调查,数据年增长率已经达到 60%,该解决方案将满足不断增长的数据需求,同时允许组织同时启动一个试点项目来部署私有云。

  该部署模型的非常好的使用场景是企业希望通过存储池尝试使用私有云技术,同时在内部使用大数据技术。非常好的实践表明企业应当先将大数据技术部署到您的生产数据仓库环境中,然后构建并配置您的私有云存储解决方案。如果将 Apache Hadoop MapReduce 技术成功融合到数据仓库环境中,并且已经正确构建并运行您的私有云存储池,那么您就可以将私有云存储数据与预调度的 Hadoop MapReduce 环境集成在一起。

  方案2. Swift + Cloudera Apache Hadoop 发行版

  对于那些不愿意从头开始使用大数据的企业,可以使用 Cloudera 等解决方案供应商提供的大数据设备。Cloudera 的发行版包括 Apache Hadoop (CDH) 解决方案,它允许企业不必针对 Hadoop 的每个细微差别来招募或培训员工,因此可以在大数据方面实现更高的投资回报 (ROI)。对于那些不具备大数据或私有云技能集,希望以缓慢、渐进的方式将该技术集成到其产品组合的企业,这一点尤其吸引人。

  大数据和云计算属于相对较新的技术,许多企业希望通过它们实现成本节省;不过,许多企业对于是否完全采用这些技术犹豫不决。通过利用供应商支持的大数据软件版本,企业在这方面将会更加从容,同时还可以了解如何使用这些技术来发挥自身的优势。此外,如果使用大数据软件分析大型数据集,而且可以通过私有云存储节点来管理这些数据集,那么这些企业还可以实现更高的利用率。为了最好地将这一策略集成到企业中,首先需要安装、配置和管理 CDH,以便分析企业的数据仓库环境,然后将 Swift 中存储的数据添加到需要的地方。

  方案3. Swift、Nova + Apache Hadoop MapReduce

  对于希望在大数据环境中实现更高程度的灵活性、可扩展性和自治性的企业,可以利用 Apache 和 OpenStack 提供的开源产品的与生俱来的能力。为此,企业需要最大限度地利用这两种技术栈,这就要求采用与前面所述的解决方案不同的思维方式来设计环境。

  要获得完全可伸缩的、灵活的大数据环境,必须在一个同时提供存储和计算节点的私有云环境中运行它。为此,企业必须先构建私有云,然后添加大数据。因此,在这种情况下,必然会用到 Swift、Nova 和 RabbitMQ,并控制器节点来管理和维护环境。但是,问题在于企业是否需要针对不同的系统和业务部门将环境分为若干个部分(例如,非大数据虚拟机或客户机实例)。如果企业准备完全使用私有云,那么应当添加 Quantum,从网络的角度对不同的环境进行划分(参见图 5)。

 

方案:全盘考虑
▲图 5. OpenStack 架构

  在设置并测试了私有云环境后,可以将 Apache Hadoop 组件合并到其中。此时,Nova 实例可用于存放 NoSQL 或 SQL 数据存储(没错,它们可以共存)以及 Pig 和 MapReduce 实例;Hadoop 可以位于一个独立的非 Nova 机器上,以便提供处理功能。在不久的将来,Hadoop 有望在 Nova 实例上运行,使私有云自包含到所有 Nova 实例中。

  方案4. GFS、Nova、Pig 和 MapReduce

  从架构的角度看,除了使用 OpenStack 的 Swift 实现可扩展存储外,可能还有其他选择。本例使用了 Google File System (GFS)、Nova 组件和 Apache Hadoop 组件,具体来讲,使用了 Pig 和 MapReduce。该示例允许企业集中精力开发一个仅用于计算处理的私有云计算节点,同时利用 Google 的公共存储云作为数据存储。通过使用这种混合云,企业可以专注于计算处理功能的核心能力,由第三方负责实现存储。该模型可以利用其他供应商的存储解决方案,如 Amazon Simple Storage Service;但是,在使用任何外部存储之前,企业应当在内部使用可扩展的文件系统 (XFS) 来构建该解决方案,并进行相应的测试,然后再将其扩展到公共云中。此外,根据数据的敏感性,企业可能需要使用数据保护机制,比如模糊处理 (obfuscation)、解除匿名化、加密或散列。

  技巧和提示

  在将云计算和大数据技术并入企业环境时,一定要为这两个技术平台构建员工的技能集。当您的员工理解这些技术后,就可以组建一个实验室来测试这两个平台合并后的效果。由于包含许多不同的组件,因此在实现过程中,请务必遵循前面提到的经过验证的路径。此外,企业在尝试合并这两种模式时可能会遇到一些挫折,应当在进行若干次尝试后改用其他方法。这些方法包括设备和混合云。

  障碍和陷阱

  由于这些都是比较新的技术,所以大多数企业需要利用现有资源进行测试,之后再进行大量的资本支出 (CapEx)。然而,如果没有对这些技术在企业中的应用进行合理的预算和人员培训,那么试点和测试工作将会以失败告终。同样,如果缺少完整的私有云部署,企业应当首先在其中实现大数据技术,然后再实现私有云。

  最后,企业需要为私有云和大数据计划制定一个战略路线图。要获得成功的部署,则需要进行更多的分析 “工作”,这有可能会拖延处理过程。为了消除这种风险,应当采用一种迭代式的项目管理方法,以分阶段的方式部署到业务部门中,通过这种方法将这些技术部署到企业中。企业需要确认如何通过应用这些新技术使公司受益,如成本节省或加强处理功能等。(感谢@程序猿张吉的分享。文/Steve Markey,编辑/郭雪梅)

  关于作者:

  Steve Markey 是一名顾问、副教授以及 Cloud Security Alliance (CSA) 的 Delaware Valley (Greater Philadelphia) 分会的现任主席。他拥有多个证书和学位,在技术领域拥有超过 11 年的工作经验。Steve 经常发表有关信息安全、信息隐私、云计算、项目管理、电子发现和信息治理的演讲。

0
相关文章