志在指尖
用双手敲打未来

openstack架构详解图

openstack架构详解图

1、OpenStack架构
学习Openstack的部署和运维之前,应当了解其架构和运转机制,OpenStack作为开源、可扩展、赋有弹性的云操作系统,其规划基本原则如下:
■按照不同的功用和通用性区别不同项目,拆分子系统
解读:按照不同功用区别不同服务,将一个全体功用拆分成各个子功用,并且服务之间互相隔绝,只通过API作为共同交互进口互相对接,便当处理,排障
■按照逻辑方案、规范子系统之间的通讯
解读:API之间进行交互会有特定/通用的办法,之间互相隔绝,各个子功用模块之间只会通过一个公共的api进行交互/通讯,对不同组件之间的通讯办法进行规范,各个子功用模块遵照一些规范进行通讯(API、HTTP)
■通过分层规划整个系统架构
解读:
分层(以架构为单位),三层:
●全局组件
●辅佐组件
●中心组件
以单个中心服务/组件进行分层(各组件内部):
●API(进行预处理)
定位:表里(相对)共同的交互进口(集中化处理办法)
长处:便于集成,便当处理,集中化
◆向keystone进行央求认证央求的合法性和权限
◆下发任务,会依据央求的功用需求,将不同的任务交给不同的组件来完结,共同收集成果和需求供应的资源,整合在一起,照应央求
●子功用模块(实行具体的功用处理)
●其他(rabbitmq,承载了OpenStack组件内部通讯/数据交互/传输的消息署理)
注:消息署理
各组件内部,各子功用模块之间通讯都可以通过消息队伍/署理(rabbitmq)进行通讯
作为组件和组件通讯/交互/数据传输的载体
■不同的功用子系统间供应共同的API接口
解读:
各组件之间通过共同的API接口进行交互/通讯/数据传输/调用
2、OpenStack概念架构图
解析架构图:
以架构维度分为全局组件,中心组件,辅佐组件
■全局组件
Keystone
处理全局认证和授权的组件
Ceilometer
监控集群的情况,监控集群虚拟机的运用量
Horizon
控制台可以控制OpenStack架构内部的全部功用
■辅佐组件
Ironic裸金属
处理和控制根底硬件资源
Trove处理数据库的服务
处理联络型数据库和非联络型数据库,可以存储虚拟机和各组件调用的数据,以及各种日志
Heat和Sahara
做数据的分析,编列和处理,精细化的处理
■中心组件(为虚拟机/实例供应服务)
Glance
供应发现、注册和下载的镜像服务,虚拟机镜像的集中式库房
通过虚拟机镜像创建虚拟机,对镜像进行精细化处理,供应处理镜像的服务(快照),修正镜像的元数据
Neutron
完结实例与实例之间以及实例与外部网络之间的通讯
Cinder
供应对Volume从创建到删去整个生命周期的处理
swift
运用一般硬件来构建冗余的、可扩展的分布式方针存储集群,存储容量可达PB级
Swift属于方针存储,用于永久类型的静态数据的长时间存储(如虚拟机镜像、图片存储、邮件存储和存档备份)
Nova
担任虚拟机实例的生命周期处理、网络处理、存储卷处理、用户处理以及其他的相关云平台处理功用,支撑虚拟机中心资源的横向扩展,支撑虚拟机数量的横向扩展(将资源供应给虚拟机)
总结:
云平台用户在通过Keystone服务认证授权后,通过Horizon或者ResetAPI模式创建虚拟机服务,创建进程中包含运用Nova服务创建虚拟机实例,虚拟机实例采用Glance供应镜像服务,然后运用Neutron为新建的虚拟机分配IP地址,并将其归入虚拟网络中,之后在通过Cinder创建的卷为虚拟机挂载存储块,整个进程都在Ceilometer模块资源的监控下,Cinder产生的卷(Volume)和Glance供应的镜像(Image)可以通过Swift的方针存储机制进行保存
3、OpenStack逻辑架构图
注:首要介绍了OpenStack内部各组件的通讯/对接办法
组件与组件之间的通讯
组件内部,子功用模块之间的通讯
■OpenStack包含若干个称为OpenStack服务的独立组件。全部服务均可通过一个公共身份服务进行身份验证。除了那些需求处理权限的命令,每个服务之间均可通过公共API/HTTP办法进行交互
例:
httpd承载API,HTTPD供应了一个展现web页面的办法,并且表明是以HTTP进行通讯
解读:
以架构的维度来了解
openstack分为多个中心组件,中心组件之间仅通过一个公共的API进行对接/通讯,一起每个中心组件,都由一个对应的用户进行处理(会对用户进行授权)
■每个OpenStack服务又由若干组件组成。包含多个进程。全部服务至少有一个API进程,用于侦听API央求,对这些央求进行预处理,并将它们传送到该服务的其他组件。除了认证服务,实际工作都是由具体的进程完结的
■至于一个服务的进程之间通讯,则运用AMQP消息署理。服务的情况存储在数据库中
解读:为什么用消息署理
因为OpenStack服务架构非常复杂,巨大,需求处理的数据量非常的多,对消息传递的速率和功率及合理性会有一个比较严格的区别,所以需求运用队伍,AMQP消息署理去作为中心的承载,而这个承载的服务便是rabbitmq
总结:
■首先展现了内部中心组件、辅佐组件、全局组件(哪些组件,各组件的功用)
■各中心/辅佐组件之间是怎样对接的(API进行对接,通讯的办法可以为消息署理)
■展现了各组件中,一部分中心的功用模块(各组件内部分层),以及单个功用模块之间怎么通讯
●API:表里交互的进口
●子功用模块:实行具体功用处理
●消息署理:(承载数据,进行传输)
■展现OpenStack原生架构(根底,没有展现第三方的功用模块)
注:第三方功用模块
●辅佐原生架构的组件可以更完善更合理的运转
●添加一些功用(原生架构没有或者不完善的-特定场景)

openstack
4、OpenStack组件通讯联络
■根据AMQP协议的通讯
●用于每个项目内部各个组件之间的通讯
■根据SQL的通讯
●用于各个项目内部的通讯
■根据HTTP协议进行通讯
●通过各项目的API树立的通讯联络,API都是RESTfulWebAPI
解读:
◆restful
是一种交互/通讯的规范,总是以HTTPS安全的办法进行对接的
◆为什么是web
由apache承载了API,并且供应了一个web展现页面,通过网页URL或者网址途径的办法,因为是点到点的对接
◆为什么是apache
首要是因为OpenStack和apache都是一种模块化的规划,适应性会更好
◆API
组件和组件对接的技术(点到点)
■通过NativeAPI完结通讯
●OpenStack各组件和第三方软硬件之间的通讯
5、OpenStack物理架构图
解读:
按照功用区别
■控制节点:掌控全局,分发任务,首要处理其他节点,可以跑实例资源(处理具体任务)
●处理网络:是通过网卡的功用进行区别,处理其他节点
●Neutron:集中化处理
■网络节点:供应了OpenStack内部各组件之间的通讯
●Neutron:具体完结网络资源和网络功用
●处理网络:接受控制节点的任务调度/央求,并且将数据返回
●数据网络:数据库服务,数据存储,数据对接,相关和同步,和核算节点中的数据网络进行相关
●外部网络:担任和第三方组件进行对接,相关和集成
■核算节点:担任具体的实例创建,资源处理,精细化的具体操作
●NovaHypervisor:跑的具体实例
◆为什么放在核算节点
最大化节约资源和网络带宽,更为合理的调度运用资源
●网络插件署理:在OpenStack中,是通过插件和署理来完结网络二层、三层的具体功用
●CeilometerAgent:定向处理和监控并且计算资源,把资源计算给控制节点中的Ceilometer组件,核算出具体的资源运用量,并且按量收费
●数据网络:和数据库进行对接,把运用的资源量存储到数据库里面
●处理网络:接受控制节点的调度和处理
■存储节点:供应存储服务
Cinder:块存储,为实例供应耐久化存储,接受控制节点Nova组件的调度
Swift:方针存储,供应镜像存储
数据网络:把存储资源供应核算节点里的实例去运用
5.1、网络节点(NetworkNode)
通过插件和署理的办法完结网络功用以及通过服务供应的方针来区别的
■供应者网络(Providernetworks)
■自服务网络(Self-servicenetworks)
注:
网络节点一般需求3个网络端口,分别用于与控制节点进行通讯、与除控制节点之外的核算和存储节点之间的通讯、外部的虚拟机与相应网络之间的通讯
小结:
●openstack网络类型(以功用区别)有两种
◆第一个是内部网络,第二个是外部网络
●openstack的网络功用,是通过插件、署理的办法来完结
6、总结
Openstack首要便是分层和隔绝,掌握Openstack架构图能对Openstack有更好的了解

未经允许不得转载:IT技术网站 » openstack架构详解图
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载