NetApp Tech OnTap NetApp Logo
NetApp Tech OnTap
     
NetApp 云:OpenStack
Rob Esker
Rob Esker
NetApp OpenStack 项目高级产品经理
Jeff Whitaker
Jeff Whitaker
NetApp 云解决方案经理

本文是关于 NetApp® 云的系列文章中的第二篇,介绍我们如何帮助您充分利用私有云、公共云和超大规模云资源。

在过去几年间,OpenStack 已成为私有云和公共云领域领先的开放式基础架构即服务 (Infrastructure-as-a-Service, IaaS) 平台。正如 NetApp CTO Jay Kidd 在其 2014 年预测 中所说:“今年,OpenStack 的发布更多地采用产品形式而非项目形式。”因此,如果您尚未采用 OpenStack,那么今年将是您开始了解 OpenStack 并考虑如何在您的企业中充分利用它的最佳时机。

作为 OpenStack 基金会的创始成员之一,NetApp 多年来一直致力于为 OpenStack 增加存储功能,包括提供多种部署选项、实现对 Cinder 块存储和经优化 Swift 对象存储的独特功能的访问等。我们也一直在推动 Manila 文件共享服务的彻底创新。

在本文中,我将详细介绍 OpenStack 是什么、提供 NetApp 为 OpenStack 做出的一些贡献的详情,并分享对您的企业目前应从何处入手的一些看法。

OpenStack 是什么?

要了解 OpenStack,最有效的一种方法是将其与 Linux 进行比较。我们经常听到这样的说法:OpenStack 之于云就如 Linux 之于服务器。如果说 Linux 是为单个服务器提供可扩展的开放式操作环境的话,那么 OpenStack 便是为云基础架构提供可扩展的开放式操作环境。

OpenStack 项目始于 2010 年,是由 NASA 和 Rackspace 联合发起的。自此之后,300 多家公司陆续参与进来,其中有 188 家(包括 NetApp)积极为该项目建言献策。

对 OpenStack 而言,一个关键点是:它提供的各种服务(包括计算、存储、网络等)能与等效的 Amazon Web Services (AWS) 功能实现 API 兼容。这意味着,如果您拥有或创建了运行于 AWS 上的应用程序,那么您就可以在任何 OpenStack 环境中运行该应用程序,包括在内部数据中心上。能够在 AWS 和 OpenStack 之间迁移应用程序,这样的潜能极具吸引力。NetApp 与 OpenStack 的一些早期采用者合作,弃用了一些在内部运行更加经济的 AWS 应用程序。同时我们也帮助默认在内部使用但需要定期“爆发”的应用程序利用云资源。

OpenStack 设计

OpenStack 采用模块化设计,包含同一体系下的一系列不同的开发项目。最终的 OpenStack 服务可用于创建大型处理、存储和网络资源池,完全通过由管理员控制的信息板进行管理,并且支持用户通过 Web 界面配置资源。OpenStack 云的租户可以手动选择和配置服务。运行于 OpenStack 云中的应用程序可以使用 OpenStack 应用程序编程接口 (API),通过编程方式选择和配置服务。

虽然各个组件模块均设计为配合运行,但您也可以只选择所需的组件。例如,服务提供商可通过增加一两个模块来补充这些模块提供的功能。

显示各个模块如何相互配合的 OpenStack 逻辑架构。

图 1) 显示各个模块如何相互配合的 OpenStack 逻辑架构。

OpenStack Havana 版本发布于 2013 年 10 月,它主要包括以下模块:

  • OpenStack Compute (Nova)通过使用任何虚拟机管理程序配置和管理虚拟机,按需提供计算资源
  • OpenStack Image Service (Glance):提供可引导磁盘映像的注册表,以及用于存储和检索这些映像的服务
  • OpenStack Block Storage (Cinder):为“块存储即服务”功能提供永久性块设备,而这些块设备映射到支持多种存储解决方案的 OpenStack 计算实例
  • OpenStack Object Storage (Swift):提供完全分布式、可横向扩展并且可通过 API 访问的存储平台,该平台可以直接集成到应用程序中,也可以用来进行备份、归档和数据保留
  • OpenStack Identity (Keystone):提供一个中心用户目录,这个目录与用户可以访问的 OpenStack 服务相对应。它充当整个云操作系统的通用身份验证系统,可与现有后端目录服务集成
  • OpenStack Network Service (Neutron):提供用于管理网络和 IP 地址的可插拔而且可扩展的 API 驱动型系统。通过可插拔的后端架构,用户可以利用基本商用工具或支持的供应商提供的高级网络服务
  • OpenStack Dashboard (Horizon):为管理员和用户提供图形界面,用于访问、配置和自动提供基于云的资源。利用可扩展的设计,可以方便地接入并使用第三方产品和服务,例如计费、监控和其他管理工具
  • OpenStack Telemetry (Ceilometer):提供用于在 OpenStack 云中收集使用情况和性能衡量指标的通用基础架构。最初目标是用来监控、计量以及为计费提供输入。
  • OpenStack Orchestration (Heat):实施了一项服务,该服务使用 Amazon Web Services (AWS) CloudFormation 模板格式,通过 OpenStack 本机和 Cloud Formation 兼容 API,协调多个复合云应用程序的运行。其目的一定程度上是为方便将 AWS 部署的工作负载转移到 OpenStack 部署。

OpenStack 版本

OpenStack 的发布时间安排得很紧凑,每六个月就推出一个新版本。(请注意,各个版本按字母顺序命名。Austin 是第一个版本,接下来是 Bexar、Cactus,依此类推。)每个版本通常都包含一些新功能和新模块,而且有可能以“孵化”形式包含一些未来要发布的项目。

OpenStack Icehouse 版本 不久前于 2014 年 4 月 17 日推出。在该版本中,上述所有模块的功能显著增强,而且还新增了一个项目模块:

  • OpenStack Database as a Service (Trove):它提供在 OpenStack 环境中部署数据库服务的功能。

Icehouse 中以孵化形式提供的项目包括:

  • OpenStack Bare Metal (Ironic)
  • OpenStack Messaging (Marconi)
  • Data Processing (Sahara)

每个新版本发布后,都会召开一次设计峰会和技术大会,决定下一个版本要提供的功能。(有关即将召开的峰会的信息,请参见本文边栏。)

OpenStack 发布

OpenStack 根据 Apache 2.0 许可证定义,这使其比其他大型开源项目更容易商业化,因此很早就吸引了众多公司广泛参与它的开发和采用。

OpenStack 与 Linux 之间的类比可以进一步延伸到它们采用的一种非常类似的发布模式。正如 Red Hat 和 SUSE 等公司基于 Linux 公开源代码创建了打包的 Linux 发布版一样,包括 Red Hat、SUSE、Mirantis、Rackspace 和 Metacloud 在内的十多家甚至更多 OpenStack 提供商也在创建 OpenStack 打包版本。OpenStack 基金会将 OpenStack 的核心功能定义得很到位,因此所有发布版均提供关键功能,从而避免了碎片化。

NetApp 积极地与许多 OpenStack 发布者建立了合作关系。请查阅 TR-4284:《参考架构:在 NetApp 集群模式 Data OnTap 上部署 Red Hat Enterprise Linux OpenStack Platform 4》,了解最近提供的一个示例。

NetApp 对 OpenStack 的发展作出了哪些贡献?

NetApp 是 OpenStack 基金会的创始成员,从 2011 年初开始,成为 OpenStack 的贡献成员。除了提供与 NetApp 产品的集成外,NetApp 还通过增加一项重要的新服务发挥了社区领导者的作用,并赞助了最近七次 OpenStack 峰会。

NetApp 在与存储相关的功能方面,对 OpenStack 近期版本的推出做出了重大贡献,这些版本包括 Essex、Folsom、Grizzly、Havana 以及现在的 Icehouse。我们的一大目标是在 OpenStack 中提供集成,以便于您利用 NetApp FAS 和 E 系列存储的所有功能,并且将这些集成作为上游源的一部分,使其在每个打包的发布版中均可用。

企业选择 NetApp FAS 存储的原因很多,这些原因同样适用于云环境。这些原因包括:能够利用重复数据删除、数据压缩、克隆和精简配置实现先进的存储效率、利用多年开发的完整产品套件实现集成数据保护、连续可用性、利用服务质量 (QoS) 功能提供性能保障,以及集群模式 ONTAP 固有的可扩展性。NetApp 利用根据企业要求确定的功能集来满足关键的云需求。当您过渡到“即服务”IT 模式时,您肯定希望能确保继续利用可以发挥存储最高价值的功能。

NetApp OpenStack 集成包括:

  • NetApp 专用于 Data ONTAP、E 系列和 EF 系列系统的驱动程序
  • 存储服务目录 (Storage Service Catalog, SSC) 功能
  • 支持副本卸载的增强型和永久性实例创建功能
  • pNFS 支持
  • OpenStack Object Storage (Swift) 的优化部署

此外,NetApp 一直积极参与创建代号为“Manila”的共享文件系统服务。

支持在 OpenStack 环境中使用 NetApp 存储的驱动程序

NetApp 提供了一系列驱动程序,借助这些驱动程序可以通过 OpenStack Block Storage (Cinder) 来配置 NetApp® 存储和数据管理功能。除了 iSCSI 选项外,NetApp 还支持使用 NFS。如果使用面向文件的协议(例如 NFS)作为面向块的 Cinder 服务的后端,则可以实现更大规模的扩展。这些驱动程序为单个虚拟机管理程序提供 NFS 装载,而文件反过来作为虚拟块设备提供给虚拟机管理程序。

适用于 NetApp® 集群模式 Data ONTAP® 的 OpenStack 驱动程序,既可以在“直连到 Storage Virtual Machine (SVM)”模式下使用,也可以选择在能够提供进一步的服务部署自动化和适应性的模式下使用。驱动程序还可以在 NetApp Data ONTAP 7-模式下使用。

Icehouse 版本引入了 NetApp E 系列和 EF 系列的 Cinder 驱动程序,这是一项令人兴奋不已的新增功能。它提供了更多的选项,用来满足对高密度、高性能特性的需求。

存储服务目录功能

通过 NetApp Cinder 驱动程序,可以构建一个目录,在其中包含满足多种应用程序和租户需求的不同存储功能。Cinder 存储服务目录可以用各种不同的效率、性能、可用性和保护属性加以定义。如图 2 所示,目录条目本身(称为“Cinder 卷类型”)既能以非常细的粒度定义,也可以表示为最适合特定租户用例的功能集合,后者更常见。

NetApp 为 OpenStack Cinder 提供存储服务目录功能。

图 2) NetApp 为 OpenStack Cinder 提供存储服务目录功能。

增强型和永久性实例创建与副本卸载

通过适用于集群模式 Data ONTAP 的 NetApp Cinder 驱动程序,可以利用 NetApp 克隆技术基于 Glance 映像快速而高效地创建多个实例(子虚拟机)。其作用非常类似于 NetApp 在各种形式的 Virtual Storage Console (VSC) 中提供的快速克隆功能。

它采用了多层优化。默认情况下,基于映像创建的第一个卷需要 Glance 的完整副本;不过,如果将 Glance 配置为在 NetApp NFS 共享上存储映像,那么即使是第一个副本,也可以是高效的克隆操作或硬件辅助的副本。

利用此项功能,可以在基于 Glance 映像或现有 Cinder 卷创建新 Cinder 卷时使用 NetApp 副本卸载功能。Cinder 驱动程序与 NetApp 存储之间的通信采用 NetApp 特定的 NFS 客户端二进制形式。

pNFS 支持

并行 NFS (pNFS) 是对 NFS 4.1 的扩展,它能够提高性能,尤其是在采用集群模式 Data ONTAP 时。无需在 Nova 或 Cinder 中进行任何特殊配置即可启用 pNFS;您可以在 cinder.conf 文件中设置装载选项。

OpenStack Object Storage (Swift) 的优化部署

NetApp OpenStack 部署和运行指南 提供了在 NetApp E 系列系统上部署 OpenStack Object Storage 时所用的参考架构,该架构可降低运营成本,提高可扩展性。Swift 默认为在一个站点为所存储的任一个项目创建 3 个副本,而 E 系列的动态磁盘池 (Dynamic Disk Pools,DDP) 可以将该数字降低到 1.3 个副本以下。E 系列可减少存储中每个对象所需的副本(数据副本)数,因此成为 Swift 提高可扩展性的首选后端。

Manila

虽然在全球发售的全部存储中,多数都支持共享文件系统,但到目前为止,OpenStack 尚未提供共享文件系统服务。这是一个相当大的疏忽,对 NetApp 造成一定影响。NetApp 推出了一项代号为 Manila 的新服务,其设计、原型设计和构建工作均已完成,其作用相当于 Cinder 的共享或分布式文件系统。与 Cinder 一样,Manila 是一个配置控制平台,用于协调流程、提供容量等。

NetApp 正在开发作为共享文件系统服务的 Manila,它将在下一 OpenStack 版本中以孵化形式提供。

图 3) NetApp 正在开发作为共享文件系统服务的 Manila,它将在下一 OpenStack 版本中以孵化形式提供。

因此,Manila 并非实际的共享文件系统本身,而是一个控制平台,例如,通过它可以访问现有 CIFS 共享,或者创建新的 NFS 导出并在虚拟机实例 X、Y、Z 之间为其建立映射。NetApp 正在 OpenStack 社区中坚持不懈地努力,力争让 Manila 在即将于 2014 年 10 月到来的 Juno 发布周期进入孵化阶段。

您目前应该从何处入手呢?

很多公司之所以青睐 OpenStack 是出于以下多种原因:

  • OpenStack 并非专有,因此其选择面较广
  • OpenStack 不受虚拟机管理程序限制:它可与多种虚拟机管理程序协同工作
  • OpenStack 得到众多独立软件供应商 (ISV) 和硬件提供商的大力支持
  • 既可以支持传统应用程序,也能支持更偏重于以“云本地”形式构建的应用程序
  • 现有的 AWS 应用程序可转入内部使用
  • AWS 丰富并且不断增多的开发工具集极具吸引力
  • OpenStack 非常适合正在向或期望向更偏重于云(“即服务”)的基础架构转型的公司

如果上述部分或全部原因均与贵公司的情况相符,而且您尚未部署 OpenStack,则可以考虑着手部署。NetApp 正与近四十家客户合作,支持生产用 OpenStack 部署和数量相近的概念验证实施。

目前您应该做的是密切关注关于 OpenStack 的动向并跟踪每个 OpenStack 版本的最新进展。请随时关注 OpenStack.org netapp.com/openstack,了解最新信息。您最好先展开概念验证,以便可以开始试用该技术并掌握相关知识和专业技能。

NetApp 一直致力于 OpenStack 的持续开发并提供相应支持,积极与行业领先集成商和 OpenStack 发布者开展合作。同时,除了 OpenStack 之外,我们还努力为您提供多种云选项,以便于您选择最佳选项(软硬件)来满足自己的需求。请单击此处详细了解所有可用 NetApp 云选项。

 对 NetApp 云:OpenStack 有见解?

请在 NetApp 社区中在线提出问题、交流观点、分享看法。

Rob Esker
NetApp OpenStack 项目高级产品经理
NetApp

Rob 最早参与 OpenStack 的时间可以追溯到 2010 年社区建立之初。他是该社区的创办者,并一直主导着 NetApp 在此领域的工作。他受聘担任部署架构师和社区技术撰稿人 (ATC),作为 NetApp 在 OpenStack 基金会的代表,同时也经常在 OpenStack 峰会、技术大会和用户群中发言。Rob 不仅负责 OpenStack 内部及外围的 NetApp 组合技术的战略制定、集成和开发工作,同时也负责业务开发以及市场导向的组织和流程协调。他曾是美国海军陆战队队员,他与妻子和两个女儿定居在德克萨斯州奥斯汀。

Jeff Whitaker
云解决方案经理
NetApp

作为云解决方案经理,Jeff 主要负责 OpenStack 和云软件管理业务。他已经在 NetApp 工作五年有余,负责管理 NetApp 的虚拟存储设备产品系列,其中包括 Data ONTAP 的第一个虚拟机版本 Data ONTAP Edge。在过去两年中,Jeff 将主要精力投入到云产品发展方向和战略的制定,他与客户直接打交道,致力于满足客户的公共云和私有云需求。Jeff 已在这个行业供职将近 20 载,拥有从服务提供商市场到高性能计算市场存储和网络产品的营销及销售经验。

Tech OnTap
立即订阅
Tech OnTap 每月发布一次,为用户提供 IT 见解,以及对实际应用的最佳实践、技巧和工具、幕后技术访谈、演示、同行评论等的独家访问。

访问 NetApp 社区中的 Tech OnTap ,立即订阅。

Explore
Explore
OpenStack 亚特兰大峰会

OpenStack 峰会是面向 OpenStack 云软件开发人员、用户和管理人员的大会,为期五天。下一次 OpenStack 峰会 将于 5 月 12-16 日在佐治亚州亚特兰大举行。NetApp 将召开多个技术会议,内容涉及解决方案概述、Manila 深度剖析、OpenStack 部署细节等。欢迎访问 NetApp 网站,您将有机会赢取 iPad Mini。

Explore
TRUSTe
联系我们    |   如何购买   |   反馈    |   招聘   |   订阅   |   隐私政策   |   © 2014 NetApp