有人要求我对OpenStack开源云计算平台进行简要的安全性分析,并简要分析我们的企业是否应该把开源云计算平台作为云基础设施建设的基础去追求。我的初步评估是,像Apache和 Linux,平台的开放性让我们能迅速发现和修复安全漏洞,这可以降低溢出的可能性。你们同意吗?还有其他值得考虑的OpenStack安全点(利与弊)吗?
OpenStack是一个倡导执行简便、功能丰富、扩展性强的基础设施即服务云计算平台。于2010年7月由托管供应商Rackspace有限公司和NASA发布,它由构建云基础设施解决计划的各种组件的一系列相关项目组成。有了Apache 2.0许可证,所有编码都可免费使用,并且有上百家公司为它的开发做出贡献,包括:思科系统有限公司、Citrix系统有限公司、戴尔有限公司、英特尔有限公司和微软公司等等。
选择开源云软件意味着避免了专利供应商技术锁定的潜在困境,OpenStack的典型设计使它能与传统技术或第三方技术合并。OpenStack也旨在制定云计算标准,这在目前是缺失的。有了标准,拥有在云供应商中应用的兼容工具和服务也变得更容易,从而简化了在云与云之间(特别是从私有云移向公共云)移动数据和应用的过程。开源Linux 解决了由Unix特点出现而产生的问题,开放云标准可以为大型云计算提供同样的益处。
OpenStack有两种相关项目:OpenStack计算和OpenStack对象存储。OpenStack计算是提供和管理大型虚拟私有服务器集团的软件。利用Eventlet 和Twisted架构把它写入Python,并遵照高级消息列队协议 (AMQP)的标准和SQLAlchemy访问数据存储。它从NASA的Nebula云平台和Rackspace的云文档平台中融合编码。对象存储是利用集群服务器创建多余、可扩展的目标存储来存储大量数据的软件。如果你选择了OpenStack,就会运行NASA使用的相同的软件和惠普及Rackspace提供的云服务;其他供应商也开始提供OpenStack,比如Piston云计算等。
虽然OpenStack 想使企业组织部署大规模标准硬件上运行的私有云和公共云变为可能,但这需要有合格的技术操作团队,他们要拥有把物理硬件转化为大型云部署的能力。这不是普通企业要考虑的因素。
说到安全性问题,普遍来说开源项目有良好的跟踪记录,但是他们也有漏洞和脆弱性,OpenStack仍是新兴的。人们可以选择Eucalyptus架构来代替,它执行亚马逊EC2计算云的API堆栈,这个堆栈使集群服务器仿效亚马逊内部所做的事,但是要在私有云中进行。Eucalyptus问世的时间比OpenStack长,但不是完全的开源。这也许就是Ubuntu社区决定未来发布的Ubuntu服务器要支持OpenStack的原因之一。
至于OpenStack或Eucalyptus是否会取得成功并且长存下去,谁也说不好,但是当前似乎OpenStack势头更猛。