openstack云计算平台架构简介

服务框架

openstack的服务框架是基于面向服务(SOA)的自动化服务管理架构,系统由多个不同的服务组件组成,每个服务组件提供一个专门的服务功能,通过API接口进行各服务组件的调用。

完整的OpenStack架构应包括控制节点计算节点网络节点存储节点,其中,控制节点控制其余节点完成虚拟机建立、迁移、网络分配和存储分配等工作;计算节点主要负责虚拟机的运行;网络节点主要负责内外网络通信;存储节点主要为云主机提供额外的存储空间。

服务组件

openstack架构服务组件主要包括keystonecinderneutronnovaglancehorizon,各个组件互相独立,可单独部署在不同的节点,也可统一部署在相同节点。

以下为各个组件的调用关系图:

请输入图片描述

组件功能

  • keystone

    认证管理服务,对OpenStack所有组件的认证信息或令牌进行管理,包括服务授权、服务认证、令牌的创建、修改等,由上图中可以看出,nova、neutron、cinder、glance、horizon服务组件的调用都需要经过keyston进行认证授权;

  • neutron

    网络管理服务,对网络节点的网络拓扑进行管理,neutron由neutron-server、neutron-plugins、neutron-agent组成,各组件通过消息队列MQ进行通信,通过数据库DB进行数据存储;

  • glance

    镜像管理服务,对虚拟机部署时所能提供的镜像的进行管理,包括镜像的导入、格式、以及制作相应的模板,由glance-api、glance-registry、image store组成,DB负责镜像存储;

  • horizon

    控制台服务,提供了以Web形式对所有节点的所有服务的管理,通常将该服务称为DashBoard,用户登录时需要进行认证,认证成功后向nova计算服务发出请求,nova进行各个服务组件的进一步调用,即进行网络、存储、镜像、计算等资源调度;

  • nova

    计算管理服务,提供对计算节点的Nova的管理,使用Nova-API接受服务请求并进行资源调度,消息队列服务各个服务组件之间的通信,DB进行资源存储;

    更多openstack搭建教程请关注博主往期发表的文章

    https://www.mamao.cloud/index.php/archives/7/
    https://www.mamao.cloud/index.php/archives/27/

以上教程搭建说明:

  • 控制节点

    控制节点由管理支持服务和基础管理服务组成,以下分别对控制节点的管理支持服务和基础管理服务进行介绍。

    支持服务

    管理支持服务主要包括数据库(Mariadb)、消息队列(Rabbitmq)、密钥存储服务(Memcached)和时间同步服务(Etcd),功能分别如下:

    (1)数据库对OpenStack云计算平台的数据进行存储,其存储内容包括包括基础服务和扩展服务产生的数据;

    (2)OpenStack各服务组件的消息通信都是通过消息队列(也称消息中间件)进行实现;

    (3)Memcached用来缓存平台身份验证服务所产生的令牌;

    (4)时间同步服务(Etcd)则用来保持服务器集群时间同步。

    基础管理服务

    基础管理服务主要包括Nova 、Keystone、Neutron、Glance、Horizon,各服务组件相互独立,可以根据用户的云需求协同工作,各组件功能如下

  • 计算节点

    计算节点架构包含基础服务和扩展服务。

    基础服务

    基础服务包括Nova和Neutron,Nova和Netron功能简要概括如下:

    (1)Nova:为平台云主机的创建、运行、迁移、快照等提供服务并通过nova-API与控制节点对接,接收控制节点下发的任务;

    (2)Neutron:提供计算节点与网络节点之间的通信服务;

    扩展服务

    Telmeter:Telmeter是Centimeter的代理服务作为计算节点的监控代理将虚拟机的情况反馈给控制节点。

  • 网络节点和存储节点架构

    网络节点和存储节点功能相比控制节点和计算节点较少,可以单独部署也可在控制节点进行部署,下面将对网络节点和控制节点进行介绍:

    网络节点

    网络节点仅包含Neutron服务,其功能包括:
    (1)管理平台业务网络、管理网络、外部网络等网络之间的通信;
    (2)管理云主机的通信和网络拓扑;
    (3)管理虚拟机之上的防火墙;

    存储节点

    存储节点服务包含Cinder,Swift等服务,Cinder和Swift功能如下:
    (1)Cinder:块存储服务,提供相应的块存储,在云主机空间不足的情况下可进行空间扩容;
    (2)Swift:对象存储服务,提供相应的对象存储;

    更多学习资料,可关注微信公众号“布丁分享园进行获取”,公众号将不定期进行内容更新。

    请输入图片描述

最后编辑:2020年11月19日 ©著作权归作者所有

发表评论

正在加载 Emoji