简述openstack

栏目: 编程工具 · 发布时间: 6年前

内容简介:云计算大家好,我顾某人又回来了,开学第一更。。。。以下内容均为个人理解和整理,有不对的地方还望dalao指正。。。。。

云计算

大家好,我顾某人又回来了,开学第一更。。。。

以下内容均为个人理解和整理,有不对的地方还望dalao指正。。。。。

本文所用图片均已标明来源。

openstack是什么?

OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。

openstack组成

openstack由以下七个主要部分组成:

  • Nova:计算服务
  • Neutron:网络管理服务
  • Keystone:认证服务
  • Swift:对象存储服务
  • Cinder:块存储服务
  • Glance:镜像管理服务
  • Horizon:操作界面

openstack整体架构

图源网络

简述openstack

openstack组成详解

Nova

Nova提供CPU、内存、网络适配器和硬件驱动器等服务器资源虚拟化的功能,提高了资源的利用率。

通过Nova api来接受和响应用户的请求,实时对VM进行启动、挂起、停止等功能。

Nova主要包含的组件有:

  • Nova-api
    响应用户的请求
  • Nova-scheduler
    负责VM的调度,决定了VM运行在哪台主机上。
  • Nova-compute
    管理VM实例的生命周期
  • Nova-conductor
    计算服务与数据库的交互中介,避免直接访问数据库
  • Nova-console
    提供访问VM的控制台
  • Nova-consoleauth
    负责对VM控制台的请求提供Token认证
  • Nova-cert
    提供证书
  • Hypervisor
    虚拟化管理程序,用于实现硬件的虚拟化
  • database
    用于存放一些Nova的数据
  • message queue
    用于Nova子服务之间的相互协调和通信

Neutron

Neutron架构,图源CloudMan

简述openstack

Neutron通过 pluginagent 提供的网络服务。

调用网络的API分为以下两种:

  • Core API
    对外提供 networksubnetport 的API
  • Resource and Attribute Extension API
    对外提供管理 routerload balancefirewall 等资源的API。

Neutron的 plugin 分为 Neutron Core PluginsNeutron Service Plugins

  • Neutron Core Plugins
    Neutron的核心插件,实现 Core API 在数据库中维护 networksubnetport 的状态,并负责调用相应的 agentnetwork provider 上执行相关操作.
  • Neutron Service Plugins
    Neutron的扩展插件,实现 Extension Plugin API ,在数据库中维护 routerload balancesecurity group 等资源的状态,并负责调用相应的 agentnetwork provider 上执行相关操作.

Message Queue:消息队列

用于 PluginsAgent 相互之间的调用.

Keystone

keystone为openstack组件提供认证服务和管理用户及其权限。

keystone中有几个重要的概念要了解一下:User(用户)、Role(角色)、Tenant(租户)、Service(服务)。

  • User 用户,keystone的授权用户
  • Role 角色,表示用户可以访问资源的权限
  • Tenant 租户,各个服务中可以访问的资源合集
  • Service 服务,租户可以提供的服务

keystone的运作流程大概是这样的:当User想要去访问某个Service时,首先他要向keystone出示它的Credentials,Keystone认证之后会给User一个Token,然后User就可以使用这个Token去访问Service,这时这个Service就会向keystone去验证User的Token,如果验证成功,那么User就成功访问到Service中的Endpoint,且User的Role越高,访问到的Service越多。

通俗的来讲是这样的:

User|住酒店的人

|:-|:-

Tenant|酒店

Credentials|酒店房间钥匙

Authentication|房客认证机制

Token|发给能打开房间的人的凭证,用于享受酒店的服务

Service|酒店提供的一种服务

Endpoint|酒店提供服务中的具体服务

Role|酒店会员等级

Swift

Swift为OpenStack提供一种分布式、持续虚拟对象存储,主要用于存储大的对象文件,比如虚拟机的备份。

Cinder

openstack的一种块存储方式,挂载给虚拟机使用,可以给虚拟机提供额外的空间。

swift和cinder的比较

swift 类似于保存PC的系统,而 cinder 类似于保存PC里面的文件。

Glance

openstack中用于保存创建VM的镜像,比如,现在现在需要安装一个 win7 的操作系统给公司的某个员工使用,按照传统的操作方式需要花费大量时间,但是现在在云环境中,只需要直接从 glance 中按模板启动 win7 即可,二七人只许耗费几秒钟的时间

glance 包括 glance-apiglance-registrystore backend .

  • glance-api
    对外提供API,用于响应 image 的查询、获取等调用。
  • glance-registry
    用于处理和存取 image 的的元数据,例如大小、类型等,并且戴护具对应到 Database
  • store backend
    用于存放 image

Horizon

简单的来说,Horizon是一个web接口,用于将openstack的资源聚集到一起并进行图形化管理。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Little Prover

The Little Prover

Daniel P. Friedman、Carl Eastlund / The MIT Press / 2015-7-10 / USD 38.00

[FROM www.amazon.com]: The Little Prover introduces inductive proofs as a way to determine facts about computer programs. It is written in an approachable, engaging style of question-and-answer, wi......一起来看看 《The Little Prover》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试