黃 玨
(南京工業(yè)職業(yè)技術學院,江蘇 南京 210046)
公司構建一套完整IT系統(tǒng)需要3個基本條件:硬件資源,軟件資源和專門的運維人員。隨著公司業(yè)務的增長,軟硬件及其他基礎架構升級,成本將不斷上升。原有的管理模式低效且信息安全風險大,用戶簡化配置和管理網(wǎng)絡的要求,加速了當今云計算技術的發(fā)展。
在云計算服務下,云服務提供商可即時處理大量信息,數(shù)量級高達數(shù)千萬甚至數(shù)億。資源和服務按需分配,使普通用戶享受超級計算機帶來高端服務,利用虛擬化提高了資源的利用率[1]。云計算包括3種模式:軟件即服務(Software as a Service,SaaS),平臺即服務(Platform as a Service,PaaS)和基礎設施即服務(Infrastructure as a Service,IaaS)[2]。SaaS將計算和存儲資源封裝為用戶可以直接使用的應用并通過網(wǎng)絡提供給用戶;PaaS計算和存儲資源經(jīng)封裝后,以某種接口和協(xié)議的形式提供給用戶調(diào)用,資源的使用者不再直接面對底層資源,IaaS把單純的計算和存儲資源不經(jīng)封裝直接通過網(wǎng)絡以服務的形式提供給用戶使用[3]。
Openstack是和Linux一樣開源的系統(tǒng)架構,能夠滿足類型繁多的云計算服務環(huán)境。它是一款自由開源的軟件具有高擴展性及部署靈活的特點,企業(yè)可以利用它來構建自身的IaaS服務,可實現(xiàn)對企業(yè)資源的整合和高效利用[4]。
虛擬化技術是實現(xiàn)云計算基礎架構層面的核心技術,也是推動云計算這一概念發(fā)展的一項重要技術。該技術在物理設備底層和上層操作系統(tǒng)之間運行一個虛擬軟件層,這一層產(chǎn)生資源池。它是物理設備的集合,各種物理設備互相協(xié)作提供服務并由軟件統(tǒng)一管理。它允許多個操作系統(tǒng)和應用程序在物理資源上共享硬件,創(chuàng)建多個可運行獨立操作系統(tǒng)的虛擬機。虛擬化將應用軟件與底層物理設備分離。從更抽象和更廣泛的背景來理解,虛擬化技術實際上是一個非常大的概念。虛擬化技術的出現(xiàn)遠遠超過了虛擬化操作系統(tǒng),現(xiàn)在已經(jīng)實現(xiàn)了內(nèi)存、網(wǎng)絡、CPU、文件和存儲的虛擬化[5]。虛擬化技術實現(xiàn)基本的物理資源抽象,使其成為可靈活生成、調(diào)度和管理的基礎資源池,以實現(xiàn)自動化基礎設施的有效整合,實時遷移。
IaaS通過一定的方式虛擬化成若干臺外部看似獨立的服務器,每臺虛擬服務器具有一定的計算能力,可單獨提供他們所支持的服務。這些服務器同時運行,相互隔離,降低能耗的同時提高了資源的利用率。
本次搭建采用的系統(tǒng)是CentOS 7 64 bit。部署Openstack版本為Ocata。采用多點部署方式。多點部署有以下優(yōu)點:(1)管理、維護接近真實環(huán)境。(2)能夠更加清楚地理解Openstack各組件之間的依賴關系。(3)能夠測試Openstack各組件的功能和穩(wěn)定性[6]。搭建Openstack管理平臺對硬件要求比較高。目前搭建Openstack的方法有利用源碼進行安裝,利用Devstack進行安裝等多種方式。本次搭建是利用源碼來安裝。為獲得最好的體驗,環(huán)境需滿足最低硬件要求。Controller節(jié)點最低硬件要求:1顆CPU,4 GB內(nèi)存,兩塊網(wǎng)卡,20 GB硬盤;compute節(jié)點最低硬件要求:1顆CPU,2 GB內(nèi)存,兩塊網(wǎng)卡,20 GB硬盤。
Openstack系統(tǒng)的實現(xiàn)離不開關鍵組件的安裝,Openstack平臺的所有服務都是依靠這些組件進行的。在部署Openstack平臺之前先要作以下準備。首先安裝并配置NTP的服務,其次添加hosts文件,最后安裝Openstack官方依賴包。
實現(xiàn)系統(tǒng)的身份鑒權,開通服務以及授權服務功能,在Openstack中絕大數(shù)的服務都需要Keystone服務對其進行統(tǒng)一的身份授權管理。通過此組件可以授權各組件的服務,在安裝配置過程中先登陸Mysql數(shù)據(jù)庫進行添加Keystone服務,通過yum install opentack-keystone httpd mod_wsgi命令安裝Openstack-keystone組件。
Glance組件對Openstack中的鏡像文件進行統(tǒng)一的管理,Openstack Image服務是基礎架構即服務的關鍵服務,安裝此服務前必須先添加數(shù)據(jù)庫服務,在配置glance參數(shù)時要注意的是,keystone_authtoken參數(shù)的user&password必須要和之前配置的環(huán)境變量的用戶密碼保持一致,否則會導致上傳鏡像失敗。
Nova是Openstack云中的計算組織控制器。支持Openstack云中實例(instances)生命周期的所有活動都由Nova處理。這樣使得Nova成為一個負責管理計算資源、網(wǎng)絡、認證、所需可擴展性的平臺。Openstack compute與Openstack Identity進行交互以進行身份驗證。Controller節(jié)點安裝完成之后需要切換到compute節(jié)點安裝Openstacknova服務。
Neutron是為Openstack中創(chuàng)建的虛擬機實例提供網(wǎng)絡服務,Neutron在Openstack中創(chuàng)建一個邏輯上的網(wǎng)絡通信服務。通過命令:yum install Openstack-neutron 來安裝neutron組件。
安裝Openstack-dashboard服務可以通過命令:yum install Openstack-dashboard -y來執(zhí)行安裝。安裝完成之后進入Openstack-dashboard的配置文件設置訪問Web GUI界面。
Cinder是塊存儲,用來給虛擬機掛擴展硬盤,就是將Cinder創(chuàng)建出來的卷,掛到虛擬機里。Openstack-cinder服務為Openstack中VM實例提供獨立的存儲方案,同時Cinder也可以被當作創(chuàng)建的虛擬機實例的啟動盤使用,一個Cinder只能對應一個虛擬機實例。首先使用root用戶創(chuàng)建Cinder數(shù)據(jù)庫服務;然后為Cinder創(chuàng)建用戶,完成之后將admin添加到Cinder授權用戶中,接著安裝Openstack-cinder組件,命令如下:yum install Openstack-cinder -y。安裝完成,需要修改目錄下/etc/cinder/cinder.conf配置文件的參數(shù),在[default]參數(shù)中配置數(shù)據(jù)庫服務以及身份驗證授權訪問服務,隨后配置KEYSTONE_AUTHTOKEN參數(shù),password選項填寫Identity身份驗證密碼為:ADMIN_PASS。配置完成后,將Cinder服務設為系統(tǒng)啟動時開啟,并啟動Openstack-cinderapi和Openstack-cinder-scheduler服務。
首先我們要確保可以順利進入Dashboard Web GUI界面,可以看到Openstack平臺的整體概況,比如資源利用率,包括內(nèi)存,CPU,硬盤容量等,還要查看網(wǎng)絡組件和Cinder組件是否運行正常。查看之前上傳的CirrOS鏡像的狀態(tài)是否正常。接下來就是對組件的功能進行測試。(1)新建網(wǎng)絡信息;(2)新建Cinder卷;(3)創(chuàng)建鏡像文件;(4)創(chuàng)建實例類型;(5)創(chuàng)建實例。最終可以看到這個虛擬機實例可正常運行。
本文對云計算及Openstack進行了簡要的介紹,提出了基于Openstack的多節(jié)點部署構建云平臺的方案,并詳細對其工作原理及關鍵組件的安裝部署進行了說明。接下來的工作是將此云平臺運用到學校實驗室或者公司網(wǎng)絡,從而降低信息化的建設成本,提高管理能力。