OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含仪表板界面示例)

前言

​ 看了网上的一些博客对OpenStack架构的描述,大部分都是将官网的架构图截取下来(仍是纯英文文字描述的图片)或者直接将描述翻译为中文直接复制粘贴过来了。若是对于初学者而言,这或许是有字天书了。因此笔者先前的一篇文章是介绍了关于OpenStack的基础知识和核心的组件服务。而本文先从OpenStack部署的节点结构描述,再来对其总体架构进行阐述。linux

1、OpenStack节点类型

​ 在介绍OpenStack的节点类型以前咱们先对OpenStack作一些知识补充。web

​ OpenStack是适用于全部类型云的开源云计算平台,其目标是易于实现,可大规模扩展且功能丰富。数据库

​ OpenStack是经过一组互相关联的服务组件提供IaaS(基础设施即 服务)解决方案。咱们在实验环境或生产环境中部署OpenStack实践以前,都须要对其各类类型的节点及对应安装的服务有所了解。后端

​ OpenStack的节点类型有如下四个类型:浏览器

  1. 控制节点;
  2. 网络节点:
  3. 计算节点;
  4. 存储节点;

下面咱们对这四个节点类型注意介绍。安全

1.1 OpenStack的控制节点

​ 控制节点包括了管理支持服务、基础管理服务和扩展管理服务。服务器

1.1.1管理支持服务(底层)

​ 相对于OpenStack而言,该服务属于底层的一些软件安装,用于给相关的组件提供服务。例如安装数据库软件、消息队列软件、Memorycache和Etcd等。网络

1.1.2基础管理服务(核心)

​ 该服务主要安装了一些核心的服务,例如Kystone、Glance、Nova,也能够安装Neutron和Horizon服务。用于提供用户基础的控制与管理。架构

1.1.3扩展管理服务(可选)

​ 扩展管理服务是可选的一些组件的安装,例如存储管理,数据库服务等。包括Cinder、Swift、Trove、Heat和Ceilometer主要的可选服务。框架

​ 此外,控制节点通常来讲须要经过网络端口实现同各个节点之间的通讯或者管理。

1.2 OpenStack的网络节点

网络节点有且仅有Neutron服务,就是网络服务。

Neutron主要负责管理私有网段和公有网段之间的通讯,同时管理虚拟机网络之间的通讯以及防火墙等等。

通常在部署时会部署两个以上的网络端口,分别用于与控制节点通讯、同计算/存储节点通讯、用于外部的虚拟机与相应的网络之间的通讯。

1.3 OpenStack的计算节点

计算节点主要包含计算服务、网络服务以及监控服务。基础服务是前两个,监控能够扩展选择。

1.4 OpenStack的存储节点

​ 存储包含的是块存储以及对象存储。这二者虽然都是存储,可是本质上有着巨大的不一样。

​ 块存储至关于虚拟出的一块磁盘,能够挂载在对应的虚拟机上,不会受到文件系统的影响,通常是用于虚拟机空间不足时扩容场景;而对象存储,本质上是虚拟出一块磁盘空间,能够存储文件,但不能进行格式化或转换文件系统,通常用于云磁盘/文件。

​关于相关组件的部署与节点类型的对应关系能够参考下图(暂时不包括存储):

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

​这幅组件部署结构图,或者说部署架构图是很是经典的,当在后面咱们详细对OpenStack中核心项目详细介绍以后回顾这张图的时候,可能会有别样的感觉。

2、OpenStack的总体架构

​ 当咱们对实验环境或者生产环境中部署OpenStack的节点类型有所了解的前提下,咱们来从两个方面简要说明一下OpenStack的总体架构,该架构是从官方文档中截取,主要从概念和逻辑两个方面进行划分。

​ 固然咱们仍是要遵循官方文档的相关资料,不过这里笔者将对整个内容稍做详细的讲述,毕竟本文是对一些有网络,群集和linux操做系统基础而又想入门OpenStack的人群提供较为细致的描述与介绍。

2.1概念架构

​ 以下图,显示的是OpenStack服务之间的关系。笔者将其称之为OpenStack总体概念图。它很好的显示了OpenStack的典型项目,而且将各个服务联系起来。虽然未必一开始就能彻底弄懂,可是咱们能够经过此图从总体上对OpenStack的概念有进一步的理解。

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

​ 那么咱们如何看这幅概念架构图呢?

​ 嗯,能够花几分钟本身先大体看一下这个架构图,结合上篇文章的内容看看有多少是有些印象的。而后去搜索一下相关的介绍,笔者起初也是经过Google浏览器去到官网看官方文档,而后发现不是很是容易理解,而后就去找资料,听听课等等,从网上找的博客文章呢,大多都是截取官网的图片和复制了官方的简要说明。若是你懒得去动手搜索,那就听听笔者的理解吧。固然笔者能力有限,若有纰漏之处但愿您在下方留言指正。

​ 笔者将上图作一下标记,方便介绍,请参照下图:

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

​ 首先,总体上来看,咱们比较熟悉的应该是上图中的加色部分,咱们称之为OpenStack的各类项目,也对应着各类服务;下面的表述中能够将服务和项目认为是同一种意思。

​ 那么咱们先看中间的红色部分,VMs表示的是虚拟机实例,若是你们玩过或体验过阿里云的一些服务就对此有必定理解了。其实对于OpenStack而言,虚拟机实例就是为客户提供虚拟的服务,包括CPU、内存、带宽、存储等等资源。而这些实例须要由OpenStack各个服务的支持,也包括对其提供相对应的资源和对其进行管理操做。

​ 其次咱们看红色方框,这里的服务有一个共同特色——全局性。例如:Keystone,我知道该服务是提供认证的,而须要认证的地方(服务)也是很是多的,Ceilometer服务提供的监控和Horizon服务提供的可视化界面操做管理也是一个道理。而之因此将这三个服务与下面的Swift服务(对象存储)标注同一色块,是由于该四个组件服务相对绿色块而言没有那么核心。固然这里只是笔者的理解,其实上图给出的各类组件服务都是常见经常使用的,你们仍是要多多了解。

​ 其次咱们来看紫色方框,这里除了先前讲述的虚拟机实例和对象存储服务,还有四个(绿色块)最为核心的项目,以及其余四个项目。

​ 核心的项目介绍:Glance提供镜像,Nova提供计算服务(例如能够经过Nova进行数据处理实例等),Neutron提供网络服务(各个节点通讯,内外网之间通讯以及与内部组件之间的通讯(有对应的API接口)),Cinder提供的就是存储,至关于一个磁盘。

​ 剩下的四个项目介绍:

​ Ironic项目,裸金属,还记得上篇文章中咱们提到的Bare Metal吗?其实裸金属项目是OpenStack的一个比较特别的项目,是针对一些特殊的场景建立的,主要是为了指定在一台或多台裸机上执行操做,例如部署大数据集群时同时部署多台物理机的场景,Ironic即可以实现硬件基础设施资源的快速交付。

​ 另外,在一些特殊的应用场景下,用户须要直接使用物理服务器资源来知足特定需求的可行性和高效性,所以这也是OpenStack支持该项目的缘由之一。

​ Trove项目,是OpenStack提供的数据库即服务的项目。主要是为了使用户可以快速轻松地利用关系数据库的功能,而无需承担处理复杂管理任务的负担。云用户和数据库管理员能够根据须要配置和管理多个数据库实例。

​ Heat项目,是OpenStack提供的编排服务,用于经过运行OpenStack API调用来生成正在运行的云应用程序,描述云应用程序。使用模板,能够建立大多数OpenStack资源类型,例如实例,浮动IP,卷,安全组和用户。它还提供了高级功能,例如实例高可用性,实例自动缩放和嵌套堆栈。这使OpenStack核心项目可以得到更大的用户群。

​ Sahara项目,是OpenStack提供的数据处理服务,主要是为用户提供一种简单的方法来在OpenStack上预配数据处理框架(例如Hadoop,Spark和Storm)。这能够经过指定配置参数(例如框架版本,群集拓扑,节点硬件详细信息等)来完成。

​ 固然这里主要是对上面的一些项目对应的功能和已经两两之间的关联进行了简单介绍,主要是要对其中的服务之间的联系有所了解,也就是要对黑色的英文单词与短语翻译理解,从而了解各个服务项目之间的联系。

​ 若是对上图的英文不太熟悉或者仍是以为仍是比较抽象的话,能够参考下面的简化以后的架构(其实该图本质上是认证服务的典型结构图,这里主要是由于中文友好,易于理解,包含了组件和对应的项目,给你们的直观感受好些。关于Keystone以及其余核心项目服务会持续进行介绍),可能方便你们从总体上对OpenStack核心内容及架构进行理解。

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

​ 以上就是笔者对官方给出的OpenStack概念架构的介绍。其中涉及的重要组件服务在以后会逐一作更加细致的介绍。

​ 下面咱们来看看官方给出的逻辑架构图。

2.2逻辑架构

​ 下面咱们来谈谈OpenStack的逻辑架构,官方给出的逻辑架构(常见架构但并不惟一)以下图所示:

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

​ 从上图咱们能够发现与概念架构的相同之处就是相对应的组件服务仍是在的,不过区别也很是明显,逻辑架构有了直观的内外网的区分,而且将各个组件服务用虚线框隔开,每一个框内包含对应组件服务的一些存储,功能模块和API调用接口等,而又将各个组件之间用实现链接,表示出各个组件服务之间的逻辑关系。

​ 不过如果详细讲述该逻辑架构委实枯燥,或许仍然会以为复杂而抽象,而且笔者前面也说了这也是官方给出的常见架构,并不惟一。下面是简化版本的逻辑架构图和介绍。

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

​ 用户或管理者能够经过网络来使用或管理OpenStack云平台系统,主要有上图给出的三种方法:命令行接口(对应的相关组件接口的调用)、云管理工具如Rightscale和Enstratius等等、图形化界面工具如Dashboard、Cyberduck等等。笔者使用过OpenStack提供的组件Dashboard,Horizon项目提供的Web图形化界面工具来建立、管理该云平台。若是有使用过阿里云相关服务的经验,就更加好理解了。本文最后会给出笔者先前在笔记本的虚拟机上搭建部署的多节点的OpenStack云平台在本地登陆的Web界面图。

​ 而在OpenStack内部,每一个组件服务都有本身的逻辑架构,通常由功能模块、数据库或对应后端以及和其余组件进行交互的API接口,这些接口则是经过消息队列来实现通讯的,某些专业术语和名词以后也会整理出来。

​ 所以,理解OpenStack的逻辑架构能够从总体到局部再到个体来理解。

3、OpenStack仪表板图示

​ 下面演示如下如何登陆OpenStack管理使用界面,即Horizon项目提供的仪表板UI界面。

一、首先网页中输入本地控制节点ip地址,进入OpenStack仪表板登陆界面

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

二、查询登陆用户名和密码(这里做为管理员登陆)

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

三、对照上图登陆便可进入仪表板web管理界面

OpenStack入门——理论篇(二):OpenStack的节点类型和架构(含登陆的仪表板界面示例)

4、总结

​ 本文主要介绍了OpenStack的架构,从概念和逻辑两个方面进行简要阐述,最后给出笔者部署OpenStack时由Horizon项目提供的Web界面示例图。

相关文章
相关标签/搜索