Glance是Openstack的鏡像服務(wù),主要為虛擬機(jī)提供鏡像(image)含思。
什么是虛擬機(jī)鏡像
虛擬機(jī)鏡像是一個(gè)單獨(dú)的文件蔗衡,它是包含一個(gè)可引導(dǎo)的操作系統(tǒng)的虛擬磁盤再榄。虛擬機(jī)磁盤有多種文件格式苗胀,常見的鏡像文件格式如下:
- AKI/AMI/ARI - AWS的EC2默認(rèn)的文件格式,它包含三部分:
- AKI(Amazon Kernel Image)- 虛擬層(hypervisor)的內(nèi)核初始化引導(dǎo)文件襟诸,類似于linux的“vmlinuz”文件。
- AMI(Amazon Machine Image) - 裸格式(raw)的虛擬的鏡像基协。
- ARI (Amazon Ramdisk Image) - 系統(tǒng)引導(dǎo)是可選的一個(gè)內(nèi)存虛擬磁盤歌亲,類似于linux的“inittrd”文件。
- ISO - 一種遵循ISO 9660文件系統(tǒng)規(guī)范的CD和DVD常用的磁盤格式澜驮。
- OVF - DMTF標(biāo)準(zhǔn)組織定義的虛擬機(jī)封裝格式应结。一個(gè)OVF包里打包了鏡像文件、XML格式的.ovf metadata文件泉唁。OVF格式有多種表現(xiàn)方式,可以是離散的文件揩慕、tar包或者.ova文件亭畜。openstack不直接支持OVF格式,但是可以將OVF包里的鏡像文件解壓出來使用迎卤。
- QCOW2 - KVM hypervisor最常用的文件格式拴鸵。相比于raw格式,它有以下優(yōu)勢(shì):
- 使用稀疏模式蜗搔,占用更少的磁盤空間
- 支持快照(snapshots)
- Raw - 最簡單的文件格式劲藐,KVM和Xen默認(rèn)支持的文件格式。
- VDI - Virtual-Box使用的鏡像文件格式樟凄。Openstack不直接支持該文件格式聘芜,您需要手動(dòng)的將這種鏡像轉(zhuǎn)換成openstack支持的鏡像格式。
- VHD/VHDK - 微軟Hyper-V使用的鏡像文件格式缝龄。
- VMDK VMware ESXI 使用的鏡像文件格式汰现。
鏡像的磁盤和容器的文件格式
當(dāng)你安裝了glance服務(wù),你可以為鏡像服務(wù)指定磁盤(disk)和容器(container)文件格式叔壤。
disk文件格式
disk format是虛擬機(jī)鏡像的底層磁盤格式瞎饲,虛擬設(shè)備供應(yīng)商對(duì)于虛擬機(jī)磁盤映像中包含的信息提供有不同的文件格式,常見的有:
- aki/ami/ari
- iso
- qcow2
- raw
- vdi
- vhd/vhdx
- vmdx
container文件格式
container format 指定虛擬機(jī)鏡像是否包含元數(shù)據(jù),
openstack當(dāng)前還不支持容器格式炼绘,如果你不確定的話請(qǐng)將容器格式設(shè)置為“bare”嗅战。
常見的容器格式有:
- aki/ami/ari
- bare - 鏡像沒有包含容器或者元數(shù)據(jù)
- docker
- ova
- ovf
我們會(huì)在以后單獨(dú)專門討論openstack的metadata服務(wù)。
獲取鏡像
最簡單獲取鏡像的方式是下載各個(gè)運(yùn)營商已經(jīng)創(chuàng)建的好的鏡像俺亮,大多數(shù)鏡像里已經(jīng)包括了“cloud-init”包驮捍,這個(gè)包主要用來注入ssh秘鑰以及用戶定制化配置疟呐。
CentOS 6 鏡像下載地址
CentOS 7 鏡像下載地址
cirros 鏡像下載地址
Debian 鏡像下載地址
Fedora 鏡像下載地址
Microsoft Windows 鏡像下載地址
Ubuntu 鏡像下載地址
openSUSE 鏡像下載地址
Red Hat 6 鏡像下載地址
Red Hat 7 鏡像下載地址
自定義鏡像
當(dāng)您決定自定義鏡像時(shí),你需要做以下工作以保證Openstack的功能正常:
- 引導(dǎo)時(shí)厌漂,支持磁盤分區(qū)和調(diào)整根分區(qū)(cloud-init)
- 沒有硬編碼的MAC地址信息
- SSH服務(wù)已開啟
- 使用公鑰登錄虛擬機(jī)(cloud-init)
- 可注入用戶數(shù)據(jù)和其他元數(shù)據(jù)(cloud-init)
- Xen支持的linux內(nèi)核版本(Xen只支持3.0以下的linux內(nèi)核)
- 關(guān)閉防火墻
cloud_init 的RedHat參考文檔 http://cloudinit.readthedocs.io/en/latest/index.html
_cloud_init 的Ubuntu參考文檔 https://help.ubuntu.com/community/CloudInit _