重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
OpenStack对于初学者而言,本身就是一个比较大的挑战,其内容繁多,且迭代更新周期较短,从官方网站可以看出目前最新发行的版本为Train版本(2019年10月发布,一般每6个月为一次版本更新,而版本更新将意味着某些先前的版本将不再支持使用),或者一般我们称之为T版本。下图为OpenStack官方的logo图标,感觉看上去非常简洁明了。
建昌网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站建设等网站项目制作,到程序开发,运营维护。创新互联建站于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
OpenStack不断地更新,优化,这说明云计算还在不断地发展,走向成熟,而OpenStack作为云计算的产物也必定会跟随着时代技术的发展而发展。这也是哲学生活中事物发展的客观规律。
那么今天我们就来揭开OpenStack的神秘面纱,通过本文你可以了解到关于OpenStack的以下几个方面:
还记得之前笔者在谈到对云计算的理解时说过,云计算的概念是在2006年提出的,而OpenStack则是云计算的产物之一。OpenStack起源于云计算,它的发展可谓是日新月异,非常迅速。而且对于云计算而言,它的存在与发展对云计算领域也有着很大的影响力,这也使得OpenStack项目成为业内所有人不得不关注的焦点。
OpenStack项目早在2010年就成立了,大家可能觉得很久远了,但是OpenStack所经历的风雨,所积淀的时间,换来的是一次次优化,一个个项目的孵化成功以及一系列版本的更新。
短短10年岁月,那时我们大部分人可能根本不知道什么是OpenStack,甚至连云计算是个什么鬼都不了解,而云计算的发展,OpenStack的更新却从未停滞。OpenStack从A版本发展到如今的T版本,加入研究的企业与爱好者,使用者,消费者越来越庞大,这也说明OpenStack作为云计算的产物在云计算领域有着一席之地。
那么究竟什么是OpenStack呢?下面我们来简要讲述OpenStack的概念。
先前笔者在前面的文章中谈到云计算的时候,简要介绍过云计算有三种云服务模式,而第一种,即IaaS(基础设施即服务)是目前云服务商提供最多的云服务。而OpenStack是其最为典型的例子,非常符合该类型云服务的特点。
查阅官方网站的资料,其对OpenStack的定义如下:
阅读完该内容我们可以初步了解这些内容:
由此可知,简单来讲OpenStack就是一个控制计算、网络和存储资源的分布式云操作系统。我们也可以将其当成一个云平台,可以在之上部署第三方服务和使用OpenStack内置工具。下图就是官方给出的对OpenStack的介绍图。
通过上图,我们可以了解到OpenStack可以裸机部署、可以创建虚拟机实例、也可以结合容器。在OpenStack平台上我们不仅可以使用内置的工具(OpenStack开发包、web界面)开发或管理我们的OpenStack平台(私有云),而且我们可以部署企业所需要的第三方服务如kubernetes、CloudFoundry、Terraform等等。
我们看一下官方给出的OpenStack的整体格局,如下图所示:
有些读者可能觉得OpenStack很复杂,想的没错,笔者也这样认为,呵呵~~。不过该图是会定期更新的。
我们可以发现上图给出的相关内容单词的粗浅程度是不一样的,笔者认为这可能是一种出于人性化的考虑,加粗的一般而言是比较核心主要的,未加粗的相对而言未必是核心,而是根据自己的需要进行获取安装。而这些就是组成整个OpenStack的细化分支。而当我们继续往下阅读时,会发现官网提供了相关的doc文档开发包以及相关工具。文档主要是为了介绍和如何使用这些构成OpenStack的相关内容。我们将这些组成部分称作各种组件,每一种组件有与之对应的项目。
在对这些组件介绍之前,我们先整体了解一下OpenStack的概览图。
先来看最右边的,OpenStack-operations,它包含着有助于操作OpenStack的附加组件。
接着看底部,OpenStack-lifecyclemanagement,这显示了可用于促进OpenStack的安装和生命周期管理的各种解决方案。
然后是左边,OpenStack-user,显然这是使用者,即用户。这里包含了工具,管理员可以安装这些工具。而OpenStack-adjacentenablers包含的是帮助其他技术堆栈来利用OpenStack服务的工具。
最后就是中间,OpenStack的核心内容,包括相关组件和与之对应的项目。
如果对这个概览不明白没没什么关系,对应OpenStack的理解主要还是在概念和其核心内容。下面我们将简要概述一下OpenStack的核心组件。
其实,根据上面的概图,我们大致也知道了有关OpenStack的一些核心部分。考虑到是入门理论,在这里我就简单地概述罗列一下,可能对面试还是有些用处的。当然,OpenStack包含的组件非常多,而且还在不断更新和完善。其实诸多组件的诞生都是先在孵化项目中,成熟之后才会在新的版本中测试发布。
所以,这里就总结一下比较重要的组件。如果有更大的兴趣和需求也可以阅读官网的英文文档,本文就不做太多内容的介绍了。
组件 | 项目 | 项目说明 |
---|---|---|
Compute(计算服务) | Nova | 实施服务和关联的库,以提供对可计算资源(包括裸机,虚拟机和容器)的大规模可扩展的按需自助服务访问 |
Identity Service(认证服务) | Keystone | 提供API客户端身份验证,服务发现和分布式多租户授权 |
Image Service(镜像服务) | Glance | 发现,注册和检索虚拟机映像。Glance具有一个RESTful API,该API允许查询VM映像元数据以及检索实际映像。通过Glance提供的VM映像可以存储在从简单文件系统到对象存储系统(例如OpenStack Swift项目)的各种位置。 |
Networking(网络服务) | Neutron | SDN网络项目,在虚拟计算环境中交付网络即服务 |
Dashboard(仪表板) | Horizon | 为OpenStack服务提供基于Web的用户界面 |
Block Storage(块存储) | Cinder | 虚拟化了块存储设备的管理,并为最终用户提供了自助服务API,以请求和使用这些资源,而无需了解其存储实际部署在何处或在哪种类型的设备上。 |
Object Storage(对象存储) | Swift | 高度可用的,分布式的,最终一致的对象存储。组织可以使用Swift来高效、安全和廉价地存储大量数据。 |
Telemetry(计量服务) | Ceilometer | 有效收集,规范化和转换OpenStack服务产生的数据 |
Orchestration(编排服务) | Heat | 基于文本文件形式的模板,为云应用程序协调基础结构资源,可以将其视为代码 |
Database Service(数据库服务) | Trove | 一个数据库即服务供应关系和非关系数据库引擎 |
Data Processing(数据处理) | Sahara | 为用户提供一种简单的方法来在OpenStack上预配数据处理框架(例如Hadoop,Spark和Storm) |
在之后的文章中会对其中的最为核心的组件做详细介绍。
本文基于云计算的基础上,讲述了OpenStack相关概念。本文旨在为了给OpenStack的初学者一个对OpenStack的初步认知,知道什么是OpenStack是什么,了解大致的格局结构以及记住上述的一些重要组件服务和项目,并且对这些项目的作用和说明有一定了解。