耿貞偉,張雪堅(jiān)
(云南電網(wǎng)有限責(zé)任公司信息中心,昆明 650217)
企業(yè)私有云就是針對公司云資源使用情況建立高水平的資源控制功能。但是因?yàn)槠髽I(yè)的不斷發(fā)展,各部門對于上線服務(wù)系統(tǒng)響應(yīng)要求不斷提高,特別是基于數(shù)據(jù)平臺的軟件,因?yàn)槠髽I(yè)內(nèi)部使用的軟件版本和規(guī)模不一致,造成在資源整合中管理復(fù)雜、使用不便等情況[1-2]。怎樣提高企業(yè)云計(jì)算和軟件應(yīng)用的快速服務(wù),建立統(tǒng)一的云平臺管理非常重要,提高軟件交付能力也是重要問題。
私有云管理主要是為企業(yè)業(yè)務(wù)平臺和IT系統(tǒng)提供字眼服務(wù),實(shí)現(xiàn)虛擬機(jī)、公網(wǎng)IP地質(zhì)、軟件庫、物理機(jī)等模塊的服務(wù)。云管理平臺就是提供云計(jì)算服務(wù),為各類云計(jì)算資源池提供集中性管理。以往的企業(yè)資源管理,因?yàn)橘Y源系統(tǒng)、版本、資源類型復(fù)雜多樣,造成管理困難,在“云”服務(wù)的幫助下,很多企業(yè)開始建立自己的管理資源平臺,而且讀書都是基于OPenstack項(xiàng)目進(jìn)行開源研發(fā)。隨著Openstack版本的不斷更新,基于Openstack服務(wù)的廠商越來越多,從而構(gòu)成了以O(shè)penstack為主的云服務(wù)廠商[3]。因?yàn)镺penstack技術(shù)發(fā)展不斷完善,其服務(wù)能力逐漸被大眾所接受,利用其建立云管理平臺具有可行性。
快速交付的需求需要將Hadoop CDHI平臺遷移到HDP場景中,在根據(jù)基礎(chǔ)架構(gòu)虛擬資源交付Hadoop平臺,獲取MapReduce數(shù)據(jù)源系統(tǒng)中的數(shù)據(jù),將這些數(shù)據(jù)清洗后得到HDFS,建立一個(gè)數(shù)據(jù)表Hive,再利用Hive SQL統(tǒng)計(jì)數(shù)據(jù)進(jìn)行運(yùn)算匯總,這里使用到了HDFS、Hive、MAPReduce等數(shù)據(jù)平臺,從而完成Oozie任務(wù)編排。關(guān)于遷移工作的步驟如下:
(1)檢查差異性:對于遷移的兩個(gè)平臺間組件差異,以及兩者的差異進(jìn)行分析,之后檢查CDH舊的集群和HDP遷移目標(biāo)集群特征,將組件變成相同大小的版本號,因?yàn)榈桶姹巨D(zhuǎn)向高版本環(huán)境受到的阻力比較小,但是在升級軟件時(shí)需要注意到兼容性,這里針對版本遷移建立以下對策,見表1。
表1 目標(biāo)集群不同組件和舊集群差異比較
(2)修改參數(shù):根據(jù)新平臺配置參數(shù)將舊平臺屬性參數(shù)配置進(jìn)行更新,比如:主機(jī)名稱、訪問數(shù)據(jù)庫地質(zhì)等。在進(jìn)行代碼項(xiàng)目核對,對平臺參數(shù)、文件配置、硬編碼。還有就是Hadoop相關(guān)參數(shù)服務(wù)配置,需要進(jìn)行詳細(xì)核查,保證替換正確。在調(diào)試緩解,如果出現(xiàn)舊平臺參數(shù)日志報(bào)錯(cuò)情況,或是連接不成功,多是因?yàn)樾薷膮?shù)不完全,這時(shí)還需要進(jìn)一步進(jìn)行修改。
(3)依賴更新:使用Java進(jìn)行開發(fā),將CDH中jar包變?yōu)镠DP對應(yīng)的jar包,自后重新編譯把包打開,因?yàn)椴町惏姹镜脑?,需要利用級別代碼對接口進(jìn)行調(diào)試。這里建議利用maven進(jìn)行項(xiàng)目管理依賴工具將依賴項(xiàng)目進(jìn)行統(tǒng)一打包上線,如果是使用早期ant類項(xiàng)目工具構(gòu)建,需要先進(jìn)行maven項(xiàng)目改造,這樣可以減少以后項(xiàng)目版本維護(hù)成本。在構(gòu)建Maven項(xiàng)目時(shí),需要進(jìn)行第一步差異清單檢查,更新組間對應(yīng)的jar包名稱和版本。在更新完成后,使用“Mvn Package”進(jìn)行項(xiàng)目的更新,并打包編譯。因?yàn)楦铝薺ar包,接口編程會出現(xiàn)變更,導(dǎo)致編譯出錯(cuò),這時(shí)需要對代碼片段進(jìn)行逐一修復(fù),指導(dǎo)編譯正確為止。
(4)測試調(diào)試:對編譯打包程序進(jìn)行測試,主要是檢查程序是否正確,產(chǎn)出數(shù)據(jù)是否正確,在新平臺中的運(yùn)行是否穩(wěn)定。
(5)重新上線:在測試完成后,正式將程序遷移到線上,在分析舊服務(wù)下線問題,最終建立無縫應(yīng)用遷移。
常規(guī)交付服務(wù)是在云管理平臺上實(shí)現(xiàn)的,它可以通過一套虛擬資源實(shí)現(xiàn)交付程序,這里利用OpenStack Heat進(jìn)行Iaas資源交付編排,在利用和交付虛擬機(jī)中間件接口程序、數(shù)據(jù)庫實(shí)現(xiàn)軟件服務(wù)。其中關(guān)于Heat編排服務(wù)過程分析:
(1)對整個(gè)業(yè)務(wù)系統(tǒng)中Heat模板進(jìn)行編寫,在云管理平臺模板上,提供目錄終端形式用戶應(yīng)用,根據(jù)OPenstack模板統(tǒng)一規(guī)范heat編寫。
(2)根據(jù)交付架構(gòu)服務(wù)內(nèi)容,使用Python腳本語言,實(shí)現(xiàn)組件資源的交付自動服務(wù)能力。
(3)在云管理平臺上進(jìn)行接口編排,在云平臺上導(dǎo)入Heat模板,建立一個(gè)能夠?yàn)榻K端用戶服務(wù)的目錄。服務(wù)目錄也能對資源進(jìn)行授權(quán),從而實(shí)現(xiàn)交付服務(wù)編排和管理。
(4)在完成服務(wù)目錄授權(quán)后,租戶可以進(jìn)行交付,實(shí)現(xiàn)服務(wù)目錄申請,自動化目錄也能為用戶提供各種參數(shù)信息。
(5)經(jīng)過申請服務(wù)目錄之后,進(jìn)入運(yùn)行模式,該環(huán)節(jié)是由運(yùn)維部門和該模式相關(guān)部門一同操作,從而實(shí)現(xiàn)服務(wù)。
建立在Hadoop私有云管理平臺的集群、快速交付軟件服務(wù),可以提高交付服務(wù)的效率,而且利用云平臺大數(shù)據(jù)Hadoop服務(wù),可以對一體化環(huán)境下云和大數(shù)據(jù)架構(gòu)的統(tǒng)一管理,實(shí)現(xiàn)企業(yè)私有云管理的動態(tài)化、標(biāo)準(zhǔn)化、池化,從而滿足快速響應(yīng)需求的服務(wù),保證企業(yè)業(yè)務(wù)系統(tǒng)盡快上線。建立企業(yè)私有云管理平臺,需要結(jié)合團(tuán)隊(duì)開發(fā)運(yùn)維小組能力,從而完善企業(yè)內(nèi)部自動化存在的問題,提高企業(yè)私有云管理平臺的工作效率。
[1] 楊海亮,馬天丁,李震,等.淺析企業(yè)私有云平臺建設(shè)中的云安全管理問題[J].中小企業(yè)管理與科技(上旬刊),2016(11):15-16.
[2] 馬麟,刁永鋒,李長平.高校信息化云平臺服務(wù)的新發(fā)展:從私有云到公有云[J].中國教育信息化,2017(17):91-93.
[3] 王成喜,孟安寧.基于VMware vSphere私有云計(jì)算模式的數(shù)字化實(shí)驗(yàn)室建設(shè)[J].計(jì)算機(jī)與現(xiàn)代化,2017(7):124-126.