Glance 提供 Image 服务。
Image Service 的功能是管理 Image,让用户能够发现、获取和保存 Image。在 OpenStack 中,提供 Image Service 的是 Glance,其具体功能如下:
1.提供 REST API 让用户能够查询和获取 image 的元数据和 image 本身
2.支持多种方式存储 image,包括普通的文件系统、Swift、Amazon S3 等
3.对 Instance 执行 Snapshot 创建新的 image
glance架构图
glance组件:glance-api、glance-registry、Database、Store backend
====================================================================
glance-api
glance-api 是系统后台运行的服务进程。 对外提供 REST API,响应 image 查询、获取和存储的调用。
glance-api 不会真正处理请求。
如果操作是与 image metadata(元数据)相关,glance-api 会把请求转发给 glance-registry;
如果操作是与 image 自身存取相关,glance-api 会把请求转发给该 image 的 store backend。
--------------------------------------------------------------------------------------------
glance-registry
glance-registry 是系统后台运行的服务进程。 负责处理和存取 image 的 metadata,例如 image 的大小和类型。
Glance 支持多种格式的 image,包括:Raw/vhd/vmdk/VDI/ISO/QCOW2/aki/ari/ami
Database
Image 的 metadata 会保持到 database 中,默认是 MySQL。 在控制节点上可以查看 glance 的 database 信息
--------------------------------------------------------------------------------------------
Store backend
Glance 自己并不存储 image。 真正的 image 是存放在 backend 中的。 Glance 支持多种 backend,包括:
1.A directory on a local file system(这是默认配置)
2.GridFS
3.Ceph RBD
4.Amazon S3
5.Sheepdog
6.OpenStack Block Storage (Cinder)
7.OpenStack Object Storage (Swift)
8.VMware ESX
glance组件:glance-api、glance-registry、Database、Store backend
/etc/glance/glance-api.conf 中配置了具体使用的backend
devstack 环境中,image 存放在控制节点本地目录 /opt/stack/data/glance/images/
RDO环境中,image 存放在控制节点本地目录/var/lib/glance/images/,文件名为image-id
其他 backend 的配置可参考http://docs.openstack.org/liberty/config-reference/content/configuring-image-service-backends.html
白屏黑屏操作images
==============================================================================
既然有更友好的 Web UI 了,干嘛还要用 CLI?
1.Web UI 的功能没有 CLI 全,有些操作只提供了 CLI。 即便是都有的功能,CLI 可以使用的参数更多
2.一般来说,CLI 返回结果更快,操作起来更高效
3.CLI 可放在脚本中进行批处理
4.有些耗时的操作 CLI 更合适,比如创建镜像(后面将涉及)
------------------------------------------------------------------------------
白屏创建Image:
详见“创建 Image - 每天5分钟玩转 OpenStack(21)”
黑屏创建Image:
glance image-create --name cirros --file /root/cirros-0.5.2-aarch64-disk.img --disk-format qcow2 --container-format bare --progress
--progress 显示文件上传百分比
白屏删除Image:
略
黑屏删除Image:
1.查看已经存在的images
glance image-list
ls /var/lib/glance/images/
2.删除Image
glance image-delete 143a751e-a2e2-460e-87bc-c1c1f399940f
白屏黑屏操作images
glance Troubleshooting故障排查
Glance 主要有两个日志,glance_api.log 和 glance_registry.log,保存在 /opt/stack/logs 目录里。
RDO环境:api.log、registry.log,保存在/var/log/glance/目录里。
配置文件保存在/etc/glance/目录下,有多个配置文件,打开debug选项,才会记录debug日志
glance Troubleshooting故障排查