OpenStack云計算平臺搭建與管理(openEuler)(微課版) 教案 第12講 OpenStack的鏡像管理專家-Glance_第1頁
OpenStack云計算平臺搭建與管理(openEuler)(微課版) 教案 第12講 OpenStack的鏡像管理專家-Glance_第2頁
OpenStack云計算平臺搭建與管理(openEuler)(微課版) 教案 第12講 OpenStack的鏡像管理專家-Glance_第3頁
OpenStack云計算平臺搭建與管理(openEuler)(微課版) 教案 第12講 OpenStack的鏡像管理專家-Glance_第4頁
OpenStack云計算平臺搭建與管理(openEuler)(微課版) 教案 第12講 OpenStack的鏡像管理專家-Glance_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

PAGE76云計算基礎(chǔ)平臺搭建與應(yīng)用課程教案授課題目:第12講OpenStack的鏡像管理專家——Glance教學(xué)時數(shù):2授課類型:R理論課R實踐課教學(xué)目的、要求:了解Glance的功能了解Glance的組件構(gòu)成及功能了解Glance的基本工作過程能夠安裝配置Glance鏡像組件教學(xué)重點:Glance的組件構(gòu)成及基本工作過程安裝配置Glance服務(wù)教學(xué)方法和手段:通過微課講解跟著視頻實作教學(xué)條件:網(wǎng)課參考資料:

云計算基礎(chǔ)平臺搭建與應(yīng)用課程教案教學(xué)內(nèi)容及過程旁批課前準(zhǔn)備:檢查自己前面的系統(tǒng)配置是否完全完成,必須完成后才能進入這一段學(xué)習(xí)。教學(xué)引入:IaaS云平臺對外提供云主機服務(wù),這些云主機和我們自己的電腦一樣,需要安裝操作系統(tǒng)。在OpenStack中負責(zé)操作系統(tǒng)鏡像管理、快照拍攝等工作的組件就是Glance?;贠penStack構(gòu)建的IaaS云平臺主要對外提供租用虛擬機服務(wù)。虛擬機和電腦一樣需要安裝操作系統(tǒng)才能夠使用。虛擬機的操作系統(tǒng)是以鏡像(Image)的方式存在,由Glance組件進行管理,Glance組件可以實現(xiàn)對鏡像的檢索、創(chuàng)建、上傳、刪除等操作。教學(xué)內(nèi)容與教學(xué)設(shè)計:12.1Glance的基本概念12.1.1鏡像服務(wù)(Imageservice)什么是鏡像(Image)鏡像(Image)是云平臺中虛擬機的操作系統(tǒng)安裝與備份解決方案。在傳統(tǒng)IT環(huán)境下,我們是如何給計算機安裝一個操作系統(tǒng)呢?用安裝CD或者U盤安裝?或者用Ghost等克隆工具從克隆文件中恢復(fù)?這些方法都存在安裝效率低、時間長、安裝或者恢復(fù)完成后要重新配置網(wǎng)絡(luò)環(huán)境等。而云計算IaaS平臺可能有成千上萬人同時使用,需要一個幾秒鐘之內(nèi)完成系統(tǒng)安裝并可以根據(jù)需求動態(tài)批量產(chǎn)生安裝好系統(tǒng)的虛擬機、秒級備份和還原的解決方案,這就是鏡像(Image)提供的服務(wù)。鏡像(Image)是一個模板,里面包含了基本的操作系統(tǒng)和其他軟件,類似于利用Ghost克隆系統(tǒng),只是它更加高效。舉例來說,有家公司需要為每個員工在云端分配一個虛擬機用于辦公,這個虛擬機一般需要一個Win10系統(tǒng)再加office辦公軟件。那么在OpenStack平臺上是進行如下操作的:手動為一個虛擬機安裝好一個系統(tǒng)這個安裝過程和傳統(tǒng)的安裝電腦操作系統(tǒng)并沒有太大不同,也需要手工安裝,會花去相當(dāng)長時間。獲得虛擬機鏡像(Image)對安裝好的虛擬機執(zhí)行拍攝快照(Snapshot),這就得到了一個鏡像(Image)。得到鏡像后,其后的工作就和傳統(tǒng)安裝系統(tǒng)非常的不同了。利用鏡像創(chuàng)建新的虛擬機實例(Instance)當(dāng)需要一個或者多個新的虛擬機時,只要用該Image去生成一個或者多個虛擬機實例(Instance)就可以了。這一步執(zhí)行非常的快,可以在秒級時間里同時批量生成多個虛擬機。在已有實例基礎(chǔ)上拍攝快照獲得鏡像如果現(xiàn)在需要新安裝一套軟件而不想做①的新安裝系統(tǒng)操作,此時只需要在任意員工現(xiàn)有的虛擬機上安裝好該軟件,然后對該虛擬機執(zhí)行拍攝快照(Snapshot),得到新的鏡像(Image),以后直接使用新Image創(chuàng)建虛擬機就可以了。鏡像服務(wù)組件GlanceGlance是鏡像服務(wù)(Imageservice)的項目代號,是OpenStack的核心組件。它和KeyStone一樣是一個支持WSGI協(xié)議的Web服務(wù),用戶可以通過Web訪問或者用命令行操作Glance對Image進行管理,其功能包括虛擬機鏡像和快照的注冊、檢索、刪除、權(quán)限管理等。Glance支持多種方式存儲Image,包括普通的文件系統(tǒng)、Swift(OpenStack的對象存儲)、S3(亞馬遜云對象存儲格式)等。它主要負責(zé)對兩種鏡像數(shù)據(jù)的管理:鏡像元數(shù)據(jù)(metadata):存在數(shù)據(jù)庫中的關(guān)于鏡像的相關(guān)信息,如文件名、大小、狀態(tài)等字符串信息,用于快速檢索。鏡像數(shù)據(jù):即鏡像文件本身,它存儲于后端存儲里,所謂的后端存儲就是第三方的存儲系統(tǒng),如默認的文件系統(tǒng)、Swift、S3、Cinder等。12.1.2Glance的組件的架構(gòu)如圖12.1所示,在OpenStackTrain版中Glance組件為V2版,它由應(yīng)用接口和存儲接口兩個模塊構(gòu)成。圖12.1Glance基本架構(gòu)應(yīng)用接口(Glance-API)提供對外服務(wù)接口。如果服務(wù)請求是對元數(shù)據(jù)的操作,則與數(shù)據(jù)庫進行交互,實現(xiàn)檢索、存儲、獲取鏡像的元數(shù)據(jù)。如果是對鏡像(Image)數(shù)據(jù)的操作將會通過存儲接口(GlanceStore)調(diào)用后端存儲(StoreBackEnd)的相應(yīng)驅(qū)動,完成具體鏡像文件的上傳、刪除、查詢等操作。存儲接口(GlanceStore)它是一個接口層,提供鏡像文件存儲和查詢的接口。它里面包含有對鏡像文件的各種操作方法,但是具體的鏡像文件操作實施則需要調(diào)用后端存儲(StoreBackEnd)中的具體文件系統(tǒng)(Swift、S3、Cinder等)來處理。后端存儲(StoreBackEnd)后端存儲不屬于Glance的組件,它獨立于Glance。Glance自己并不存儲鏡像,真正的鏡像文件是存放在后端存儲中的,Glance支持多種后端存儲,如表12.1所示為部分支持的存儲系統(tǒng)。表12.1Glance支持的部分存儲系統(tǒng)支持的存儲系統(tǒng)簡介本地文件系統(tǒng)(FileSystem)這是默認配置,在本地的文件系統(tǒng)里進行保存鏡像。GridFS一種文件存儲系統(tǒng),使用MongoDB數(shù)據(jù)庫存儲鏡像。CephRBDCeph分布式系統(tǒng)的RBD塊存儲系統(tǒng)。AmazonS3亞馬遜云的S3存儲系統(tǒng)。Sheepdog專為QEMU/KVM提供的一個分布式存儲系統(tǒng)。CinderOpenStack的塊存儲系統(tǒng)。SwiftOpenStack的對象存儲系統(tǒng)。具體OpenStack使用哪種存儲后端,可以在“/etc/glance/glance-api.conf”這個配置文件中根據(jù)具體需要指定。12.1.3Glance的工作流程圖12.2請求鏡像流程示例如圖12.2所示,這是計算組件(Nova)在生成虛擬機實例時從Glance獲得鏡像的一個過程。所有對Glance合法的請求都會通過Glance-API這個入口,如果是對鏡像元數(shù)據(jù)(Imagemetadata)的處理請求,Glance-API會與數(shù)據(jù)庫(GlanceDB)交互進行處理。而所有的鏡像文件操作都是通過調(diào)用存儲接口(GlanceStore)執(zhí)行的,它負責(zé)與外部存儲端和(或)本地文件系統(tǒng)的交互。12.1.4磁盤(Disk)與容器(Container)磁盤格式(Diskformat)Glance中的磁盤格式指的是虛擬機鏡像的磁盤格式,可以直觀理解為鏡像文件的后綴名。在虛擬機的創(chuàng)建時,需要指定鏡像的磁盤格式。表12.2是Glance支持的鏡像磁盤格式。表12.2Glance常見磁盤格式格式類型格式描述raw無結(jié)構(gòu)的磁盤格式vhd通用的虛擬機磁盤格式,適用于VMware、Xen、Microsoft、VirtualBox等虛擬機vmdk和vhd類似的一種通用虛擬機磁盤格式vdiVirtualBox和Qemu支持的一種磁盤格式iso光盤數(shù)據(jù)格式qcow2Qemu支持的一種動態(tài)可擴展的磁盤格式ami、ari、aki亞馬遜的鏡像格式,分別表示machine,ramdisk,kernel鏡像容器格式(Containerformat)容器格式我們可以理解為把鏡像元數(shù)據(jù)、用戶自定義數(shù)據(jù)和鏡像數(shù)據(jù)同時裝載于一個“容器”中重新打包的格式。在虛擬鏡像文件創(chuàng)建的時候,需要管理員指定鏡像的容器格式(Containerformat)。表12.3是常見的容器格式。表12.3常見容器格式格式類型格式描述bare沒有容器的一種鏡像元數(shù)據(jù)格式,OpenStack通常采用的一種格式ovf開放虛擬化格式(openvirtualizationformat)ova開放虛擬化設(shè)備(openvirtualizationappliance)格式12.2安裝與配置Glance鏡像服務(wù)12.2.1安裝和配置Glance安裝Glance軟件包[root@controller~]#yuminstallopenstack-glance-y安裝openstack-glance服務(wù),會自動在Linux中生成一個名為“glance”的用戶和同名用戶組。[root@controller~]#cat/etc/passwd|grepglance#查看是否存在glance用戶我們會得到passwd文件里所有含有“glance”字符串的行,比如下面的結(jié)果:glance:x:161:161:OpenStackGlanceDaemons:/var/lib/glance:/sbin/nologin如果查詢出來如上的結(jié)果就說明系統(tǒng)中存在名為“glance”的用戶。[root@controller~]#cat/etc/group|grepglance#查看是否存在glance用戶組得到如下面的結(jié)果:glance:x:161:說明已經(jīng)存在glance用戶組。創(chuàng)建一個glance數(shù)據(jù)庫并授權(quán)進入數(shù)據(jù)庫[root@controller~]#mysql-uroot-p000000因為MariaDB數(shù)據(jù)庫完全兼容MySql數(shù)據(jù)庫,因此在使用方式上是與MySql數(shù)據(jù)庫是一樣的。該命令的參數(shù)u后為用戶名,p后為密碼,不需要空格。建立glance數(shù)據(jù)庫MariaDB[(none)]>CREATEDATABASEglance;#創(chuàng)建一個名為glance的數(shù)據(jù)庫【提示】SQL命令需要;作為結(jié)束符,不要忘記。這里創(chuàng)建的glance數(shù)據(jù)庫用于存儲鏡像元數(shù)據(jù)。為數(shù)據(jù)庫授權(quán)MariaDB[(none)]>GRANTALLPRIVILEGESONglance.*TO'glance'@'localhost'IDENTIFIEDBY'GLANCE_DBPASS';MariaDB[(none)]>GRANTALLPRIVILEGESONglance.*TO'glance'@'%'IDENTIFIEDBY'GLANCE_DBPASS';上面兩條語句將glance數(shù)據(jù)庫所有表(glance.*)的所有權(quán)限(ALLPRIVILEGES)賦予主機名為localhost(‘localhost’)及任意遠程主機(‘%’)中名為“glance”的用戶(‘glance’),驗證密碼為GLANCE_DBPASS(‘GLANCE_DBPASS')?!咎崾尽窟@里的密碼可以根據(jù)實際需要設(shè)置,但是需要自己記住喲。退出數(shù)據(jù)庫MariaDB[(none)]>exit;修改Glance配置文件文件“/etc/glance/glance-api.conf”就是“Glance-API”的配置文件。備份配置文件[root@controller~]#cp/etc/glance/glance-api.conf/etc/glance/glance-api.conf.bak去掉所有注釋,生成新的配置文件[root@controller~]#grep-Ev'^$|#'/etc/glance/glance-api.conf.bak>/etc/glance/glance-api.conf由于“glance-api.conf”原有注釋非常多,我們直接用vi進行編輯比較麻煩,所以在這里我們采用正則表達式的方法先將注釋去掉再進行編輯。此命令行中的“grep-E”命令就是采用匹配正則表達式的方法去讀取一個文件內(nèi)容。參數(shù)“-v”表示匹配所有不滿足正則表達式的。而正則表達式’^$|#’的具體含義為:“^$”匹配空行(^:一行的開頭,$:一行的結(jié)尾),或者(符號|表示或者)第一個字符為“#”的行。因此結(jié)合反向匹配參數(shù)“-v”,我們實際上是匹配了所有不為空和不以注釋“#”開頭的行。然后將結(jié)果寫入(“>”表示寫入)“/etc/glance/glance-api.conf”文件。編輯新的配置文件[root@controller~]#vi/etc/glance/glance-api.conf我們可以看到內(nèi)容中已經(jīng)沒有空行和注釋行的存在了。接下來針對該配置文件進行如下修改:“[database]”部分配置數(shù)據(jù)庫連接信息。[database]connection=mysql+pymysql://glance:GLANCE_DBPASS@controller/glance“[keystone_authtoken]、[paste_deploy]”配置keystone認證服務(wù)信息。[keystone_authtoken]www_authenticate_uri=http://controller:5000auth_url=http://controller:5000memcached_servers=controller:11211auth_type=passwordproject_domain_name=Defaultuser_domain_name=Defaultproject_name=serviceusername=glancepassword=GLANCE_PASS[paste_deploy]flavor=keystone“[glance_store]”部分中,配置本地文件系統(tǒng)存儲和鏡像文件的位置。[glance_store]stores=file,httpdefault_store=file#默認存儲系統(tǒng)為本地文件系統(tǒng)filesystem_store_datadir=/var/lib/glance/images/#鏡像文件實際存儲的目錄這里的“/var/lib/glance/”文件夾是安裝Glance的時候就自動生成并授予了glance用戶權(quán)限的,因此不要更改到其他glance用戶沒有權(quán)限的目錄中去。同步數(shù)據(jù)庫[root@controller~]#su-s/bin/sh-c"glance-managedb_sync"glance用glance用戶去運行“glance-managedb_sync”命令,將數(shù)據(jù)庫文件導(dǎo)入到glance數(shù)據(jù)庫中。檢查同步后的數(shù)據(jù)庫[root@controller~]#mysql-uroot-p000000#進入到數(shù)據(jù)庫MariaDB[(none)]>useglance;#轉(zhuǎn)換到glance數(shù)據(jù)庫MariaDB[glance]>showtables;#查詢該數(shù)據(jù)庫中所有的表可見在glance數(shù)據(jù)庫中已經(jīng)存在數(shù)據(jù)表,則數(shù)據(jù)庫同步成功。12.2.2Glance組件初始化在OpenStack中創(chuàng)建Glance的用戶與角色導(dǎo)入admin環(huán)境變量進行鑒權(quán)[root@controller~]#.admin-openrc在OpenStack中創(chuàng)建用戶“glance”[root@controller~]#openstackusercreate--domaindefault--passwordGLANCE_PASSglance該語句在id為“default”的域中創(chuàng)建了一個名為“glance”,密碼為“GLANCE_PASS”的用戶?!咎崾尽窟@里的用戶名和密碼一定要和“glance-api.conf”中“[keystone_authtoken]”節(jié)里的用戶名和密碼一致。給用戶“glance”設(shè)定admin角色[root@controller~]#openstackroleadd--projectservice--userglanceadmin該語句為glance用戶添加了admin角色,對于service項目來說glance就擁有了管理員權(quán)限。創(chuàng)建服務(wù)實體“glance”[root@controller~]#openstackservicecreate--nameglanceimage該語句創(chuàng)建了一個名為“glance”,類型為“image”的服務(wù)。創(chuàng)建鏡像服務(wù)的端點(Endpoint)創(chuàng)建為一般用戶訪問鏡像(Image)服務(wù)的端點[root@controller~]#openstackendpointcreate--regionRegionOneimagepublichttp://controller:9292創(chuàng)建為內(nèi)部組件訪問鏡像(Image)服務(wù)的端點[root@controller~]#openstackendpointcreate--regionRegionOneimageinternalhttp://controller:9292創(chuàng)建為admin用戶訪問鏡像(Image)服務(wù)的端點[root@controller~]#openstackendpointcreate--regionRegionOneimageadminhttp://controller:9292啟動Glance鏡像服務(wù)[root@controller~]#systemctlenableopenstack-glance-api#開機啟動[root@controller~]#systemctlstartopenstack-glance-api#立即啟動12.3驗證Glance服務(wù)12.3.1驗證Glance鏡像服務(wù)這里我們采用兩種方式來驗證服務(wù)使用netstat-tnlup查看端口情況由于Glance服務(wù)要占用9292端口,查看9292端口的狀態(tài)就可以判斷服務(wù)是否運行。[root@controller~]#netstat-tnlup用systemctlstatus查看服務(wù)運行狀態(tài)[root@controller~]#systemctlstatusopenstack-glance-api用systemctlstatus可以查看指定服務(wù)的狀態(tài),出現(xiàn)enabled和activie(running)時說明運行正常。12.3.2制作鏡像下載Cirros鏡像Cirros是一個很小的Linux操作系統(tǒng),可以下載它進行測試。如果無法上互聯(lián)網(wǎng),本書附送的軟件資源也提供了該鏡像。官方下載地址為/。如圖12.3,我們可以任選一個版本進行下載。圖12.3官網(wǎng)下載Cirros鏡像選擇文件名含有“x86_64-disk”的文件進行下載。下載后通過MobaXterm的文件上傳功能傳到控制節(jié)點上,上傳后控制節(jié)點當(dāng)前目錄下已經(jīng)有了對應(yīng)的鏡像文件。制作鏡像[root@controller~]#openstackimagecreate--filecirros-0.5.1-x86_64-disk.img--disk-formatqcow2--container-formatbare--publiccirros該命令采用了“openstackimagecreate”語句創(chuàng)建了一個名為“cirros”的公有(public)鏡像,它是由當(dāng)前目錄的“cirros-0.5.1-x86_64-disk.img”文件制作而成,鏡像的磁盤類型(diskformat)類型為“qcow2”,容器格式(containerformat)為“bare”。查看鏡像查看鏡像列表[root@controller~]#openstackimagelist#查看鏡像列表鏡像創(chuàng)建成功后可以看見狀態(tài)(Status)為有效可用(active)。鏡像的狀態(tài)信息作為元數(shù)據(jù)存放在數(shù)據(jù)庫中,如表12.4所示,我們可以根據(jù)狀態(tài)的描述了解當(dāng)前鏡像的大致情況。表12.4鏡像狀態(tài)描述意義queued表示Glance注冊表中已保留該鏡像標(biāo)識,但還沒有鏡像數(shù)據(jù)上傳到Glance。saving表示鏡像的原始數(shù)據(jù)正在上傳到Glance。active表示在Glance中完全可用的鏡像。deactivated表示不允許任何非管理員用戶訪問鏡像數(shù)據(jù)。killed表示在上載鏡像數(shù)據(jù)期間發(fā)生錯誤,并且鏡像不可讀。deletedGlance保留了關(guān)于鏡像的信息,但不再可用。此狀態(tài)下的鏡像將在以后自動刪除。ending_deleteGlance尚未刪除的鏡像數(shù)據(jù)。處于此狀態(tài)的鏡像無法恢復(fù)。查看鏡像物理文件[root@controller~]#ll/var/lib/glance/images/#查看鏡像的物理文件我們可以看到鏡像的物理文件名和鏡像的ID一樣,并能看到是由glance用戶創(chuàng)建的。作業(yè)和思考題:讓學(xué)生根據(jù)自己做的情況填寫報告自檢表12.1Glance安裝自檢工單檢驗內(nèi)容檢驗方法合格標(biāo)準(zhǔn)檢測結(jié)果失敗原因成功失敗控制節(jié)點是否建立了“glance”用戶運行“cat/etc/passwd|gr

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論