Glance镜像服务的基本使用
1. Glance镜像服务介绍Glance是OpenStack镜像服务用来注册、登陆和检索虚拟机镜像。Glance服务提供了一个REST API使读者能够查询虚拟机镜像元数据和检索实际镜像。通过镜像服务提供的虚拟机镜像可以存储在不同的位置从简单的文件系统对象存储到类似OpenStack对象存储系统。Glance与其他组件的关系如图1-1所示。图1-1 Glance与其他组件的关系默认情况下上传的虚拟机镜像存储路径为/var/lib/glance/images/。Glance负责镜像文件的注册、查询和存储管理。● glance-api负责接受Image API请求处理image查询和存储等● glance-registry负责存储处理和检索image的元数据(大小类型等)● 使用数据库来存储image文件的元数据● 支持不同的存储仓库来存储image文件包括swift,本地磁盘RADOS块设备Amazon S3HTTP。2. Glance重要概念1镜像状态镜像状态是Glance管理镜像重要的一个内容Glance组件给整个OpenStack提供了镜像查询和检索Glance可以通过虚拟机镜像的状态感知某一镜像的可用状态。如图1-2所示OpenStack中镜像的状态分成以下几种● Queued:Queued状态这是一种初始化镜像状态在镜像文件刚刚被创建在glance数据库中已经保存了镜像标示符但还没有上传至glance中此时的glance对镜像数据没有任何描述其存储空间为0。● Saving:Saving状态是镜像的原始数据在上传中的一种过度状态它产生在镜像数据上传至glance的过程中一般来讲glance收到一个image请求后才将镜像上传给glance。● Active:Active状态是当镜像成功上传完毕以后的一种状态它表明glance中可用的镜像。● Killed:Killed状态出现在镜像上传失败或者镜像文件不可读的情况下glance将镜像状态设置成Killed。● Deleted:Deleted状态表明一个镜像文件马上会被删除只是当前glance这种仍然保留该镜像文件的相关信息和原始镜像数据。● Pending_delete:Pending_delete状态类似于deleted虽然此时的镜像文件没有删除但镜像文件不能恢复的。图1-2 Glance镜像文件状态转换过程2Glance基本架构和三大模块它的设计模式采用C/S架构模式Client通过Glance提供的REST API与Glance的服务器Server程序进行通信Glance的服务器程序通过网络端口监听接收Client发送来的镜像操作请求基本架构如图1-3所示。图1-3 Glance架构图● Glance-api接收REST API的请求然后通过其他模块glance-registry及image store来完成诸如镜像的查找、获取、上传、删除等操作默认监听端口9292。● Glance-registry用于与MariaDB数据库交互用于存储或获取镜像的元数据metadata通过glance-registry可以向数据库中写入或获取镜像的各种数据glance-registry监听端口9191。● Store Adapter是一个存储的接口层通过这个接口glance可以获取镜像image store支持的存储有Amazon的S3、OpenStack本身的Swift本地文件存储和其他分布式存储。3Glance组件的工作过程如图1-4所示介绍了Glance组件在申请镜像时所与OpenStack平台进行交互的流程图。图1-4 glance工作过程3. 创建镜像1下载CirrOS镜像文件CirrOS是一个极小的云操作系统可以使用这个小的操作系统来进行Glance服务组件的操作练习。将提供的cirros-0.6.2-x86_64-disk.img镜像上传到controller节点的root目录下面。[rootcontroller ~]# ll total 20936 -rw-------. 1 root root 1577 Oct 23 2023 anaconda-ks.cfg -rw-r--r--. 1 root root 21430272 Jun 20 17:47 cirros-0.6.2-x86_64-disk.img -rw-r--r--. 1 root root 101 Jun 20 16:01 logininfo.txt将镜像上传至controller节点后通过file命令查看镜像文件信息。[rootcontroller ~]# file cirros-0.6.2-x86_64-disk.img cirros-0.6.2-x86_64-disk.img: QEMU QCOW Image (v3), 117440512 bytes2创建镜像通过命令创建镜像命令的格式如下[rootcontroller ~]# glance help image-create usage: glance image-create [--architecture ] [--protected [True|False]] [--name ] [--instance-uuid ] [--min-disk ] [--visibility ] [--kernel-id ] [--tags [ ...]] [--os-version ] [--disk-format ] [--os-distro ] [--id ] [--owner ] [--ramdisk-id ] [--min-ram ] [--container-format ] [--property ] [--file ] [--progress]参数说明--disk-format镜像格式 --container-format 镜像在其他项目中可见性 --progress 显示上传镜像的进度 --file选择本地镜像文件 --name上传后镜像的名称使用镜像cirros-0.6.2-x86_64-disk.img通过命令上传镜像至OpenStack中。[rootcontroller ~]# glance image-create --name cirros-0.6.2 --disk-format qcow2 --container-format bare --progress --file cirros-0.6.2-x86_64-disk.img [] 100% ---------------------------------------------------------------------------------------------------- | Property | Value | ---------------------------------------------------------------------------------------------------- | checksum | c8fc807773e5354afe61636071771906 | | container_format | bare | | created_at | 2024-06-20T09:53:23Z | | disk_format | qcow2 | | id | def65f8d-2a6e-4be0-b05f-15fcd80c26f9 | | min_disk | 0 | | min_ram | 0 | | name | cirros-0.6.2 | | os_hash_algo | sha512 | | os_hash_value | 1103b92ce8ad966e41235a4de260deb791ff571670c0342666c8582fbb9caefe6af07ebb11d34f44 | | | f8414b609b29c1bdf1d72ffa6faa39c88e8721d09847952b | | os_hidden | False | | owner | bf368e64a3e64d9c9ae695253f1f3879 | | protected | False | | size | 21430272 | | status | active | | tags | [] | | updated_at | 2024-06-20T09:53:24Z | | virtual_size | Not available | | visibility | shared | ----------------------------------------------------------------------------------------------------4. 管理镜像1查看镜像通过命令可以在OpenStack平台中查看当前glance中所上传的镜像名称。具体命令如下[rootcontroller ~]# glance image-list ---------------------------------------------------- | ID | Name | ---------------------------------------------------- | def65f8d-2a6e-4be0-b05f-15fcd80c26f9 | cirros-0.6.2 | ----------------------------------------------------也可以使用命令查看镜像的详细信息。具体命令如下[rootcontroller ~]# glance image-show def65f8d-2a6e-4be0-b05f-15fcd80c26f9 ---------------------------------------------------------------------------------------------------- | Property | Value | ---------------------------------------------------------------------------------------------------- | checksum | c8fc807773e5354afe61636071771906 | | container_format | bare | | created_at | 2024-06-20T09:53:23Z | | disk_format | qcow2 | | id | def65f8d-2a6e-4be0-b05f-15fcd80c26f9 | | min_disk | 0 | | min_ram | 0 | | name | cirros-0.6.2 | | os_hash_algo | sha512 | | os_hash_value | 1103b92ce8ad966e41235a4de260deb791ff571670c0342666c8582fbb9caefe6af07ebb11d34f44 | | | f8414b609b29c1bdf1d72ffa6faa39c88e8721d09847952b | | os_hidden | False | | owner | bf368e64a3e64d9c9ae695253f1f3879 | | protected | False | | size | 21430272 | | status | active | | tags | [] | | updated_at | 2024-06-20T09:53:24Z | | virtual_size | Not available | | visibility | shared | ----------------------------------------------------------------------------------------------------2修改镜像可以使用glance image-update更新镜像信息命令的格式如下[rootcontroller ~]# glance help image-update usage: glance image-update [--architecture ] [--protected [True|False]] [--name ] [--instance-uuid ] [--min-disk ] [--visibility ] [--kernel-id ] [--os-version ] [--disk-format ] [--os-distro ] [--owner ] [--ramdisk-id ] [--min-ram ] [--container-format ] [--property ] [--remove-property key]参数说明--min-disk镜像启动最小硬盘大小 --name镜像名称 --disk-format镜像格式 --min-ram镜像启动最小内存大小 --container-format镜像在项目中可见性如果需要改变镜像启动硬盘最低要求值min-disk1Gmin-disk默认单位为G。使用glance image-update更新镜像信息操作如下。[rootcontroller ~]# glance image-update --min-disk1 def65f8d-2a6e-4be0-b05f-15fcd80c26f9 ---------------------------------------------------------------------------------------------------- | Property | Value | ---------------------------------------------------------------------------------------------------- | checksum | c8fc807773e5354afe61636071771906 | | container_format | bare | | created_at | 2024-06-20T09:53:23Z | | disk_format | qcow2 | | id | def65f8d-2a6e-4be0-b05f-15fcd80c26f9 | | min_disk | 1 | | min_ram | 0 | | name | cirros-0.6.2 | | os_hash_algo | sha512 | | os_hash_value | 1103b92ce8ad966e41235a4de260deb791ff571670c0342666c8582fbb9caefe6af07ebb11d34f44 | | | f8414b609b29c1bdf1d72ffa6faa39c88e8721d09847952b | | os_hidden | False | | owner | bf368e64a3e64d9c9ae695253f1f3879 | | protected | False | | size | 21430272 | | status | active | | tags | [] | | updated_at | 2024-06-20T09:56:17Z | | virtual_size | Not available | | visibility | shared | ----------------------------------------------------------------------------------------------------也可以使用命令更新镜像启动内存最低要求值min-ram为1Gmin-ram默认单位为M。使用glance image-update更新镜像信息操作如下[rootcontroller ~]# glance image-update --min-ram1024 def65f8d-2a6e-4be0-b05f-15fcd80c26f9 ---------------------------------------------------------------------------------------------------- | Property | Value | ---------------------------------------------------------------------------------------------------- | checksum | c8fc807773e5354afe61636071771906 | | container_format | bare | | created_at | 2024-06-20T09:53:23Z | | disk_format | qcow2 | | id | def65f8d-2a6e-4be0-b05f-15fcd80c26f9 | | min_disk | 1 | | min_ram | 1024 | | name | cirros-0.6.2 | | os_hash_algo | sha512 | | os_hash_value | 1103b92ce8ad966e41235a4de260deb791ff571670c0342666c8582fbb9caefe6af07ebb11d34f44 | | | f8414b609b29c1bdf1d72ffa6faa39c88e8721d09847952b | | os_hidden | False | | owner | bf368e64a3e64d9c9ae695253f1f3879 | | protected | False | | size | 21430272 | | status | active | | tags | [] | | updated_at | 2024-06-20T09:57:18Z | | virtual_size | Not available | | visibility | shared | ----------------------------------------------------------------------------------------------------3删除镜像可以使用glance image-delete删除上传至OpenStack平台中的镜像使用命令格式如下[rootcontroller ~]# glance help image-delete usage: glance image-delete [ ...] Delete specified image. Positional arguments: ID of image(s) to delete. Run glance --os-image-api-version 1 help image-delete for v1 help只需要在命令后跟上镜像ID即可。命令如下[rootcontroller ~]# glance image-delete def65f8d-2a6e-4be0-b05f-15fcd80c26f9 [rootcontroller ~]# glance image-list ---------- | ID | Name | ---------- ----------

相关新闻

AS| (二)Android Studio快捷键【JetBrains家族】

AS| (二)Android Studio快捷键【JetBrains家族】

目录 一、JetBrains IDE (一)什么是IDE? (二)JetBrains家族 ​编辑 二、Android Studio快捷键 (一)快捷键方案 (二)快捷键修改 (三)快捷键…

2026/7/28 10:57:13 阅读更多 →
windows环境下基于3DSlicer 源代码编译搭建工程开发环境详细操作过程和中间关键错误解决方法说明

windows环境下基于3DSlicer 源代码编译搭建工程开发环境详细操作过程和中间关键错误解决方法说明

说明: 该文档适用于  首次/重新 搭建3D-Slicer工程环境  Clean up(非增量) 编译生成 1. 3D-slicer 软件介绍 (1)3D Slicer为处理MRI\CT等图像数据软件,可以实行基于MRI图像数据的目标分割、标记测量、坐…

2026/7/28 10:57:12 阅读更多 →
MATLAB实现时间序列预测:LS-SVM与改进PSO优化

MATLAB实现时间序列预测:LS-SVM与改进PSO优化

1. 项目概述:时间序列预测的MATLAB实现方案时间序列预测是数据分析领域的核心课题,在金融、气象、工业控制等领域具有广泛应用价值。这个项目聚焦三种基于支持向量机的预测方法:传统最小二乘支持向量机(LS-SVM)、结合粒…

2026/7/28 10:57:12 阅读更多 →

最新新闻

物联网设备硬件级安全方案:SE050与STM32F373RC实战

物联网设备硬件级安全方案:SE050与STM32F373RC实战

1. 为什么物联网设备需要硬件级安全方案在2023年某智能家居厂商的大规模数据泄露事件中,攻击者通过破解设备固件签名机制,远程控制了超过10万台智能门锁。这个典型案例揭示了当前物联网安全的三大痛点:传统MCU的软件加密方案存在被暴力破解的…

2026/7/28 11:13:20 阅读更多 →
STM32CubeMX系列04——串口(查询、中断、DMA、不定长接收、重定向)

STM32CubeMX系列04——串口(查询、中断、DMA、不定长接收、重定向)

文章目录1. 所用硬件2. 生成工程2.1. 创建工程选择主控2.2. 系统配置2.3. 配置工程目录2.4. 配置用到的外设3. 查询模式3.1. 配置串口3.2. 生成代码3.3. 编写代码3.4. 效果验证4. 中断模式4.1. 配置串口4.2. 生成代码4.3. 运行原理及代码分析4.4. 效果验证5. DMA模式5.1. 配置串…

2026/7/28 11:13:20 阅读更多 →
DS-Mysql数据库主主出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法

DS-Mysql数据库主主出现Slave_SQL_Running:no和slave_io_running:no问题的解决方法

阅读目录: 一、问题描述: 二、Slave两个关键进程 三、如果是Slave_SQL_Running:no: 四、如果是slave_io_running:no 正文: 一、问题描述: 当我们配置好MySQL主主同步时,是可以实现主…

2026/7/28 11:13:20 阅读更多 →
Java 引用

Java 引用

目录一、引用定义二、浅拷贝和深拷贝1.引用拷贝2.深拷贝一、引用定义 引用(Reference)记录的是对象在堆空间中的内存地址,因为Java是值传递,所以引用存储的是内存地址,根据内存地址的编码位数分为32位和64位操作系统&…

2026/7/28 11:13:20 阅读更多 →
微波网络参数与级联计算技术详解

微波网络参数与级联计算技术详解

1. 微波网络参数的基础概念微波网络参数是描述微波系统中信号传输特性的核心工具。在射频和微波工程领域,我们常用散射参数(S参数)、阻抗参数(Z参数)、导纳参数(Y参数)和ABCD参数等来描述二端口…

2026/7/28 11:13:20 阅读更多 →
NISP二级/CISP笔记

NISP二级/CISP笔记

信息安全保护的内容信息系统及其中的数据 狭义的信息安全:建立在IT技术为主的安全范畴 广义的信息安全问题:跨学科领域的安全问题,根本目的是保证组织业务可持续运行,建立在整改生命周期中所关联的人、事、物的基础上综合考虑人、技术、关联和、过程控制 特征:动态性、无边…

2026/7/28 11:12:18 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/27 4:33:59 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻