注:本文内容均来自网络,我只是在此做了一些摘抄和整理的工作,来源均有注明。
0、简介及基本概念
简介:
基本概念:
1.Image identifiers
Image使用URI作为唯一标识,URL符合以下格式:
<Glance Server Location>/images/<ID>
2.Image Statuses 共六种状态。
queued 标识该镜像ID已经被保留,但是镜像还未上传。
saving 标识镜像正在被上传。
active 标识镜像在Glance中完全可用。
killed 标识镜像上传过程中出错,镜像完全不可用。
-
pending
在Glance中保留task identifier。但此时还没有进程开始执行。
-
processing
任务已被底层执行者选中,并且后端Glance根据任务类型开始执行对应的逻辑操作。
-
success
表示该任务已成功运行。在任务的“result”域中会显示关于输出结果的更多细节。
-
failure
表示在任务的执行过程中发生了一个错误,并且它不能继续执行下去。任务的“message”域展示了是什么错误。
Disk Format:raw vhd vmdk vdi iso qcow2 aki ari ami虚拟机镜像的磁盘格式是底层磁盘镜像的格式。Virtual appliance vendors have different formats for laying out the information contained in a virtual machine disk image.
Container Format:ovf bare aki ari amicontainer格式表示虚拟机镜像是否在一个包括虚拟机的metadata文件格式中。Note that the container format string is not currently used by Glance or other OpenStack components, so it is safe to simply specify bare as the container format if you are unsure
当disk format为aki ari ami时,disk format 和container format一致。
5.Image Registries
使用Glance,镜像metadata可以注册至image registries。
只要为image metadata提供了rest like API,任何web程序可以作为image registries与Glance对接。
当然,Glance也提供了参考实现。
1、组件及架构
Glance主要由三个部分构成:glance-api、glance-registry以及image store。
- Glance-api接收REST API的请求,类似nova-api;
Glance-api在功能上与nova-api十分类似,都是接收REST API请求,然后通过其他模块(glance-registry及image store)来完成诸如镜像的查找、获取、上传、删除等操作,i默认监听端口9292。
- glance-registry用于与MySQL数据库交互,用于存储或获取镜像的元数据(metadata);
Glance-registry用于提供镜像元数据相关的REST接口,通过glance-registry,可以向数据库中写入或获取镜像的各种数据,glance-registry监听端口9191。Glance的数据库中有两张表,一张是image表,另一张是image property表。Image表保存了镜像格式、大小等信息;image property表则主要保存镜像的定制化信息。
- image store是一个存储的接口层,通过这个接口,glance可以获取镜像,image store支持的存储有Amazon的S3、OpenStack本身的Swift,还有诸如ceph,sheepdog,GlusterFS等分布式存储。
Image store是镜像保存与获取的接口,它仅仅是一个接口层,具体的实现需要外部的存储支持,目前,支持的接口有Amazon S3、GlusterFS、Swift,sheepdog,ceph等。
2、镜像缓存机制
参考:
- OpenStack官方文档: http://docs.openstack.org/developer/glance/
- OpenStack之Glance笔记(一): http://blog.csdn.net/grandvalley/article/details/6658115
- OpenStack虚拟机创建过程中镜像格式的的变化过程: http://www.openstack.cn/p358.html
- OpenStack Glance的镜像缓存机制介绍: http://www.linuxidc.com/Linux/2013-05/84376.htm