姜新
(華北油田公司數(shù)據(jù)中心,河北 任丘 062552)
利用OpenStack構建私有云計算平臺的過程研究
姜新
(華北油田公司數(shù)據(jù)中心,河北 任丘 062552)
云計算是近幾年來IT領域非常熱門的研究方向,而私有云憑借其安全性、可控性以及有效利用IT設備資源等特性,在云計算領域占據(jù)重要位置。文章詳細介紹了OpenStack開源云計算平臺的架構以及OpenStack的5個功能模塊的關系,并重點介紹了一種基于OpenStack構建私有云的方案。
私有云;OpenStack;構建
1.1 OpenStack簡介
OpenStack是由Rackspace和美國國家航空航天局(NASA)共同開發(fā)的云計算平臺,幫助服務商和企業(yè)內(nèi)部實現(xiàn)類似于Amazon EC2和S3的云基礎架構服務(Infrastructure as a Service,IaaS)。自2010年10月開始,OpenStack至今已經(jīng)發(fā)布了Austin、Bexar、Cactus、Diablo、Essexc以及mitaka 13個版本。由于OpenStack采用Apache 2.0許可證發(fā)布源代碼,因此在短短幾年時間內(nèi)就吸引了IBM、Cisco、HP等150家公司加入。
OpenStack是一個正在開發(fā)中的云計算平臺項目,根據(jù)成熟及重要程度的不同,被分解成核心項目、孵化項目等。它的主要的核心項目包括Nova(計算服務)、Swift(存儲服務)、Glance(鏡像服務)、Keystone(身份服務)、Horizon(UI界面)、Neutron(網(wǎng)絡地址管理)、Cinder(塊存儲服務)、Ceilometer(計量服務)和Heat(編排服務)等等,它們既可以組合在一起聯(lián)合工作,提供完整的云基礎架構服務;又可以獨立工作,分別提供虛擬化、云存儲、鏡像等服務此外,模塊化的設計能把老、舊、第三方的技術集成進來,從而滿足業(yè)務需要,也使得開發(fā)者能夠更容易地對OpenStack進行二次開發(fā)。
1.2 私有云平臺框架
基于OpenStack的開源框架介紹,本文所搭建的私有云計算平臺由計算服務(Nova)、存儲服務(Swift)、鏡像服務(Glance)、身份認證服務(Keystone)、Neutron(網(wǎng)絡地址管理)和Web界而服務(Horizon)共6個部分組成。其中Nova是云平臺的控制器,它提供一個工具部署云,包括運行虛擬化實例、管理網(wǎng)絡以及控制用戶和其他項目對云的訪問。Swift是一個大容量、可擴展的、內(nèi)置冗余和容錯機制的對象存儲系統(tǒng)。對象存儲支持多種應用,比如復制和存檔數(shù)據(jù)、圖像或視頻服務、存儲次級靜態(tài)數(shù)據(jù)、開發(fā)數(shù)據(jù)存儲整合的新應用、存儲容量難以估計的數(shù)據(jù)、為Web應用創(chuàng)建基于云的彈性存儲等。Glance是一個虛擬機鏡像的存儲、查詢和檢索系統(tǒng),服務包括提供Restful API允許用戶查詢VM鏡像元數(shù)據(jù)以及檢索實際的鏡像。Keystone為運行OpenStack Compute上的OpenStack云提供了認證和管理用戶、賬號和角色信息服務,并為OpenStack Object Storage提供授權服務。Neutron為OpenStack其他服務提供網(wǎng)絡連接服務。為用戶提供接口,可以定義Network、Subnet、Router,配置DHCP、DNS、負載均衡、L3服務,還支持GRE、VXLAN。Horizon是提供給用戶來使用云平臺的Web前端界而,用戶可以使用它進行實例、密鑰、彈性塊存儲、鏡像、云存儲以及角色權限等的管理。OpenStack的5個服務的關系。
首先,在OpenStack中用戶可以編寫、重構、發(fā)布自己的項目代碼以及私有軟件,實現(xiàn)最大意義上的開源和共享;其次,OpenStack開源產(chǎn)品可以通過虛擬化技術將硬件和網(wǎng)絡資源提供給用戶,實現(xiàn)服務器資源的高效利用;另外,OpenStack可以通過增加管理層來完成應用搭建、文件檢索以及資源的創(chuàng)建和分配等;最后,OpenStack還可以基于API接口進行二次開發(fā)。
OpenStack主要包含計算、對象存儲、身份認證、儀表盤、塊存儲、網(wǎng)絡和鏡像服務共七個單元,其中計算、對象存儲、身份認證和鏡像服務又可分別稱為Nova、Swift、Keystone和Glance,限于篇幅本文只對這四個組件進行詳細分析說明。
(1)Nova:該組件是虛擬資源管理和部署的標桿和依托,用戶可以基于Nova組件和API接口管理自己云計算系統(tǒng)中的虛擬服務器,實現(xiàn)與OpenStack計算服務之間的交互??偟恼f來,Nova的作用相當于一個控制器,其中Nova-API主要用于運行實例和初始化部署,Nova Volume用于服務商卷宗的操作。
(2)Keystone:該組件主要負責用戶信息的認證和管理,用戶的身份只有得到Keystone的認證才能獲得通話的資格,才能在需要通話的兩個服務器之間建立連接??偟恼f來,Keystone相當于一個服務總線,主要管理用戶的賬號、權限等信息,并根據(jù)相關標準提供授權。
(3)Swift:該組件主要提供存儲服務,除了具有容量大、冗余容錯性強、擴展性好等常規(guī)特性外,還具有存儲持久、架構對稱、無限擴展、故障率低、適用性強等優(yōu)勢。它的組件主要包括Proxy Server、Authentication Server、Cache Server等10個部分,Swift通過Proxy Server向外提供基于HTTP的REST服務接口,對賬戶、容器和對象進行CRUD等操作。
(4)Glance:該組件主要負責對虛擬映像的查詢、注冊、獲取等管理內(nèi)容,并將處理結果分享用戶。Glance組件共包含查詢(鏡像保留未上傳)、保存(鏡像上傳中)、激活(鏡像可用)和死亡(鏡像出錯失去效用)等四種狀態(tài)。另外,該組件與前述三個組件之間相互作用,最終實現(xiàn)OpenStack的功能。
為便于說明,本文針對搭建基于OpenStack的中小企業(yè)云計算平臺,通過將平臺中的物理和網(wǎng)絡資源統(tǒng)一部署到同一個局域網(wǎng)中來方便用戶的分享使用,主要為用戶提供虛擬主機和云存儲功能。
3.1 云計算平臺的總體結構
本文所設計的云計算平臺中,基礎公用層的計算機操作系統(tǒng)選用Unbuntu Server,分析可以看出,云計算平臺主要由控制、計算、網(wǎng)絡三個方面的節(jié)組成。其中,控制節(jié)點作為平臺的核心環(huán)節(jié)負責監(jiān)控、協(xié)調(diào)、管理整個系統(tǒng),用戶可以通過在控制節(jié)點部署的各個組件進行各種命令操作;計算節(jié)點作為平臺的末端環(huán)節(jié)主要負責具體的計算運行工作;網(wǎng)絡節(jié)點是平臺的中間環(huán)節(jié),主要負責平臺中各種信息和數(shù)據(jù)的傳輸和配置。
3.2 云計算平臺的工作原理
由于本云計算平臺是基于OpenStack建立的,因此該平臺工作時是以OpenStack中的關鍵組件作為支撐的。其中,云計算平臺的服務以及運行狀態(tài)通過儀表盤(即Horizon組件)啟動和監(jiān)控,云計算平臺中的具體計算任務通過計算組件即(即Nova--API組件)來進行調(diào)度和執(zhí)行,云計算平臺中的虛擬鏡像存儲和檢索通過鏡像服務(即GIance-API組件)來實現(xiàn)的,云計算平臺中的數(shù)據(jù)和信息通過對象存儲(即Swift-API組件)來實現(xiàn)的,云計算平臺中用戶信息認證和準入管理是通過身份認證(即Keystone組件)進行交互。
3.3 云計算平臺的容錯系統(tǒng)
根據(jù)前述工作原理,云計算平臺中運行的信息均與上述的組件有關,由于這些信息一般儲存在數(shù)據(jù)庫和日志中,雖然能夠在分析數(shù)據(jù)庫和日志中發(fā)現(xiàn)出錯信息,但這樣的排查較為繁瑣,且常規(guī)的手動修改會造成過高投入、信息丟失等情況,為此需要采用專門的容錯機制。
首先,設置異常監(jiān)控層來專門提取平臺中出現(xiàn)的異常信息,并將其按照可否識別分為已定義和未定義兩種。對于可識別的異常信息,其處理流程為:發(fā)送至異常處理模塊——修正或代替出錯信息;而對于不能識別的異常信息,其處理流程為通知管理人員手動修復。
當異常信息處理完畢之后,要對其進行復查,若發(fā)現(xiàn)重復出錯現(xiàn)象,則應通知云計算平臺管理人員進行手動修復。云計算平臺的實現(xiàn)是一個復雜的研究過程,限于篇幅本文僅對平臺的結構、工作原理和容錯機制進行了分析,對平臺中控制、計算、網(wǎng)絡等節(jié)點的部署內(nèi)容也是研究的重點,這部分內(nèi)容需要在以后的研究中展開,本文所做的研究可以為相關理論分析和實際應用提供參考。
主要參考文獻
[1]李婧.基于云計算的遠程教育資源共享技術研究與實現(xiàn)[D].西安:西安電子科技大學,2013.
[2]劉飛宇.OpenStack云平臺下的虛擬機監(jiān)控與控制的研究與實現(xiàn)[D].成都:電子科技大學,2013.
[3]陳俊麗.基于云計算服務的彈性負載均衡機制的研究與實現(xiàn)[D].成都:成都理工大學,2013.
[4]任薔.基于云計算的教育資源評價方法研究[D].西安:西安電子科技大學,2014.
[5]張容齊.基于云計算平臺的服務自動化部署機制研究[D].北京:北京郵電大學,2015.
[6]趙長明.我國二手房地產(chǎn)交易價格風險的核算[J].統(tǒng)計與決策. 2014(1).
10.3969/j.issn.1673-0194.2016.15.081
TP316
A
1673-0194(2016)15-0133-03
2016-05-20