一、 Glance功能

  传统 IT 环境下,安装一个系统是要么从CD安装,要么用 Ghost 等克隆工具恢复。有如下几个问题:

  • 如果要安装的系统多了效率就很低
  • 时间长,工作量大
  • 安装完还要进行手工配置,比如安装其他的软件,设置 IP 等
  • 备份和恢复系统不灵活

  云环境下需要更高效的解决方案,这就是Image。Image是一个模板,里面包含了基本的操作系统和其他的软件。

  Glance提供Image Service服务,功能是管理Image,让用户能够发现、获取和保存Image。

  • 提供REST API让用户能够查询和获取Image的元数据和Image本身。
  • 支持多种方式存储Image,包括普通的文件系统、Swift、Amazon S3等。
  • 对Instance执行Snapshot创建新的Image。

二、 Glance架构

1、各组件的含义

  A client:任何使用Glance服务器的应用程序。

  REST API:Glance提供REST访问的API。

  Database Abstraction Layer (DAL):统一Glance和数据库之间的通信的应用程序编程接口(API)。

  Glance Domain Controller:域控制器,实现主要的中间件功能,如授权,通知,策略,数据库连接。

  Glance Store:用于组织Glance和各种数据存储之间的交互。

  Registry Layer:注册表层,用于通过使用单独的服务来组织域和DAL之间的安全通信的可选层。

  Database:Image的metadata会保持到database中,默认是 MySQL。在控制节点上可以查看glance的database信息。

  Store backend:Glance自己并不存储image。真正的image是存放在backend中的。

图1 Glance的架构

图2 Glance的架构

2、Glance支持多种backend;包括:

  • A directory on a local file system(这是默认配置)
  • GridFS
  • Ceph RBD
  • Amazon S3
  • Sheepdog
  • OpenStack Block Storage (Cinder)
  • OpenStack Object Storage (Swift)
  • VMware ESX

  具体使用哪种backend,是在 /etc/glance/glanceapi.conf中配置的:

[glance_store]
filesystem_store_datadir =

3、镜像磁盘格式

表1 镜像磁盘格式表

类型

说明

raw

This is an unstructured disk image format

vhd

This is the VHDdisk format, a common disk format used by virtual machine monitors from VMWare.

vmdk

Another common disk format supported by many common virtual machine monitors

VDI

A disk format supported by VirtualBox virtual machine monitor and the QEMU

emulator

ISO

An archive format for the data contents of an optical disc(e.g. CDROM)

qcow2

A disk format supported by the QEMU emulator that can expand dynamically and

supports Copy on Write

aki

This indicates what is stored in Glance is an Amazon kernel image

ari

This indicates what is stored in Glance is an Amazon kernel image

armi

This indicates what is stored in Glance is an Amazon kernel image

4、镜像文件的访问权限:

  Public公共的:可以被所有的Tenant使用。

  Private私有的/项目的:只能被Image Owner所在的Tenant使用。

  Shared共享的:一个非公共的Image可以共享给指定的Tenant,通过member-*操作来实现。

  Protected受保护的:Protected Image不能被删除。

5、Image的状态类型:

  Queued:没有上传Image数据,只SQL Database中存有该镜像的元数据(标识该镜像的ID)。

  Saving:标识镜像正在上传Image。

  Active:正常状态,标识镜像在Glance中完全可用。

  Deleted/pending_delete:已删除/等待删除的Image。

  Killed:标识镜像上传过程中出错,Image元数据不正确,镜像完全不可用,等待被删除。

6、创建 Images

  创建Image的两种方法:Web UI(Horizon)和命令行CLI (推荐),API v1已经在Newton版本中被删除了。

  • Web UI的功能没有CLI全,有些操作只提供了CLI。即便是都有的功能,CLI可以使用的参数更多。
  • 一般来说,CLI 返回结果更快,操作起来更高效。
  • CLI 可放在脚本中进行批处理。
  • 有些耗时的操作CLI更合适,比如创建镜像。

图3 Image状态类型

OpenStack-Glance(3)的更多相关文章

  1. 理解 OpenStack + Ceph (5):OpenStack 与 Ceph 之间的集成 [OpenStack Integration with Ceph]

    理解 OpenStack + Ceph 系列文章: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenS ...

  2. 探索 OpenStack 之(13):研究 Keystone

    Keystone 是 OpenStack Identity Service 的项目名称.本文就试着尽可能深入地研究 Keystone. 1. Keystone 的功能 做为 OpenStack 云系统 ...

  3. OpenStack 初探(一) -- All-In-One模式部署(初学OpenStack必备)

    OpenStack 初探(一) -- All-In-One模式部署(初学OpenStack必备) 一.操作前需了解:     1. OpenStack提供IaaS(基础设施即服务)服务,它是开源的云计 ...

  4. 探索 OpenStack 之(8):Neutron 深入探索之 OVS + GRE 之 完整网络流程 篇

    前两篇博文分别研究了Compute节点和Neutron节点内部的网络架构.本文通过一些典型流程案例来分析具体网络流程过程. 0. 环境 同 学习OpenStack之(7):Neutron 深入学习之 ...

  5. 学习OpenStack之(6):Neutron 深入学习之 OVS + GRE 之 Compute node 篇

    0.环境 硬件环境见上一篇博客:学习OpenStack之(5):在Mac上部署Juno版本OpenStack 四节点环境 OpenStack网络配置:一个tenant, 2个虚机 Type drive ...

  6. 理解 OpenStack + Ceph (2):Ceph 的物理和逻辑结构 [Ceph Architecture]

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...

  7. 学习OpenStack之(5):在Mac上部署Juno版本OpenStack 四节点环境

    0. 前沿 经过一段时间的折腾,终于在自己的Mac上装好了Juno版本的四节点环境.这过程中,花了大量的时间,碰到了许多问题,学到不少知识,折腾过不少其实不需要折腾的东西,本文试着来对这过程做个总结. ...

  8. 探索 OpenStack 之(12):cinder-api Service 处理 HTTP Request 的过程分析

    本文是上一篇 探索 OpenStack 之(11):cinder-api Service 启动过程分析 以及 WSGI / Paste deploy / Router 等介绍> 的后续篇. os ...

  9. 探索 OpenStack 之(9):深入块存储服务Cinder (功能篇)

    继研究了Neutron之后,继续Nova的外围研究之旅.本站是研究块存储服务Cinder. 0.验证环境 环境包括: 1.一个controller节点,运行nova-api, nova-schedul ...

  10. 探索 OpenStack 之(10):深入镜像服务Glance

    本篇博文来探讨下镜像服务Glance. 0.  基本概念 0.1 基本功能 Glance提供REST API来支持以下镜像操作: 查询 注册 上传 获取 删除 访问权限管理 0.2 Glance RE ...

随机推荐

  1. webpack4.0各个击破(10)—— Integration篇

    webpack作为前端最火的构建工具,是前端自动化工具链最重要的部分,使用门槛较高.本系列是笔者自己的学习记录,比较基础,希望通过问题 + 解决方式的模式,以前端构建中遇到的具体需求为出发点,学习we ...

  2. QSS的使用(二)——实现ColorLabel

    在上一篇文章中,我们已经了解了QSS的基础使用,现在我们将会看到一个简单的例子来加深对QSS的理解. 需求分析 我们想要在界面中让文本显示出指定的颜色,现在有几种方案: 使用paintEvent手动计 ...

  3. 31.C++-虚函数之构造函数与析构函数分析

    1.构造函数不能为虚函数 当我们将构造函数定义为虚函数时,会直接报错: 首先回忆下以前学的virtual虚函数概念: 如果类定义了虚函数,创建对象时,则会分配内存空间,并且为该父类以及其所有子类的内存 ...

  4. WebStorm 配置微信小程序开发 用html样式打开wxml 用css样式打开wxss 配置微信小程序提醒

    1.点开preferences 2.搜索找到“File Types” 3.找到"HTML",点击“+”按钮,添加“*.wxml”然后“apply” 4.和3一样,再找到 ‘casc ...

  5. vue px转换为rem

    前端开发中还原设计图的重要性毋庸置疑,目前来说应用最多的应该也还是使用rem.然而很多人依然还是处于刀耕火种的时代,要么自己去计算rem值,要么依靠编辑器安装插件转换. 而本文的目标就是通过一系列的配 ...

  6. 安卓手机如何快速投屏到windows(10/8.1/7)电脑上

    前提: 手机和电脑连接的网络必须在同一局域网下. 优势: 手机和电脑不需要下载对应平台的应用,完全使用全系统自带功能. 附加: 以下演示是安卓手机和windows操作系统电脑,并且win10和win1 ...

  7. python地理处理包——pySAL使用

    Pysal是基于Python的开源地理处理库,能提供高层次的空间分析功能.

  8. 自定义Progress小控件

    progress各种各样的都有,自定义大多数也是简单的,根据业务需求来自己定义,记录一下,先上效果图 本来想找个第三方改改就上的,不过自己的业务需求有点不搭,一下子没找到合适的,也没这么多时间去找了, ...

  9. 【English】二、It作为代词,可以代指什么

    it的用法 一.用作人称代词: 1.指代事物: — What’s this? — It’s a cat.2.指代人:常用于不知对方性别时,比如:询问敲门人或打电话时询问对方是谁,或者用来指代婴儿. ( ...

  10. spring学习总结——装配Bean学习三(xml装配bean)

    通过XML装配bean Spring现在有了强大的自动化配置和基于Java的配置,XML不应该再是你的第一选择了.不过,鉴于已经存在那么多基于XML的Spring配置,所以理解如何在Spring中使用 ...