传统 IT 环境下,安装一个系统是要么从CD安装,要么用 Ghost 等克隆工具恢复。有以下几个问题:数据库
云环境下须要更高效的解决方案,这就是Image。Image是一个模板,里面包含了基本的操做系统和其余的软件。编程
Glance提供Image Service服务,功能是管理Image,让用户可以发现、获取和保存Image。api
一、各组件的含义安全
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;包括:
具体使用哪一种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版本中被删除了。
图3 Image状态类型