AWS俨然是基础设施即服务公共云市场的龙头老大。另一方面,OpenStack是面向私有云的基础最坚实的云平台。虽然AWS用户的数量远远超过OpenStack部署的数量,但是许多企业也在考虑构建OpenStack云。对那些公司来说,有必要了解如何才能在混合云环境下有效地部署OpenStack和AWS。
OpenStack和AWS都提供了可扩展的计算、存储和网络服务。AWS服务和OpenStack服务也存在相似之处。比如说,这两家云提供商都提供了对象存储服务;AWS有亚马逊简单存储服务(S3),OpenStack则有Swift。同样,OpenStack包括用于身份管理的Keystone服务包,AWS则提供了身份和访问管理这项服务。
尽管拥有相似的特性,但是这两种云平台之间的紧密集成并非总是易事。AWS专有API和原生工具提供了与AWS兼容的API,因而显得与众不同,比如像Eucalyptus这样的云平台,惠普企业(当时还叫惠普)在2014年收购了Eucalyptus。另一方面,OpenStack采取了不同的方法,开发了自己的API。这两种平台之间缺少原生的低层兼容性,意味着采用者得采取两套广泛的策略与两者配套。
OpenStack和AWS都提供了可扩展的计算、存储和网络服务。AWS服务和OpenStack服务也存在相似之处。
一个办法就是同时使用OpenStack和AWS,但是将它们当成松散耦合的资源。这就需要IT团队运行两个云,这两个云通过基于互联网的VPN或通过AWS和数据中心之间的专用线路上的AWS Direct Connect来进行连接。使用这种策略的话,企业就能使用OpenStack,在本地或托管环境下运行私有云。视情况而定,资源可以部署到任何一个云上。可以使用AWS存储网关(AWS Storage Gateway),在两个云之间复制数据。
管理员可以手动处理两个平台的另外大多数功能。比如说,计算任务可以在云之间移动,只要移动配置服务器的基础设施配置文件(比如Ansible脚本)。配置脚本方面可能需要一些定制,这取决于运行的是哪个平台。比如说,装入Web服务器、安装操作系统更新版的启动脚本可以在AWS或OpenStack中运行。但是引用身份管理服务的脚本就需要加以定制。
松散耦合方法的优点在于,企业可以充分利用每一种云服务的最佳部分。如果你的工作负载很适合放在私有OpenStack云,另一些工作负载很适合AWS,那么你可以将它们部署到那个优先的云。然而,这种策略的缺点是,你可能需要重复工作――不得不安装和维护两套不同的身份和访问管理系统、访问控制机制以及治理策略和程序。
Cloudyn之类的服务有助于简化管理每一种云的工作。除了微软Azure和谷歌计算云外,其工具还为OpenStack云和AWS云提供了优化、分析和治理功能。虽然Cloudyn可能无法实现跨云优化,但是它确实提供了管理多种云的单一工具。
企业还可以使用诸如Scalr或戴尔云管理器(Dell Cloud Manager)之类的多云管理层。这类产品提供了用于管理多个云的单一平台。Scalr云管理平台可同时支持治理方法和开发运维方法。Scalr包括了诸多组件,可以管理云环境里面的身份、策略、配置、编排和计费。通用的API用来与资源进行跨云交互。戴尔云管理器提供了类似功能,可以跨云配置资源、实现任务自动化。Scalr和戴尔云管理器都有两种版本:软件即服务版本或本地部署版本。
多云管理工具在不同的云平台上提供了一个抽象层。由于每个平台上有更多的大众化资源,比如虚拟机和对象存储,云服务就能更一致地运行。使用更专门化的服务,比如在一个平台下工作、在另一个平台下无法工作的NoSQL数据库,就会让使用通用平台的价值荡然无存。
原文标题:Deploying and managing OpenStack and AWS
【51CTO.com独家译稿,合作站点转载请注明来源】