赞
踩
Glance(镜像)服务
1.镜像的概述
Glance服务实现发现、注册、获取虚拟机镜像和镜像元数据,镜像数据支持存储多种的存储系统,这些存储系统可以是简单的文件系统、对象存储系统。
C/S架构,glance-client、Glance、Glance-store。
所有的镜像文件操作都是通过glance_store库完成的,它是提供通用的接口,用来对接后端外部不同的存储。
Glance架构里面分为很多组件,如下:
(1)客户端:外部用于同Glance服务的交互和操作
(2)api:对外的REST接口
(3)数据库的抽象层(DAL):Glance和数据库之间直接交互的编程接口。
(4)域控制器:中间件实现了Glance的认证、通知、策略和数据连接等功能
(5)注册层:可选,用于管理域控制和数据库DAL层之间的安全通信
(6)DB:存储镜像的元数据,可以根据需要选择不同的数据库,目前采用的数据库类型是Mysql
(7)store:对接不同数据存储的抽象层
(8)后端存储:实际接入的存储系统。可以接入简单的文件系统、对象存储、Ceph、S3云存储
在使用Glance服务时需要配置两个模块的文件(glance-api.conf、glance-registry.conf)。
(1)Glance-registry:存储、处理和获取镜像元数据,内部服务只对Glance内部进行支持,不会暴露给用户。
(2)Glance-all:对于api和registry进程的封装。
(3)glance-api:接受镜像的调用请求
2.镜像和容器的文件格式
云主机镜像需要指定磁盘格式和容器的格式。
(1)qcow2:qemu模拟器,支持可动态扩展、写时复制的磁盘格式,也是KVM虚拟机默认使用的磁盘文件格式。
(2)raw:非结构化的磁盘镜像格式。
(3)AMI/AKI/ARI:是亚马逊云 EC2最初支持的镜像格式。
(4)VHD:微软虚拟磁盘文件。
(5)VMDK:是VMware创建的虚拟机格式。
(6)OVF:开放的虚拟化格式,OVF文件一种开源的文件规范,可以用在虚拟文件的打包。
容器格式我们可以理解成,虚拟机镜像添加元数据后重新打包的格式。
(1)Bare:指定没有容器和元数据封装在镜像中,如果Glance和Openstack的其他服务没有使用容器格式的字符串,为了安全起见,建议设置bare。
(2)aki:存储在Glance中的是亚马逊的内核镜像
(3)ari:亚马逊ramdisk镜像
(4)ova:存储在Glance中的OVA的tar归档文件
3.镜像的状态
(1)queued(排队):镜像的ID已经创建和注册,但是镜像数据还没上传
(2)saving(保存):镜像数据在上传中
(3)active(有效的):镜像成功被创建,状态是有效的可以去使用
(4)deactived(不活跃的):镜像成功的创建了,但是对于非管理员用户是不可用的
(5)killed(错误):上传镜像数据出错,不可以读取的状态
(6)delete(被删除):镜像已经不可用,将会被自动删除
(7)pending_delete(等待删除):镜像不可用,等待将被自动删除
4. 运维镜像服务
[root@controller ~]# mount chinaskills_cloud_iaas_v2.0.3.iso /opt/iaas/
mount: /dev/loop0 is write-protected, mounting read-only
[root@controller ~]# cd /opt/iaas/images/
[root@controller images]# ls
amphora-x64-haproxy.qcow2 CentOS-7-x86_64-2009.qcow2 MySQL_5.6_XD.qcow2
CentOS7_1804.tar cirros-0.3.4-x86_64-disk.img
[root@controller images]# source /etc/keystone/admin-openrc.sh
[root@controller images]# glance image-create --name "centos7.9" --disk-format qcow2 --container-format bare --progress <CentOS-7-x86_64-2009.qcow2
[=============================>] 100%
+------------------+----------------------------------------------------------------------------------+
| Property | Value |
+------------------+----------------------------------------------------------------------------------+
| checksum | c939f3fc8bc41f0b0a0a5fa6f2a4ce83 |
| container_format | bare |
| created_at | 2022-10-16T07:34:25Z |
| disk_format | qcow2 |
| id | 3b983a5e-8c0c-4d1f-b2fa-f47e9d29e3a9 |
| min_disk | 0 |
| min_ram | 0 |
| name | centos7.9 |
| os_hash_algo | sha512 |
| os_hash_value | 4506fcff79aa46c1db6938a419f55bfe1a02d053c66eaca4f1107cc64fc969bf53fd03a79ef94a6e |
| | 3b3264f87e50ae38dc9342cb5dce8b268b930787650c4d7d |
| os_hidden | False |
| owner | a9ef1cb9c3db40c0889807210939dee9 |
| protected | False |
| size | 399900672 |
| status | active |
| tags | [] |
| updated_at | 2022-10-16T07:34:40Z |
| virtual_size | Not available |
| visibility | shared |
+------------------+----------------------------------------------------------------------------------+
[root@controller images]# openstack-service status |grep glance
MainPID=1020 Id=openstack-glance-api.service ActiveState=active
MainPID=1028 Id=openstack-glance-registry.service ActiveState=active
[root@controller images]# systemctl status openstack-glance* //查询镜像服务的状态
[root@controller images]# glance image-list //查看镜像列表
+--------------------------------------+-----------+
| ID | Name |
+--------------------------------------+-----------+
| 5b556f8f-6ddf-4139-972a-0eb61407ad23 | centos7.2 |
| 3b983a5e-8c0c-4d1f-b2fa-f47e9d29e3a9 | centos7.9 |
+--------------------------------------+-----------+
[root@controller images]# glance image-show 5b556f8f-6ddf-4139-972a-0eb61407ad23 //查看镜像的详细信息,必须要带ID号查看
[root@controller images]# glance image-delete 5b556f8f-6ddf-4139-972a-0eb61407ad23 //删除一个镜像
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。