zoukankan      html  css  js  c++  java
  • openstack基础构架以及服务方式解析

    Rackspace是(美国航天局)和NASA(一家公司)共同发起的开源项目,他是一系列软件项目的组合。
    这些项目是松耦合的关系,可以进行独立的安装,启动和停止,只有在必要的时候才进行通信(优点:扩展性好,安全性高,缺点:安装和配置比较复杂)
    一:什么是openstack

    Rackspace是(美国航天局)和NASA(一家公司)共同发起的开源项目,他是一系列软件项目的组合。
    这些项目是松耦合的关系,可以进行独立的安装,启动和停止,只有在必要的时候才进行通信(优点:扩展性好,安全性高,缺点:安装和配置比较复杂)

    二:openstack的主要功能组件
    1:简介

    主要分为5个不同的层次16个不同功能模块:

    Presentation【表示层】:api模块,ui模块

    Logic(Control)【逻辑控制层】:Orchostration【编排服务】,Scheduling【调度服务】,Policy【策略服务】,Image Registry【镜像注册服务】,Logging【日志服务】

    Resource【资源管理层】:Compute【计算资源管理模块】,Volume【存储资源管理模块】,Network【网络资源管理模块】

    Integration【集成层】:Billing【计量模块】,Identity【身份认证模块】

    Mabagement【管理层】:Admin【管理api】,Monitoring【监测】

    子项目是怎样对接起来的:

    Horizon-UI服务:对应User Dashboard【云下服务给运维用户使用】和Customer Portal【给云上用户使用】

    Keystone-身份认证:对应Identity

    Nova-计算服务模块:Compute API,scheduling【调度服务】,policy【策略服务】和Compute【计算管理模块】以及部分Admin API

    Glance-镜像服务:Image Registry【镜像注册】,Image Registry【镜像API】

    Cinder【块存储】/swift【网络对象存储】-存储服务:volume【存储资源管理模块】

    Neutron-网络服务:Network【网络资源管理模块】

    Heat-编排组织服务:Orchostration【编排服务】

    Ceilometer-监控计量服务:Billing【计量模块】,,Monitoring【监测】

    2:Horizon-UI模块

    主要服务为openstack用户提供UI服务,也就是负责用户在管理控制台上的所有操作转化为后台API的调用。

    用户:云管理员【负责整个云平台的运营,资源管理和分配】,普通云用户【在配额范围内,自由操作,使用资源】

    云管理员界面:
    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

    3:Keystone-身份认证模块

    主要负责openstack中的身份认证和权限控制,

    User:即用户,代表可以通过keystone进行访问的人或者程序,User通过认证信息(如密码,api Key等)进行验证

    Tenant:即租户,它是各个服务中的一些可以访问的资源集合

    Role:即角色,代表一组用户可以访问资源的权限

    一家人【租户】租用了一百平米的房子【角色权限】那么这家人每个人【用户】的管理权限是不同的,父母比孩子的管理权限大。
    Service:即服务,如Nova,Glance,Swift。服务只有在keystone上进行注册才能被分配

    Endpoint:一个服务暴露出来的访问点,如果要访问一个服务,则必须要知道他的endpoint

    Token:访问资源的令牌,相当于钥匙

    keystone到底提供了什么服务:

    Identity服务:验证了身份验证凭证。

    Token服务:将会验证并管理用于验证请求身份的令牌

    Catalog:每个服务需要在keystone上进行注册,而他们就是注册在catalog上

    Policy:决定每个用户有哪些访问控制的权限

    4:Nova-计算服务

    openstack的核心服务。

    一:主要功能包括:

    1:实例生命周期管理:实例的创建,删除,启动,停止

    2:计算资源的管理

    3:向外提供Rest风格的API

    二:3个不同的功能模块组成

    nova-api:位于表示层主要接受外部的rest请求

    nova-scheduler:位于逻辑控制层,主要负责居中调停,选择由哪个主机创建vm

    nova-compute:负责虚拟机测创建,以及资源的分配,本身并不提供任何虚拟化功能,但他却支持不同的虚拟机形式

    他们之间并不是听过直接传递,而是通过消息中间件进行消息的传递
    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

    5: Glance-镜像服务

    功能:提供虚拟机镜像的存储,查询和检索服务

    主要为Nova组件提供服务,通过nova创建虚拟机的时候,就必须听过glance获取相应的镜像,然后根据镜像创建虚拟机。

    依赖于存储服务和数据库服务:存储服务用于存储镜像本身,数据库服务主要用于存储跟镜像相关的各种元数据

    glance的架构图
    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

    6:swift-存储服务

    功能:对外提供高可用分布式对象存储服务

    特点:无限可扩展,没有端点故障,使用swift不用担心使用的对象会丢失,因为它本身就提供高可用的功能

    可以通过HTTP(S),object api及s3接口存取

    swift原理图

    所有的请求都通过proxy进行处理,通过proxy到合适的Account下面找相应的Containe中的某一个object进行存储服务

    在这中间会针对不同的object进行复制,从而保证某一个对象的信息丢失时能够从其他地方找回来
    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

    7:cinder-块存储服务

    功能:管理所以的块存储设备,为vm服务,

    对象存储服务主要用于存储分布式的对象,也就意味着你可以从任何地方发起请求存储你的对象

    块存储服务是本地的,它只能挂在vm上进行使用

    cinder原理图:

    当一个请求发来时,首先还是发送到cinder本身的api上面,api模块对发过来的请求进行处理,处理后的结果通过消息中间件进行传递,通过消息中间件mq传到cinder-scheduler上面再通过调度器,

    再决定到哪里申请块存储服务,并且创建一个vm,cinder具体的存储模块的管理都是通过cinder-volume来进行生命周期管理
    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

    8:Neutron-网络服务

    功能:提供云计算环境下的虚拟网络功能,为每个租户建立独立的网络环境

    三种模式:

    Flat模式:网桥模式,所有的都需要手工配置

    Flat DHCP模式:网桥模式,在网关处单独取了一个DHCP的进程,可以辅助用户进行网络配置

    VLAN模式:为每个不同的租户设置了不同的虚拟子网,在这个虚拟子网中,用户可以有自己的ip

    三:组件间关系和访问流程
    1:组件之间的关系

    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

    2:访问控制流程

    openstack基础构架以及服务方式解析openstack基础构架以及服务方式解析

  • 相关阅读:
    前端模糊查询
    CSS水平居中/垂直居中的方法
    echart图是用细节
    bootstrap-datetimepicker日期时间选择器学习
    zTree -- jQuery 树插件
    URL传参中文出现乱码
    在游览器标签页失去焦点时网页title改变的实现方法
    JS实现将数字金额转换为大写人民币汉字的方法
    div+css网站布局基础知识
    [转载]Jenkins中执行batch和Python
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/12255588.html
Copyright © 2011-2022 走看看