OpenStack(三)——Glance组件
生活随笔
收集整理的這篇文章主要介紹了
OpenStack(三)——Glance组件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
OpenStack(三)——Glance組件
- 一、Glance 鏡像服務
- 1、鏡像
- 2、鏡像服務的主要功能
- 3、Image API 的版本
- 4、鏡像格式
- ①、虛擬機鏡像文件磁盤格式
- ②、鏡像文件容器格式
- 5、鏡像狀態1
- 6、鏡像狀態2
- 7、訪問權限
- 二、Glance 架構
一、Glance 鏡像服務
- 它在 OpenStack 中的項目名稱為 Glance 。在早期的 OpenStack 版本中,Glance只有管理鏡像的功能,并不具備鏡像存儲功能。現在,Glance 已發展成集鏡像上傳、檢索、管理和存儲等多種功能的 OpenStack 核心服務。
1、鏡像
鏡像的英文為lmage,又譯為映象,通常是指一系列文件或一個磁盤驅動器的精確副本。鏡像文件其實和ZIP壓縮包類似,它將特定的一系列文件按照一定的格式制作成單一的文件,以方便用戶下載和使用。
2、鏡像服務的主要功能
- 鏡像服務就是用來管理鏡像的,讓用戶能夠發現、獲取和保存鏡像。
- 在OpenStack中提供鏡像服務的是Glance,其主要功能如下:
- 查詢和獲取鏡像的元數據和鏡像本身
- 注冊和上傳虛擬機鏡像,包括鏡像的創建、上傳、下載和管理
- 維護鏡像信息,包括元數據和鏡像本身。
- 支持多種方式存儲鏡像,包括普通的文件系統、Swift、Amazon S3等
- 對虛擬機實例執行創建快照命令來創建新的鏡像,或者備份虛擬機的狀態。
3、Image API 的版本
- Glance提供的 RESTful API 目前有兩個版本:API v1 和 API v2
- v1 只提供基本的鏡像和成員操作功能,包括鏡像創建、刪除、下載、列表、詳細信息查詢、更新,以及鏡像租戶成員的創建、刪除和列表。
- v2 除了支持 v1 的所有功能外,主要增加了鏡像位置的添加、刪除、修改,元數據和名稱空間操作,以及鏡像標記操作。
4、鏡像格式
①、虛擬機鏡像文件磁盤格式
- raw:無結構的磁盤格式
- vhd:該格式通用于VMware、Xen、VirtualBox以及其他虛擬機管理程序
- vhdx:vhd格式的增強版本,支持更大的磁盤尺寸vmdk一種比較通用的虛擬機磁盤格式
- vdi:由VirtualBox虛擬機監控程序和QEMU仿真器支持的磁盤格式
- iso:用于光盤(CD-ROM)數據內容的檔案格式
- ploop:由Virtuozzo支持,用于運行OS容器的磁盤格式
- qcow2:由QEMU仿真支持,可動態擴展,支持寫時復制(Copy on Write)的磁盤格式
- aki:在Glance中存儲的Amazon內核格式
- ari:在Glance中存儲的Amazon虛擬內存盤(Ramdisk)格式
- ami:在Glance中存儲的Amazon機器格式
②、鏡像文件容器格式
- bare:沒有容器或元數據“信封"的鏡像
- ovt:開放虛擬化格式
- ova:在Glance中存儲的開放虛擬化設備格式
- aki:在Glance中存儲的Amazon內核格式
- ari:在Glance中存儲的Amazon虛擬內存盤(Ramdisk)格式
- Docker:在Glance中存儲的容器文件系統的Dockerd的tar檔案
如果不能確定選擇哪種容器格式,那么簡單地容器格式指定為bare是安全
5、鏡像狀態1
- queued:這是一種初始化狀態,鏡像文件剛被創建,在Glance數據庫只有其元數據,鏡像數據還沒有上傳至數據庫中
- saving:是鏡像的原始數據在上傳到數據庫中的一種過渡狀態,表示正在上傳鏡像
- uploading:指示已進行導入數據提交調用,此狀態下不允許調用PUT/file (saving狀態會執行PUT/file,這是另外一種上傳的方法)
- importing:指示已經完成導入調用,但是鏡像還未準備好使用
6、鏡像狀態2
- active:表示當鏡像數據成功上傳完畢,成為Glance中可用的鏡像
- deactivated:表示任何非管理員用戶都無權訪問鏡像數據,禁止下載鏡像,也禁止鏡像導出和鏡像克隆之類的操作(只有管理員可以操作,維護)
- killed: 表示鏡像上傳過程中發生錯誤,鏡像不可讀
- deleted:鏡像將在不久后被自動刪除,該鏡像不可再用,但是目前Glance仍然保留該鏡像的相關信息和原始數據
- ending_delete:與deleted相似,Glance還沒有清除鏡像數據,但處于該狀態的鏡像不可恢復
7、訪問權限
- Public(公共的):可以被所有的項目使用
- Private(私有的):只有被鏡像所有者所在的項目使用
- Shared(共享的):一個非共有的鏡像可以共享給其他項目,這是通過項目成員(member-*)操作來實現的
- Protected(受保護的):這種鏡像不能被刪除
二、Glance 架構
- 客戶端是 Glance 服務應用程序使用者,是 OpenStack 命令行工具、Horizon或Nova服務
- glance-api 是系統后臺運行的服務進程,是進入 Glance 的入口。它對外提供 REST API,負責接收用戶的 RESTful 請求,響應鏡像查詢、獲取和存儲的調用。
- glance-registry 是系統后臺運行的 glance 注冊服務進程,負責處理與鏡像元數據相關的 RESTful 請求,元數據包括鏡像大小、類型等信息。Glance-api 接收的請求如果是與鏡像的元數據相關的操作,glance-api會把請求轉發給glance-registry。glance-registry會解析請求內容,并與數據庫交互,存儲、處理、檢索鏡像的元數據。
- Glance 的 DB 模塊存儲的是鏡像的元數據,可以選用MYSQL、MariaDB、SQLite 等數據庫。鏡像的元數據通過glance-registry存放在數據庫中。注意,鏡像本身(chunk數據)是通過glance存儲驅動存放到各種存儲后端中的。
- 存儲后端(Store Backend) Glance自身并不存儲鏡像,它將鏡像存放在后端存儲系統中。鏡像本身的數據通過glance_store存放在各種后端,并可從中獲取。支持本地存儲、對象存儲、RBD塊設備、Sheepdog分布式存儲、Cinder塊存儲VMware數據存儲。
- 具體使用哪種 backend,是在 /etc/qlance/qlance-api.conf 中配置的
總結
以上是生活随笔為你收集整理的OpenStack(三)——Glance组件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2G内存也能畅玩CODOL!低配电脑如何
- 下一篇: 传统公司部署OpenStack(t版)简