1.Open Stack是什么?
OpenStack是一个开源的云计算管理平台项目
,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache许可证(Apache软件基金会发布的一个自由软件许可证)授权的开源代码项目。
OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
2.发展历程
Openstack项目虽然诞生时间不长,但其发展之迅速,在云计算领域的影响力扩展,使得这个年轻的项目成为业内所有人都不得不关注的焦点。
2010年 Openstack项目成立。该项目由美国国家航空航天局(NASA)和 Rackspace合作研发, Apache许可证开源目前为止共有以下版本:
(1) Austin——Openstack发布的第一个版本,这是第一个开源的云计算平台。
(2) Bexar——Openstack发布的第二个版本,添加了IPv6的支持、影像传递技术,以及Hyper-V和Xen等虚拟服务器功能。
(3) Catus——Openstack发布的第三个版本,添加了虚拟化功能、自动化功能以及一个服务目录。
(4) Diablo——Openstack发布的第四个版本,增加了新的图形化用户界面和统一身份识别管理系统。
(5) Essex——Openstack发布的第五个版本,完善了 Keystone
认证,删除了对 Windows Hyper-V支持的相关代码。
(6) Folsom——Openstack发布的第六个版本,在原有的五个子项目之外,又多增 Quantum和 Cinder
两项。 Quantun可以让Open Stack的IaS平台能采用软件定义网络( Software Defined network,SDN)的技术,如OpenFlow。Cinder则加强了区块( Block)与磁盘区( Volume)的储存能力。
(7)Grizly——2013年4月Open Stack基金会发布的第七个版本。 Grizzly新增近230个新功能,涉及计算、存储、网络和共享服务等方面。例如 Open Stack计算虚拟化-计算使用“Cells”管理分布式集群,使用“NoDB”主机架构,以减少对中央数据库的依赖。
(8) Havana——2013年10月 Open Stack基金会发布的第八个版本。Havana除了增加Open Stack Metering( Ceilometer)和 Open Stack Orchestration(Heat)两个新组件外,还完成了400多个特性计划,修补了3000多补丁。
(9) Icehouse——2014年4月 Open Stack基金会发布的第九个版本。新版本提高了项目的稳定性与成熟度,提升用户体验的一致性,特别是针对存储方面。联合身份验证将允许用户通过相同认证信息同时访问 Open Stack私有云与共有云。新项目 Trove( DB as a service)现在已经成为版本中的组成部分,它允许用户在 Open Stack环境中管理关系数据库服务。
(10)Juno——2014年10月 OpenStack基金会发布的第十个版本。新增包括围绕 Hadoop和 Spark集群管理和监控的自动化服务和支持软件开发、大数据分析和大规模应用架构在内的342个功能点,标志着 Open Stack正向大范围支持的成熟云平台快速前进。自 Openstack项目成立以来,超过200个公司加入了该项目,其中包括AT&T、AMD、 Cisco、Dell、IBM、 Intel、 Red hat等。目前参与 Openstack项目的开发人员有17000,来自139个国家,这一数字还在不断增长中。来自咨询机构 Forrester的分析表示, OpenStack已经逐步成为事实上( de facto)的基础架构云(IaaS)标准。
…
直今为止,已经发布到了X版本了!
3.工作流程
Open Stack的各个服务之间通过统一的REST风格的API调用,实现系统的松耦合。它内部组件的工作过程是一个有序的整体。诸如计算资源分配、控制调度、网络通信等都通过AMQP实现。 Open Stack的上层用户是程序员、一般用户和 Horizon界面等模块。这三者都是采用 Open Stack各个组件提供的API接口进行交互,而它们之间则是通过AMQP进行互相调用,它们共同利用底层的虚拟资源为上层用户和程序提供云计算服务。
4. 管理流程
OpenStack既然是一个开源的云平台项目,它的主要任务是给用户提供IaaS服务。
QEMU
QEMU是一个纯软件的计算机硬件仿真器。通过单独运行QEMU来模拟物理计算机,具有非常灵活和可移植的特点,利用它能够达到使用软件取代硬件的效果。
Libvirt
Libvirt是一个开源的、支持Linux下虚拟化工具的函数库。实质上它就是为构建虚拟化管理工具的API函数。Libvirt是为了能够更方便地管理平台虚拟化技术而设计的开放源代码的应用程序接口,它不仅提供了对虚拟化客户机的管理,也提供了对虚拟化网络和存储的管理。
5.核心项目
OpenStack覆盖了网络、虚拟化、操作系统、服务器等各个方面。它是一个正在开发中的云计算平台项目,根据成熟及重要程度的不同,被分解成核心项目、孵化项目,以及支持项目和相关项目。每个项目都有自己的委员会和项目技术主管,而且每个项目都不是一成不变的,孵化项目可以根据发展的成熟度和重要性,转变为核心项目。截止到Icehouse版本,下面列出了10个核心项目(即OpenStack服务)。
1、计算(Compute)
:Nova。一套控制器,用于为单个用户或使用群组管理虚拟机实例的整个生命周期,根据用户需求来提供虚拟服务。负责虚拟机创建、开机、关机、挂起、暂停、调整、迁移、重启、销毁等操作,配置CPU、内存等信息规格。自Austin版本集成到项目中。
2、对象存储(Object Storage)
:Swift。一套用于在大规模可扩展系统中通过内置冗余及高容错机制实现对象存储的系统,允许进行存储或者检索文件。可为Glance提供镜像存储,为Cinder提供卷备份服务。自Austin版本集成到项目中。
3、镜像服务(Image Service)
:Glance。一套虚拟机镜像查找及检索系统,支持多种虚拟机镜像格式(AKI、AMI、ARI、ISO、QCOW2、Raw、VDI、VHD、VMDK),有创建上传镜像、删除镜像、编辑镜像基本信息的功能。自Bexar版本集成到项目中。
4、身份服务(Identity Service)
:Keystone。为OpenStack其他服务提供身份验证、服务规则和服务令牌的功能,管理Domains、Projects、Users、Groups、Roles。自Essex版本集成到项目中。
5、网络&地址管理(Network)
:Neutron。提供云计算的网络虚拟化技术,为OpenStack其他服务提供网络连接服务。为用户提供接口,可以定义Network、Subnet、Router,配置DHCP、DNS、负载均衡、L3服务,网络支持GRE、VLAN。插件架构支持许多主流的网络厂家和技术,如OpenvSwitch。自Folsom版本集成到项目中。
6、块存储 (Block Storage)
:Cinder。为运行实例提供稳定的数据块存储服务,它的插件驱动架构有利于块设备的创建和管理,如创建卷、删除卷,在实例上挂载和卸载卷。自Folsom版本集成到项目中。
7、UI 界面 (Dashboard)
:Horizon。OpenStack中各种服务的Web管理门户,用于简化用户对服务的操作,例如:启动实例、分配IP地址、配置访问控制等。自Essex版本集成到项目中。
8、测量 (Metering)
:Ceilometer。像一个漏斗一样,能把OpenStack内部发生的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑。自Havana版本集成到项目中。
9、部署编排 (Orchestration)
:Heat。提供了一种通过模板定义的协同部署方式,实现云基础设施软件运行环境(计算、存储和网络资源)的自动化部署。自Havana版本集成到项目中。
10、数据库服务(Database Service)
:Trove。为用户在OpenStack的环境提供可扩展和可靠的关系和非关系数据库引擎服务。自Icehouse版本集成到项目中。
6.菜鸡说
Open Stack的存在是虚拟化巨头(KVM,Xen)竞争的产物,竞争时KVM支持的社区是Open Stack,而Xen支持的社区是Cloude Stack(现今社区活跃不高)。
在2006年8月9日,Google首席执行官埃里克·施密特(Eric Schmidt)在搜索引擎大会首次提出“云计算”(Cloud Computing)的概念。亚马逊Amazon以Web服务的形式向企业提供IT基础设施服务,包括弹性计算(EC2)、储存服务(S3)、数据库(SimpleDB)等。
2008年9月,阿里巴巴确定“云计算”和“大数据”战略,决定自主研发大规模分布式计算操作系统“飞天”,才开始研究云计算,两年的时间差,也让率先探索这片蛮荒之地的亚马逊(aws)具有天然的优势。
此后的几年中,计算机领域,发展迅速,各家产品发布频繁。
2010年7月,NASA贡献了云计算管理平台Nova代码,Rackspace云存储(对象存储)代码,发起了OpenStack开源项目。同年10月,发布了首个版本“Austin”。
至此,全球云计算行业进入了快发展赛道。此后,几年腾讯云,华为云等云计算厂商基于开源的Open Stack进行二次开发,开发创建了自己的云,国内的云计算行业就此进入了快速生长阶段,开启了百家争鸣的局面!
7.OpenStack的搭建
本次主要搭建的是基于Open Stack M版双节点,主要部署的步骤有:
(二)Open Stack(M)----Keystone安装和配置
(三)Open Stack(M)----Glance安装和配置
(四)Open Stack(M)----Nova服务安装与配置
(五)Open Stack(M)----Neutron服务安装与配置
(六)Open Stack(M)----Dashboard安装和配置
(七)Open Stack(M)---- Swift安装和配置
参考来源:
感谢指剑大佬发表的博客与视频!
同时也感谢所 爱大佬的支持!
感谢大家,点赞,收藏,关注,评论!