OpenStack-Glance(3)

 

1、 Glance功能

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

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

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

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

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

2、 Glance架构

一、各组件的含义安全

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

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

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

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

  Glance Store:用于组织Glance和各类数据存储之间的交互。操作系统

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

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

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

 

图1 Glance的架构

   

图2 Glance的架构

 

二、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 =

 

三、镜像磁盘格式

表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

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

  Public公共的:能够被全部的Tenant使用。

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

  Shared共享的:一个非公共的Image能够共享给指定的Tenant,经过member-*操做来实现。

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

五、Image的状态类型:

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

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

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

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

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

六、建立 Images

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

  • Web UI的功能没有CLI全,有些操做只提供了CLI。即使是都有的功能,CLI可使用的参数更多。
  • 通常来讲,CLI 返回结果更快,操做起来更高效。
  • CLI 可放在脚本中进行批处理。
  • 有些耗时的操做CLI更合适,好比建立镜像。 

图3 Image状态类型

相关文章
相关标签/搜索