OpenStack的基本简介

一、云计算三种服务模式简介

  • IaaS(基础架构即服务)

提供底层IT基础设施服务,包括处理能力、存储空间、网络资源等
面向对象一般是IT管理人员

  • PaaS(平台即服务)

把安装好开发环境的系统平台作为一种服务通过互联网提供给用户
面向对象一般是开发人员

  • SaaS(软件即服务)

直接通过互联网为用户提供软件和应用程序等服务
面向对象一般是普通用户

二、openstack概述

2.1、 openstack简介

  • OpenStack是一个开源软件,它提供了一个部署云的平台。
  • NASA(美国国家航空航天局)和Rackspace共同发起以Apchae许可证授权的自由软件和开放源代码项目。
  • 为公有云及私有云的建设与管理提供软件的开源项目覆盖了网络、虚拟化、操作系统、服务器等各个方面。

2.2、openstack的用作

  • OpenStack能帮我们建立自己的IaaS,提供类似Amazon Web Service的服务给用户:
  • 普通用户可以通过它注册云服务,查看运行和计费情况
  • 开发和运维人员可以创建和存储他们应用的自定义镜像,并通过这些镜像启动、监控和终止实例
  • 平台的管理人员能够配置和操作网络,存储等基础架构

2.3、openstack的优点

  • 控制性:

完全开源得平台,提供API接口,方便与第三方技术集成

  • 兼容性:

OpenStack兼容其他公有云,方便用户进行数据迁移

  • 可扩展性/模块松耦合:

模块化设计,可以通过横向扩展,增加节点、添加资源,添加独立功能的组件非常简单。有时候,不需要通读整个OpenStack的代码,只需要了解其接口规范及API使用,就可以轻松地添加一个新的模块

  • 灵活性:

根据自己得需要建立相应基础设施、增加集群规模,服务可以安装在不同节点,即使部分服务挂了也不会影响。

  • 行业标准:

众多IT领军企业已经加入到OpenStack项目

三、 openstack逻辑架构图

3.1、 openstack主要组件介绍

  • Nova(计算服务)
    负责实例生命周期的管理,计算资源的单位。对Hypervisor进行屏蔽,支持多种虚拟化技术,主要和kvm相结合,提供底层的资源给自己的服务,支持横向扩展

  • Neutron (网络服务)
    负责虚拟网络的管理,为实例创建网络的拓扑结构。是面向租户的网络管理,可以自己定义自己的网络,各个租户之间互不影响

  • Keystone (身份认证服务)
    类似于LDAP服务,对用户、租户和角色、服务进行认证与授权,且支持多认证机制。就是相当一个ca机构,提供多种方式(密钥,哈希等)授权,来进行身份认证

  • Horizon(控制面板服务)
    提供一个Web管理界面,提供图形化界面控制台,与OpenStack底层服务进行交互

  • Glance (镜像服务)
    提供虚拟机镜像模板的注册与管理,将做好的操作系统拷贝为镜像模板,在创建虚拟机时直接使用,可支持多格式的镜像

  • Cinder (块存储服务)
    负责为运行实例提供持久的块存储设备,可进行方便的扩展,按需付费,支持多种后端存储,简单来说就是为虚拟机提供磁盘空间的。

  • Swift (对象存储服务)
    为OpenStack提供基于云的弹性存储,支持集群无单点故障,就比如nginx集群部署,一台宕机了,还有顶替的,防止了单点故障。

  • Ceilometer (计量服务)
    用于度量、时刻监控和控制数据资源的集中来源,汇报数据,为OpenStack用户提供记账途径

  • Trove:提供数据库服务

  • Ironic:提供裸金属管理服务

  • Heat:提供资源编排能力

  • Sahara:提供在OpenStack上构建大数据服务的能力

3.2 、openstack架构图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

云平台用户在经过Keystone服务认证授权后,通过Horizon或者Reset API模式创建虚拟机服务,创建过程中包括利用Nova服务创建虚拟机实例,虚拟机实例采用Glance提供镜像服务,然后使用Neutron为新建的虚拟机分配IP地址,并将其纳入虚拟网络中,之后在通过Cinder创建的卷为虚拟机挂载存储块,整个过程都在Ceilometer模块资源的监控下,Cinder产生的卷(Volume)和Glance提供的镜像(lmage)可以通过Swift的对象存储机制进行保存。

3.3 、OpenStack逻辑架构

在这里插入图片描述
这幅架构图:

  • 首先展示了内部核心组件、外部组件、全局组件各核心、辅助组件之间是怎么对接的展示了各组件中,一部分核心的功能模块进行通讯展示openstack原生架构(基础)
  • OpenStack包括若干个称为OpenStack服务的独立组件,独立的小组件都是由队列连接的。所有服务均可通过一个公共身份服务进行身份验证。除了那些需要管理权限的命令,每个服务之间均可通过公共API进行交互。
  • 每个OpenStack服务又由若干组件组成。包含多个进程。所有服务至少有一个API进程,用于侦听API请求,对这些请求进行预处理,并将它们传送到该服务的其他组件。除了认证服务,实际工作都是由具体的进程完成的至于一个服务的进程之间通信,则使用AMQP消息代理。服务的状态存储在数据库中。

3.4 OpenStack组件通信关系

  • 基于AMQP协议得通信
    用于每个项目内部各个组件之间的通信

  • 基于SQL得通信——在不同场景下运用不同的通信方式
    用于各个项目内部得通信

  • 基于HTTP协议进行通信

通过个项目得API建立的通信关系,API都是RESTful Web API——在控制台上将前端和后端通过restful api网关接口进行通讯

  • 通过Native API实现通信

OpenStack各组件和第三方软硬件之间的通信——native api使原生架构与第三方组件进行通讯

  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值