OpenStack----glance 鏡像服務基礎理論

前言:

本篇博客爲OpenStack—glance組件基礎理論,之後會持續更新~~

一、Glance簡介

  • glance 鏡像服務允許用戶去發現、註冊和獲取虛擬機鏡像。他提供了一個rest api(交互接口),允許查詢虛擬機鏡像的元數據,並獲取一個現存的鏡像。
  • glance可以將虛擬機鏡像存放到各種位置,從簡單的文件系統到對象存儲系統,如openstack的swift對象存儲服務項目,默認是存儲在本地文件系統上的。
  • 在生產環境中這個模塊本身不會存儲大量的數據,需要掛載後臺存儲swift來存放實際的鏡像數據
  • 在openstack環境中,鏡像是用於在計算節點生成虛擬機。脫離了鏡像服務,就無法創建虛擬機,所以鏡像服務是openstack的一個核心服務

二、Glance主要組件及功能

  • glance-api

    glance-api 用於接收鏡像API的調用,諸如鏡像發現、恢復及存儲等,作爲一個後臺進程,glance-api對外提供rest api接口,響應用戶發起的鏡像查詢,獲取和存儲的調用

  • glance-registry

    glance-registry用於存儲、處理和恢復鏡像的元數據,元數據包括鏡像的大小和類型等屬性,registry是一個內部服務接口,不建議暴露給普通用戶

  • database

    database用於存放鏡像的元數據,可以根據需要選擇數據庫,如MySQL、SQLite等

  • storage repository for image files(鏡像儲藏庫)

    一般情況,glance不需要存儲任何鏡像,而是將鏡像存儲在後端倉庫中。

    glacne 支持多種倉庫,例如:Swift、cinder、vmware的ESX、vCenter、亞馬遜S3、HTTP可用服務器、ceph等等

三、鏡像格式

  • Glance支持多種鏡像格式,包括磁盤格式和容器格式,常見的格式包括以下幾種:

  • ① RAW

    RAW是一種沒有格式或裸格式的磁盤文件類型,RAW對數據不做任何修飾或處理,直接保存最原始的狀態,所以在性能方面非常出色。由於RAW格式保存原始數據,因此更容易和其他鏡像格式進行轉換

  • ② QCOW2

    QCOW2是QCOW的升級版本,其主要特性是磁盤文件大小可以動態按需增長,並且不會佔用所有的實際磁盤空間大小。與RAW相比,使用這種格式可以節省磁盤容量。

  • ③ VHD

    VHD是微軟公司產品使用的磁盤格式。Virtual PC(微軟早期虛擬產品)和Hyper-V使用的就是VHD格式。Virtual BOX也提供了對VHD的支持。如需在OpenStack上使用的Htper-V類型的虛擬化,就應上傳VHD格式的鏡像文件。

  • ④ VMDK

    VMDK是VMware公司產品使用的磁盤格式。目前也是一個開放的通用格式,除了VMware自家的產品外,QEMU和Virtual BOX也提供了對VMDK格式的支持

  • ⑤ VDI

    VDI是Oracle公司的Virtual BOX虛擬軟件所使用的格式

  • ⑥ ISO

    是指一種存檔數據文件在光盤上的格式

  • ⑦ AKI、ARI、AMI

    Amazon公司的AWS所使用的鏡像格式

四、glance 主要功能與常用命令

4.1 主要功能
  • 提供虛擬機鏡像的存儲,查詢和檢索功能,爲nova進行服務,依賴於存儲服務(存儲鏡像本身)和數據庫服務(存儲鏡像相關的數據)。
4.2 glance 常用管理命令
  • 創建鏡像

    glance image-create --name centos5.8_x86_64 --disk-format=qcow2 --container-format=bare --is-public=True --file=/tmp/centos5.8_x86_64_growroot_1.2_20131231.qcow2

  • 上傳image

    glance add name=“linux 12.04 cloudimg amd64” is_public=true container_format=ovf disk_format=qcow2 < /root/precise-server-cloudimg-amd64-disk1.img

  • 查看glance狀態

    glance image-list

  • 列出鏡像的詳細信息

    glance image-show 0c47db9c-5f74-4544-8ada-0894c1d2c20c

  • 刪除鏡像

    nova image-delete cirros

  • 設置鏡像參數

    openstack image set --property hw_cpu_cores=8 --property hw_cpu_threads=2 --property hw_cpu_sockets=2 --property hw_disk_bus=ide 0215d732-7da9-444e-a7b5-798d38c769b5

    如果無法正常啓動可以設置–property hw_disk_bud=ide參數嘗試

  • 將快照轉爲鏡像

    鏡像默認存儲位置/var/lib/glance/images

    glance image-create --name “CentOS 7” --file 228f7bdc-fcf1-4f6a-8a7a-298b86f9e94b --disk-format qcow2 --container-format bare --visibility public --progress

    glance image-create --name “cirros-raw” --file cirros-0.3.3-x86_64-disk.img --disk-format raw --container-format bare --visibility public --progress

  • 鏡像下載命令

    glance image-download --file /root/centos7-7.qcow2 c71568de-e37f-49cb-8ab4-01bd0cbbded8

五、小結

  • 傳輸ISO鏡像時,不要在web界面傳,在後臺的控制節點傳,登錄控制節點再使用命令傳

    不同的虛擬化產品能到處不同格式的鏡像,可以通過glance再把這些鏡像導到openstack上,glance的file默認存儲在系統中

    生產環境,一般用的數據比較大,存儲在指定Swift(對象存儲)中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章