ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

OpenStack菜鸟笔记:溯源篇

2021-05-02 11:52:41  阅读:205  来源: 互联网

标签:Eucalyptus 项目 菜鸟 Nova 开源 NASA OpenStack 溯源


OpenStack是一个定位于IaaS(Infrastructure as a Service),旨在为公共及私有云的建设与管理提供软件的开源项目。自2010年发布的第一个A版本,就按照英文字母排序的规律进行版本发布,截至目前已经发布了12个主要版本,现在稳定为每6个月发布一次大的版本更新。


在搜索OpenStack时,会在各种百科中出现这样一个解释:OpenStack是一个美国国家航空航天局(NASA)和Rackspace合作研发的开源云端运算‎软件。“NASA”、“Rackspace”、“开源”这些组合的出现让笔者顿时对OpenStack的历史产生了浓厚的兴趣。所以准备在学习OpenStack之前先发扬八卦精神,码一码他们之间的关系,也让枯燥的学习生活增加一丝乐趣(以下内容均来自互联网搜集整理,如有雷同,请原谅我的copy)。



项目起源


时间回到2010年,当时的云计算场景是这样的,亚马逊的AWS稳坐大当家的地位,Ubuntu选择了Eucalyptus,Redhat放弃Xen选择了kvm(直接集成在Linux内核中)。在IaaS方面有这么几家:Cloudstack(双license)、Eucalyptus(双license)、Nebula(NASA的云平台)、Rackspace Cloud service。


当时NASA已经在云计算领域投入了大量的资金,使用了很多Eucalyptus的代码。他们在该平台上进行了很多深度开发,最后放弃了该平台,据说是NASA的工程师试图获取更多的Eucalyptus 代码,但是失败了,因为这个平台只是开放部分的源码。最初的问题仅仅是扩展性问题,这也是大部分产品最初都会遇到的问题,但是Eucalyptu与NASA的裂痕发展到无法挽回的地步,却是因为NASA发现Eucalyptus不愿向该项目提供解决扩展性问题的代码,即便是该项目并未与Eucalyptus Systems Inc(Eucalyptus幕后的实体公司)造成利益冲突。Eucalyptus幕后公司维护着部分代码,这些代码关系到商业版Eucalyptus Enterprise Edition(E3)的诸多特性,例如管理、SAN集成、更为出色的后台数据库以及与VMware的兼容性,这些功能对公司而言,既不可能也不愿意开源。索性NASA的工程师就用Python开发了Nova,在2010年4月开始筹备OpenStack。2010年7月NASA贡献了自己的云计算管理平台Nova代码,联合了当时第二大云计算厂商Rackspace(贡献了对象存储代码,也就是后来的Swift)发起了OpenStack开源项目。


从此开始便开启了OpenStack的开源进程。当时在OpenStack项目上约定了几个原则:


✔ 项目全部由Python语言开发;

✔ 虚拟机默认使用Kvm;

✔ 项目进行松耦合设计;

✔ 使用GitHub进行代码管理;

✔ 使用Launchpad进行项目管理;

 ◆ 3个月迭代一个版本(后来改为6个月)

 ◆ 举办开发峰会

✔ 产业链条设计(更多公司的加入,让开源项目更为蓬勃的发展)



版本演进


图片

在OpenStack中最重要三个部分:控制、计算、网络。从这个版本演进的表格中可以看到,这里面项目的变化情况一直在遵循着某些规律,可以归纳出一些特点。


◆ 松耦合的设计思路贯穿始终。从刚开始的Nova+Swift,慢慢对Nova进行松耦合处理。D版本中Keystore项目的建立,让Swift和Nova有了联系;F版本中Cinder和Quantum成为core项目,希望逐步代替Nova volume和Nova network;I版本增加的Trove数据库服务,Bare Metal(Ironic)。这种松耦合模式让OpenStack更加灵活,并且可以让多厂商进行开发,也保证了OpenStack作为开源项目能够得到支持从而很快发展。

◆ 网络功能优化越来越成为重点。网络功能的加入源自第二个版本,最初作为Nova项目的一个功能Nova network,仅支持所有用户共享一个底层网络,也就是所说的扁平化网络。然而Nova network网络功能不尽如人意。D版本Cisco推动Quantum项目,Quantum逐渐从摆设慢慢壮大到和Nova network抗衡直至逐渐成为OpenStack的标配。随着Quantum改名Neutron,Neutron+Linux bridge、Neutron+OVS、OVS硬件化,让网络能力逐渐丰富和提升。SDN和NFV技术的强力接入,也为OpenStack的网络性能增加了强劲动力。下面把OpenStack中网络功能的演进进行了一番归纳。

图片

◆ 容器技术的强势加入。从OpenStack诞生之日起,Kvm由于其原生于Linux内核的高性能将老牌Xen挡在门外,不过Docker技术的盛行,Kvm和Docker又面临着新的战斗,并且Nova Docker、Heat Docker、Magnum技术让OpenStack和Docker更好结合进行试验,最新的Kuryr项目让Docker网络功能更加优秀。

本文通过对OpenStack演进过程的归纳,可以从大的范畴上看到OpenStack在演进过程中的一些特征,后续将对OpenStack的详细技术细节进行阐述。


标签:Eucalyptus,项目,菜鸟,Nova,开源,NASA,OpenStack,溯源
来源: https://blog.51cto.com/u_15127593/2749932

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有