一種hadoop平臺自動(dòng)安裝部署的方法及裝置制造方法
【專利摘要】本發(fā)明提供一種hadoop平臺自動(dòng)安裝部署的方法及裝置,方法包括不同發(fā)行版和版本號的安裝包按照目錄層次存放在yum安裝服務(wù)器中;不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括repo安裝源文件和hadoop服務(wù)目錄列表;運(yùn)行大數(shù)據(jù)管理平臺,加載配置列表信息;創(chuàng)建集群,選擇hadoop發(fā)行版本及版本號;主機(jī)加入集群,分發(fā)repo安裝源文件至各主機(jī)上;選擇hadoop服務(wù);對hadoop服務(wù)的必要參數(shù)進(jìn)行配置;大數(shù)據(jù)管理平臺生成并將安裝啟動(dòng)任務(wù)信息發(fā)送至各主機(jī);各主機(jī)獲取相對應(yīng)的hadoop服務(wù)的軟件安裝包后根據(jù)安裝啟動(dòng)任務(wù)信息自動(dòng)安裝啟動(dòng)各服務(wù)。解決差異化問題,普遍適用于安裝各種開源版本。
【專利說明】—種hadoop平臺自動(dòng)安裝部署的方法及裝直
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及大數(shù)據(jù)領(lǐng)域,具體說的是一種hadoop平臺自動(dòng)安裝部署的方法及裝置。
【背景技術(shù)】
[0002]隨著信息技術(shù)的飛速發(fā)展,信息時(shí)代產(chǎn)生的數(shù)據(jù)日益在膨脹,Hadoop做為解決大數(shù)據(jù)領(lǐng)域的重要技術(shù)手段,目前被廣泛應(yīng)用著。Hadoop產(chǎn)品最初由Apache基金會(huì)進(jìn)行開源(下文統(tǒng)一稱為Apache開源版),該版本主要用于驗(yàn)證和學(xué)習(xí)目的,較少用于商用,目前主要安裝部署方式是手工安裝或者編寫批量腳本安裝。在Apache開源版基礎(chǔ)上發(fā)展出一系列發(fā)行版,目前以cloudera、hortonworks這兩個(gè)商業(yè)版本最為主流。Cloudera公司發(fā)行的 hadoop 開源版為 CDH(全稱 Cloudera’ s Distribut1n Including Apache Hadoop,下文統(tǒng)一稱為⑶H開源版),可以通過cloudera公司自行開發(fā)的Cloudera Manager實(shí)現(xiàn)自動(dòng)化安裝部署;hortonworks公司發(fā)行的hadoop開源版本為HDP (全稱Hortonworks DataPlatform,下文統(tǒng)一稱為HDP開源版),可以通過該公司研發(fā)工具ambari實(shí)現(xiàn)自動(dòng)化安裝部署。目前這兩個(gè)商業(yè)發(fā)行版本的安裝工具和安裝包彼此互不兼容。
[0003]針對Hadoop開源版,現(xiàn)有的部署方式大都采取手工安裝軟件包,手工編寫各個(gè)服務(wù)配置文件并分發(fā)到集群每臺主機(jī),然后采用shell腳本進(jìn)行啟停。這種方式工作量繁重,當(dāng)配置文件有變更時(shí)需要每臺主機(jī)都修改分發(fā),容易出錯(cuò),一旦出現(xiàn)問題很難定位。而針對Q)H開源版和HDP開源版,目前cloudera和hortonworks兩個(gè)商業(yè)發(fā)行版都提供了各自的hadoop發(fā)行版本以及自動(dòng)化安裝管理工具,但兩個(gè)自動(dòng)化安裝管理平臺彼此互不兼容。Cloudera Manager僅可以針對⑶H的軟件包實(shí)現(xiàn)自動(dòng)化安裝部署;而ambari僅可以實(shí)現(xiàn)針對HDP軟件包的自動(dòng)化安裝部署。
[0004]為了解決Apache開源版缺少自動(dòng)化安裝工具的現(xiàn)狀、以及Cloudera Manager和Ambari開源版存在安裝版本互不兼容的問題,本發(fā)明提供一種hadoop平臺自動(dòng)安裝部署的方法及裝置。
【發(fā)明內(nèi)容】
[0005]本發(fā)明所要解決的技術(shù)問題是:提供一種hadoop平臺自動(dòng)安裝部署的方法及裝置,解決現(xiàn)有的Hadoop開源版無法實(shí)現(xiàn)自動(dòng)化安裝,而CDH開源版和HDP開源版雖能實(shí)現(xiàn)自動(dòng)化安裝,但是其安裝管理平臺彼此互不兼容問題。
[0006]為了解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案為:
[0007]一種hadoop平臺自動(dòng)安裝部署的方法,包括:
[0008]SlOO:發(fā)布hadoop版本軟件安裝包,定制版本配置文件;
[0009]不同發(fā)行版和版本號的所述安裝包按照目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器中,版本號目錄層下存放具體的hadoop服務(wù)的軟件安裝包;
[0010]不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級結(jié)構(gòu)組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括用于指向yum安裝服務(wù)器對應(yīng)hadoop服務(wù)的軟件安裝包源位置的repo安裝源文件和hadoop服務(wù)目錄列表,每個(gè)hadoop服務(wù)目錄下包括服務(wù)運(yùn)行所需的默認(rèn)配置文件;
[0011]S200:運(yùn)行大數(shù)據(jù)管理平臺,加載所述配置列表信息;
[0012]S300:在大數(shù)據(jù)管理平臺創(chuàng)建集群,在所述配置列表信息中選擇所需的hadoop發(fā)行版本及版本號;
[0013]S400:將主機(jī)加入集群,自動(dòng)分發(fā)步驟S300中選定的hadoop版本號對應(yīng)的I^po安裝源文件至集群的各主機(jī)上;
[0014]S500:在選定的hadoop版本號對應(yīng)的hadoop服務(wù)目錄列表中選擇各主機(jī)所需的hadoop服務(wù),并將hadoop服務(wù)對應(yīng)的Master和Slaver節(jié)點(diǎn)分配到各主機(jī)上;
[0015]S600:在所述服務(wù)的默認(rèn)配置文件的基礎(chǔ)上對所選的hadoop服務(wù)的必要參數(shù)進(jìn)行配置;
[0016]S700:大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成包括安裝啟動(dòng)任務(wù)信息的相關(guān)配置信息,將所述安裝啟動(dòng)任務(wù)信息發(fā)送至各主機(jī);
[0017]各主機(jī)根據(jù)所述repo安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息自動(dòng)安裝并啟動(dòng)各服務(wù)。
[0018]本發(fā)明提供的另一個(gè)技術(shù)方案為:
[0019]一種hadoop平臺自動(dòng)安裝部署的裝置,包括軟件包發(fā)布模塊、版本定制模塊和運(yùn)行在大數(shù)據(jù)管理平臺中的配置加載模塊、集群管理模塊、第一選擇模塊、分發(fā)模塊、第二選擇模塊、配置模塊、生成模塊和至少一個(gè)的主機(jī),所述主機(jī)包括安裝模塊;
[0020]所述軟件包發(fā)布模塊,用于發(fā)布hadoop版本軟件安裝包;將不同發(fā)行版和版本號的所述安裝包按照目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器中,版本號目錄層下存放具體的hadoop服務(wù)的軟件安裝包;
[0021]所述版本定制模塊,用于定制版本配置文件;將不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級結(jié)構(gòu)組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括用于指向yum安裝服務(wù)器對應(yīng)hadoop服務(wù)的軟件安裝包源位置的repo安裝源文件和hadoop服務(wù)目錄列表,每個(gè)hadoop服務(wù)目錄下包括服務(wù)運(yùn)行所需的默認(rèn)配置文件;
[0022]所述配置加載模塊,用于運(yùn)行大數(shù)據(jù)管理平臺,加載所述配置-信息;
[0023]所述集群管理模塊,用于在大數(shù)據(jù)管理平臺創(chuàng)建集群,將主機(jī)加入集群;
[0024]所述第一選擇模塊,用于在所述配置列表信息中選擇所需的hadoop發(fā)行版本及版本號;
[0025]所述分發(fā)模塊,用于自動(dòng)分發(fā)所述第一選擇模塊中選定的hadoop版本號對應(yīng)的repo安裝源文件至集群的各主機(jī)上;
[0026]所述第二選擇模塊,用于在所述第一選擇模塊中選定的hadoop版本號對應(yīng)的hadoop服務(wù)目錄列表中選擇各主機(jī)所需的hadoop服務(wù),并將hadoop服務(wù)對應(yīng)的Master和Slaver節(jié)點(diǎn)分配到各主機(jī)上;
[0027]所述配置模塊,用于在所述服務(wù)的默認(rèn)配置文件的基礎(chǔ)上對所選的hadoop服務(wù)的必要參數(shù)進(jìn)行配置;
[0028]所述生成模塊,用于大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成包括安裝、啟動(dòng)任務(wù)信息的相關(guān)配置信息,將所述安裝、啟動(dòng)任務(wù)信息發(fā)送至各主機(jī);
[0029]所述安裝模塊,用于各主機(jī)根據(jù)所述repo安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息在集群中各主機(jī)上自動(dòng)安裝并啟動(dòng)各服務(wù)。
[0030]本發(fā)明的有益效果在于:區(qū)別于現(xiàn)有技術(shù)的各種Hadoop開源版本由于版本間的差異問題而無法實(shí)現(xiàn)自動(dòng)化安裝部署或安裝版本彼此兼容的問題。本發(fā)明一種hadoop平臺自動(dòng)安裝部署的方法及裝置,通過組件適配技術(shù)解決安裝過程中存在的各種差異化問題,提供一個(gè)可普遍適用于安裝各種開源版本的方法及裝置。具體的,通過將hadoop版本軟件安裝包及版本配置文件均采用目錄層次結(jié)構(gòu)進(jìn)行存放,以目錄形式歸檔安裝包和配置文件,解決軟件安裝包和配置文件的差異化問題;通過在選定所需的hadoop發(fā)行版本、版本號及hadoop服務(wù),并根據(jù)需要配置必要的服務(wù)配置參數(shù)后,大數(shù)據(jù)平臺能夠自動(dòng)生成服務(wù)配置文件,自動(dòng)獲取版本號對應(yīng)的hadoop服務(wù)軟件安裝包后進(jìn)行自動(dòng)安裝部署,有針對性的依據(jù)所選擇的hadoop版本號及服務(wù)自動(dòng)完成軟件的安裝及服務(wù)組件的配置,解決各個(gè)開源版之間的安裝包與組件配置由于差異化而無法兼容問題。無論安裝的是Apache開源版、CDH開源版或是HDP開源版,都能夠在大數(shù)據(jù)平臺中實(shí)現(xiàn)自動(dòng)安裝部署和彼此兼容,且明顯縮短安裝部署時(shí)間,大大提高安裝效率。
【專利附圖】
【附圖說明】
[0031]圖1為本發(fā)明一實(shí)施例一種hadoop平臺自動(dòng)安裝部署的方法的基本流程框圖;
[0032]圖2為本發(fā)明一實(shí)施例一種hadoop平臺自動(dòng)安裝部署的系統(tǒng)的基本結(jié)構(gòu)組成框圖;
[0033]圖3為本發(fā)明一實(shí)施例一種hadoop平臺自動(dòng)安裝部署的系統(tǒng)的結(jié)構(gòu)組成框圖。
[0034]標(biāo)號說明:
[0035]1、軟件包發(fā)布模塊; 2、版本定制模塊; 3、配置加載模塊;
[0036]4、集群管理模塊; 5、第一選擇模塊; 6、分發(fā)模塊;
[0037]7、第二選擇模塊; 8、配置模塊; 9、生成模塊;
[0038]10、安裝模塊; 11、主機(jī); 12、身份認(rèn)證單元;
[0039]13、客戶端; 14、配置組創(chuàng)建單元; 15、發(fā)送單元;
[0040]16、接收執(zhí)行單元; 17、應(yīng)答單元。
【具體實(shí)施方式】
[0041]為詳細(xì)說明本發(fā)明的技術(shù)內(nèi)容、所實(shí)現(xiàn)目的及效果,以下結(jié)合實(shí)施方式并配合附圖予以說明。
[0042]本發(fā)明最關(guān)鍵的構(gòu)思在于:通過組件適配技術(shù)解決安裝過程中各種hadoop開發(fā)源版由于差異化問題而導(dǎo)致的無法自動(dòng)安裝部署或安裝版本不兼容問題。
[0043]請參照圖1至3所示,本發(fā)明提供的技術(shù)方案為:
[0044]一種hadoop平臺自動(dòng)安裝部署的方法,包括:
[0045]S100:發(fā)布hadoop版本軟件安裝包,定制版本配置文件;
[0046]不同發(fā)行版和版本號的所述安裝包按照目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器中,版本號目錄層下存放具體的hadoop服務(wù)的軟件安裝包;
[0047]不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級結(jié)構(gòu)組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括用于指向yum安裝服務(wù)器對應(yīng)hadoop服務(wù)的軟件安裝包源位置的repo安裝源文件和hadoop服務(wù)目錄列表,每個(gè)hadoop服務(wù)目錄下包括服務(wù)運(yùn)行所需的默認(rèn)配置文件;
[0048]S200:運(yùn)行大數(shù)據(jù)管理平臺,加載所述配置列表信息;
[0049]S300:在大數(shù)據(jù)管理平臺創(chuàng)建集群,在所述配置列表信息中選擇所需的hadoop發(fā)行版本及版本號;
[0050]S400:將主機(jī)加入集群,自動(dòng)分發(fā)步驟S300中選定的hadoop版本號對應(yīng)的repo安裝源文件至集群的各主機(jī)上;
[0051]S500:在選定的hadoop版本號對應(yīng)的hadoop服務(wù)目錄列表中選擇各主機(jī)所需的hadoop服務(wù),并將hadoop服務(wù)對應(yīng)的Master和Slaver節(jié)點(diǎn)分配到各主機(jī)上;
[0052]S600:在所述服務(wù)的默認(rèn)配置文件的基礎(chǔ)上對所選的hadoop服務(wù)的必要參數(shù)進(jìn)行配置;
[0053]S700:大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成包括安裝啟動(dòng)任務(wù)信息的相關(guān)配置信息,將所述安裝啟動(dòng)任務(wù)信息發(fā)送至各主機(jī);
[0054]各主機(jī)根據(jù)所述repo安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息自動(dòng)安裝并啟動(dòng)各服務(wù)。
[0055]各主機(jī)11根據(jù)所述repo安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息自動(dòng)安裝并啟動(dòng)各服務(wù)。
[0056]通過組件適配技術(shù)解決不同Hadoop開源版及不同版本間安裝包介質(zhì)、repo源路徑、安裝包名稱、安裝步驟不一樣的問題,任意一個(gè)hadoop版本,通過本發(fā)明實(shí)現(xiàn)通用的安裝部署。
[0057]從上述描述可知,本發(fā)明的有益效果在于:本發(fā)明一種hadoop平臺自動(dòng)安裝部署的方法及裝置,通過組件適配技術(shù)解決安裝過程中存在的各種差異化問題,提供一個(gè)可普遍適用于安裝各種開源版本的方法及裝置。具體的,通過將hadoop版本軟件安裝包及版本配置文件均采用目錄層次結(jié)構(gòu)進(jìn)行存放,以目錄形式歸檔安裝包和配置文件,解決軟件安裝包和配置文件的差異化問題;通過在選定所需的hadoop發(fā)行版本、版本號及hadoop服務(wù),并根據(jù)需要配置必要的服務(wù)配置參數(shù)后,大數(shù)據(jù)平臺能夠自動(dòng)生成服務(wù)配置文件,自動(dòng)獲取版本號對應(yīng)的hadoop服務(wù)軟件安裝包后進(jìn)行自動(dòng)安裝部署,有針對性的依據(jù)所選擇的hadoop版本號及服務(wù)自動(dòng)完成軟件的安裝及服務(wù)組件的配置,解決各個(gè)開源版之間的安裝包與組件配置由于差異化而無法兼容問題。無論安裝的是Apache開源版、CDH開源版或是HDP開源版,都能夠在大數(shù)據(jù)平臺中實(shí)現(xiàn)自動(dòng)安裝部署和彼此兼容。
[0058]其中,所述組件適配技術(shù)具體體現(xiàn)為:
[0059]1、在yum安裝服務(wù)器的安裝包目錄規(guī)劃上,以及大數(shù)據(jù)管理平臺的配置文件目錄層次上進(jìn)行了適配性的技術(shù)設(shè)計(jì);
[0060]2、適配性體現(xiàn)在,用戶選擇哪個(gè)版本,大數(shù)據(jù)管理平臺自動(dòng)分發(fā)這個(gè)版本對應(yīng)的repo文件;
[0061]3、適配性體現(xiàn)在供用戶選擇的服務(wù)列表、以及服務(wù)的MASTER/SLAVER關(guān)系,根據(jù)S300選擇的版本不同自動(dòng)展現(xiàn)不同內(nèi)容;
[0062]4、適配性體現(xiàn)在客戶端13配置軟件安裝包配置信息的HASH結(jié)構(gòu)的設(shè)計(jì),以及尋找軟件安裝包的方法。
[0063]進(jìn)一步的,在步驟SlOO中,所述安裝包和所述hadoop版本配置文件的目錄層級結(jié)構(gòu)中,一級目錄層均為發(fā)行版本,二級目錄層均為版本號,三級均為hadoop服務(wù);
[0064]所述hadoop版本配置文件的三級目錄層下還存放有包括服務(wù)核心配置文件模板的所述服務(wù)的默認(rèn)配置文件和服務(wù)元數(shù)據(jù)信息描述文件,所述服務(wù)元數(shù)據(jù)信息描述文件定義每個(gè)hadoop服務(wù)下包含的組件,以及組件的Master和Slaver從屬關(guān)系。
[0065]通過上述解決hadoop版本軟件安裝包介質(zhì)差異化問題和版本配置文件的差異化問題。
[0066]進(jìn)一步的,步驟S400中還包括在所述主機(jī)11上安裝并運(yùn)行客戶端13軟件的步驟;
[0067]所述客戶端13軟件在主機(jī)11上啟動(dòng)后,自動(dòng)收集當(dāng)前主機(jī)11包括操作系統(tǒng)和硬件信息的主機(jī)11信息并上報(bào)給大數(shù)據(jù)管理平臺,并將所述主機(jī)11信息在大數(shù)據(jù)管理平臺中注冊,注冊后的主機(jī)11信息存儲在大數(shù)據(jù)管理平臺的數(shù)據(jù)庫中。
[0068]進(jìn)一步的,步驟S400中還包括在主機(jī)11加入集群前需通過私鑰身份認(rèn)證的步驟。
[0069]進(jìn)一步的,步驟S600還包括根據(jù)各主機(jī)11不同的配置要求創(chuàng)建不同的配置組,并將不同配置要求的主機(jī)11劃分入對應(yīng)配置要求的配置組中;
[0070]步驟S700具體包括:
[0071]S701:大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成相關(guān)配置信息,所述配置信息包括:服務(wù)信息、配置組以及服務(wù)配置信息、主機(jī)11與服務(wù)組件信息、安裝啟動(dòng)任務(wù)信息,并將生成的信息保存至數(shù)據(jù)庫中;
[0072]S702:大數(shù)據(jù)管理平臺根據(jù)各主機(jī)11所需安裝的服務(wù)的不同,將對應(yīng)的安裝啟動(dòng)任務(wù)信息以心跳方式發(fā)送至各主機(jī)11的客戶端13軟件;
[0073]S703:各主機(jī)11的客戶端13軟件接收所述安裝啟動(dòng)任務(wù)信息后根據(jù)所述安裝啟動(dòng)任務(wù)信息中的指令執(zhí)行對應(yīng)所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng),所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng)包括服務(wù)組件的安裝、配置文件的生成和服務(wù)的啟動(dòng)、停止,同時(shí)生成執(zhí)行日記,并將執(zhí)行日志以異步心跳應(yīng)答方式發(fā)送給大數(shù)據(jù)管理平臺。
[0074]進(jìn)一步的,主機(jī)11通過運(yùn)行大數(shù)據(jù)管理平臺分發(fā)過來的客戶端13軟件包進(jìn)行客戶端13軟件的安裝,所述hadoop服務(wù)的軟件安裝包通過客戶端13軟件進(jìn)行安裝和啟動(dòng);
[0075]所述客戶端13軟件包包括客戶端13配置信息和客戶端13安裝程序,所述客戶端13配置信息存儲有定義為hash哈希結(jié)構(gòu)的指定的發(fā)行版、版本號和hadoop服務(wù)的軟件安裝包名稱;
[0076]所述安裝啟動(dòng)任務(wù)信息中包括以所述客戶端13配置信息的hash哈希結(jié)構(gòu)中的發(fā)行版和版本號對應(yīng)生成的hash key哈希密鑰;
[0077]所述客戶端13軟件在接收所述安裝啟動(dòng)任務(wù)信息后,所述客戶端13安裝程序根據(jù)hash key哈希密鑰尋找hadoop服務(wù)的軟件安裝包名稱,并進(jìn)行安裝。
[0078]本發(fā)明提供的另一個(gè)技術(shù)方案為:
[0079]—種hadoop平臺自動(dòng)安裝部署的裝置,包括軟件包發(fā)布模塊、版本定制模塊和運(yùn)行在大數(shù)據(jù)管理平臺中的配置加載模塊、集群管理模塊、第一選擇模塊、分發(fā)模塊、第二選擇模塊、配置模塊、生成模塊和至少一個(gè)的主機(jī),所述主機(jī)包括安裝模塊;
[0080]所述軟件包發(fā)布模塊1,用于發(fā)布hadoop版本軟件安裝包;將不同發(fā)行版和版本號的所述安裝包按照目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器中,版本號目錄層下存放具體的hadoop服務(wù)的軟件安裝包;
[0081]所述版本定制模塊2,用于定制版本配置文件;將不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級結(jié)構(gòu)組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括用于指向yum安裝服務(wù)器對應(yīng)hadoop服務(wù)的軟件安裝包源位置的^po安裝源文件和hadoop服務(wù)目錄列表,每個(gè)hadoop服務(wù)目錄下包括服務(wù)運(yùn)行所需的默認(rèn)配直文件;
[0082]所述配置加載模塊3,用于運(yùn)行大數(shù)據(jù)管理平臺,加載所述配置列表信息;
[0083]所述集群管理模塊4,用于在大數(shù)據(jù)管理平臺創(chuàng)建集群,將主機(jī)11加入集群;
[0084]所述第一選擇模塊5,用于在所述配置列表信息中選擇所需的hadoop發(fā)行版本及版本號;
[0085]所述分發(fā)模塊6,用于自動(dòng)分發(fā)所述第一選擇模塊5中選定的hadoop版本號對應(yīng)的I^po安裝源文件至集群的各主機(jī)11上;
[0086]所述第二選擇模塊7,用于在所述第一選擇模塊5中選定的hadoop版本號對應(yīng)的hadoop服務(wù)目錄列表中選擇各主機(jī)11所需的hadoop服務(wù),并將hadoop服務(wù)對應(yīng)的Master和Slaver節(jié)點(diǎn)分配到各主機(jī)11上;
[0087]所述配置模塊8,用于在所述服務(wù)的默認(rèn)配置文件的基礎(chǔ)上對所選的hadoop服務(wù)的必要參數(shù)進(jìn)行配置;
[0088]所述生成模塊9,用于大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成包括安裝啟動(dòng)任務(wù)信息的相關(guān)配置信息,將所述安裝啟動(dòng)任務(wù)信息發(fā)送至各主機(jī)11 ;
[0089]所述安裝模塊10,用于各主機(jī)11根據(jù)所述repo安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息自動(dòng)安裝并啟動(dòng)各服務(wù)。
[0090]從上述描述可知,本發(fā)明的有益效果在于:本發(fā)明提供一種hadoop平臺自動(dòng)安裝部署的裝置,通過組件適配技術(shù)解決安裝過程中存在的各種差異化問題,提供一個(gè)可普遍適用于安裝各種開源版本的方法及裝置,無論安裝的是Apache開源版、CDH開源版或是HDP開源版,都能夠在大數(shù)據(jù)平臺中實(shí)現(xiàn)自動(dòng)安裝部署和彼此兼容。
[0091]進(jìn)一步的,所述發(fā)布模塊和定制模塊中的所述目錄層級結(jié)構(gòu)中,一級目錄層均為發(fā)行版本,二級目錄層均為版本號,三級均為hadoop服務(wù);
[0092]所述定制模塊的三級目錄層下還存放有包括服務(wù)核心配置文件模板的所述服務(wù)的默認(rèn)配置文件和服務(wù)元數(shù)據(jù)信息描述文件,所述服務(wù)元數(shù)據(jù)信息描述文件定義每個(gè)hadoop服務(wù)下包含的組件,以及組件的Master和Slaver從屬關(guān)系。
[0093]進(jìn)一步的,所述集群管理模塊4還包括安裝在主機(jī)11上的客戶端13 ;
[0094]所述客戶端13,用于在主機(jī)11上啟動(dòng)后,自動(dòng)收集當(dāng)前主機(jī)11包括操作系統(tǒng)和硬件信息的主機(jī)11信息并上報(bào)給大數(shù)據(jù)管理平臺,并將所述主機(jī)11信息在大數(shù)據(jù)管理平臺中注冊,注冊后的主機(jī)11信息存儲在大數(shù)據(jù)管理平臺的數(shù)據(jù)庫中。
[0095]優(yōu)選的,所述客戶端13還包括監(jiān)控模塊,主要用于監(jiān)控當(dāng)前主機(jī)和主機(jī)上運(yùn)行服務(wù)組件的健康狀態(tài),通過心跳發(fā)送主機(jī)的CPU/內(nèi)存/磁盤/網(wǎng)絡(luò)信息、以及服務(wù)組件運(yùn)行狀態(tài)等信息;并負(fù)責(zé)接受和處理生成模塊9發(fā)送的服務(wù)組件安裝、啟動(dòng)、停止指令。
[0096]進(jìn)一步的,所述集群管理模塊4還包括身份認(rèn)證單元12 ;
[0097]所述身份認(rèn)證單元12,用于在主機(jī)11加入集群前進(jìn)行身份認(rèn)證。
[0098]進(jìn)一步的,所述配置模塊8包括配置組創(chuàng)建單元14 ;所述生成模塊9包括發(fā)送單元15 ;所述安裝模塊10包括接收執(zhí)行單元16和應(yīng)答單元17 ;
[0099]所述配置組創(chuàng)建單元14,用于根據(jù)各主機(jī)11不同的配置要求創(chuàng)建不同的配置組,并將不同配置要求的主機(jī)11劃分入對應(yīng)配置要求的配置組中;
[0100]所述生成模塊9,具體用于大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成相關(guān)配置信息,所述配置信息包括:服務(wù)信息、配置組以及服務(wù)配置信息、主機(jī)11與服務(wù)組件信息、安裝啟動(dòng)任務(wù)信息,并將生成的信息保存至數(shù)據(jù)庫中;
[0101]所述發(fā)送單元15,用于大數(shù)據(jù)管理平臺根據(jù)各主機(jī)11所需安裝的服務(wù)的不同,將對應(yīng)的安裝啟動(dòng)任務(wù)信息以心跳方式發(fā)送至各主機(jī)11的客戶端13軟件;
[0102]所述接收執(zhí)行單元16,用于各主機(jī)11的客戶端13軟件接收所述安裝啟動(dòng)任務(wù)信息后根據(jù)所述安裝啟動(dòng)任務(wù)信息中的指令執(zhí)行對應(yīng)所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng),所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng)包括服務(wù)組件的安裝、配置文件的生成和服務(wù)的啟動(dòng)、停止;
[0103]所述應(yīng)答單元17,用于將所述接收執(zhí)行單元16執(zhí)行后生成的執(zhí)行日志以異步心跳應(yīng)答方式發(fā)送給大數(shù)據(jù)管理平臺。
[0104]進(jìn)一步的,主機(jī)11通過運(yùn)行大數(shù)據(jù)管理平臺分發(fā)過來的客戶端13軟件包進(jìn)行客戶端13的安裝,所述接收執(zhí)行單元16在客戶端13上運(yùn)行;
[0105]所述客戶端13軟件包包括客戶端13配置信息和客戶端13安裝程序,所述客戶端13配置信息存儲有定義為hash哈希結(jié)構(gòu)的指定的發(fā)行版、版本號和hadoop服務(wù)的軟件安裝包名稱;
[0106]所述接收執(zhí)行單元16接收的所述安裝啟動(dòng)任務(wù)信息中包括以所述客戶端13配置信息的hash哈希結(jié)構(gòu)中的發(fā)行版和版本號對應(yīng)生成的hash key哈希密鑰;
[0107]所述接收執(zhí)行單元16,具體用于在接收所述安裝啟動(dòng)任務(wù)信息后,通過客戶端13中的所述客戶端13安裝程序根據(jù)hash key哈希密鑰尋找hadoop服務(wù)的軟件安裝包名稱,并進(jìn)行安裝。
[0108]本發(fā)明的實(shí)施例一為:
[0109]步驟1:根據(jù)通用性設(shè)計(jì)原則發(fā)布hadoop版本軟件安裝包并定制版本配置文件,供集群內(nèi)所有主機(jī)11安裝使用:
[0110]軟件安裝包存放在yum安裝服務(wù)器上,針對安裝包介質(zhì)差異化問題:因yum基于http服務(wù)進(jìn)行安裝,在發(fā)布軟件包時(shí)將不同發(fā)行版和版本的軟件包按照“Hadoop發(fā)行版/版本號”的目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器的http服務(wù)目錄下即可,版本號目錄下存放具體的軟件安裝包;
[0111]版本配置文件存放在管理平臺上,包含指定yum安裝源地址的repo文件和每個(gè)hadoop服務(wù)的配置默認(rèn)文件;這兩類文件針對不同hadoop發(fā)行版以及不同版本號均有所不同;
[0112]針對版本配置文件差異化的問題:在管理平臺上將不同hadoop發(fā)行版本通過目錄分隔,如⑶H、HDP等;
[0113]同一個(gè)Hadoop發(fā)行版下的不同版本號用二級目錄區(qū)分,如CDH/5.1、HDP/2.0等;二級目錄下包含:一個(gè)yum安裝源repo定義文件和若干三級目錄;通過這種方式可以實(shí)現(xiàn)不同發(fā)行版的不同版本進(jìn)行差異化定制;
[0114]三級目錄以服務(wù)名進(jìn)行命名:代表該發(fā)行版有哪些可安裝服務(wù),如CDH/5.1/HDFS,每個(gè)3級服務(wù)目錄下包含2類文件:配置文件模板(hadoop服務(wù)核心配置文件),服務(wù)元數(shù)據(jù)信息描述文件(定義每個(gè)服務(wù)下的包含哪些組件,以及的組件的Master、slaver從屬關(guān)系);
[0115]步驟2:運(yùn)行大數(shù)據(jù)管理平臺,加載步驟I的所有配置信息并提供WEB訪問服務(wù);
[0116]步驟3:用戶訪問大數(shù)據(jù)管理平臺人機(jī)界面,創(chuàng)建集群并選擇需要安裝的Hadoop發(fā)行版本;可供選擇的發(fā)行版本為步驟I中配置加載的Hadoop發(fā)行版+版本號列表信息,如 CDH 5.UHDP 2.0 等;
[0117]步驟4:將主機(jī)11加入集群,系統(tǒng)在主機(jī)11上安裝客戶端13軟件,并自動(dòng)分發(fā)repo文件到集群各主機(jī)11 ;具體操作如下:
[0118]用戶輸入需要加入集群的主機(jī)11列表,并提供管理平臺免登錄密鑰,點(diǎn)擊確定;
[0119]管理平臺通過頁面選擇的私鑰與集群內(nèi)主機(jī)11做身份認(rèn)證,一旦認(rèn)證通過,則將步驟3選擇版本對應(yīng)的repo安裝源文件復(fù)制到集群的每臺主機(jī)11上,使每臺客戶端13主機(jī)11都具備Hadoop軟件安裝環(huán)境;
[0120]管理平臺調(diào)用客戶端13安裝和啟動(dòng)命令,在集群內(nèi)每臺主機(jī)11上安裝和運(yùn)行客戶立而13軟件;
[0121]客戶端13軟件啟動(dòng)后,收集當(dāng)前主機(jī)11的操作系統(tǒng)和硬件信息,自動(dòng)到管理平臺進(jìn)行注冊;管理平臺收到注冊信息后,將主機(jī)11信息存儲到數(shù)據(jù)庫中;
[0122]步驟5:用戶進(jìn)入選擇hadoop服務(wù)界面,可選服務(wù)列表為步驟3中Hadoop發(fā)行版+版本號下邊對應(yīng)的服務(wù)列表信息;并將各個(gè)服務(wù)的Master和Slaver節(jié)點(diǎn)分配到集群中的各個(gè)主機(jī)11上;
[0123]步驟6:用戶進(jìn)入服務(wù)配置界面,進(jìn)行必要的服務(wù)參數(shù)設(shè)置:
[0124]管理平臺首先根據(jù)步驟I定制的服務(wù)核心配置文件模板展現(xiàn)默認(rèn)配置,用戶進(jìn)行必要的參數(shù)配置;
[0125]針對不同主機(jī)11需要實(shí)現(xiàn)不同配置的情況,可通過配置組實(shí)現(xiàn),將不同的主機(jī)11劃分到不同的配置組;配置組至少有一個(gè),系統(tǒng)會(huì)默認(rèn)創(chuàng)建一個(gè)配置組,一個(gè)主機(jī)11只能屬于一個(gè)配置組,服務(wù)配置應(yīng)用于配置組,而非主機(jī)11 ;
[0126]步驟7:完成服務(wù)配置以后,系統(tǒng)根據(jù)用戶選擇情況自動(dòng)在每臺主機(jī)11上安裝并啟動(dòng)各個(gè)服務(wù)組件。具體操作如下:
[0127]管理平臺根據(jù)用戶以上步驟的選擇,生成服務(wù)信息、配置組以及服務(wù)配置信息、主機(jī)11與服務(wù)組件信息、安裝和啟動(dòng)任務(wù)信息,并保存到的數(shù)據(jù)庫;
[0128]管理平臺將每臺主機(jī)11上需要執(zhí)行的安裝命令和啟動(dòng)命令通過心跳方式發(fā)給每臺主機(jī)11的客戶端13軟件;
[0129]客戶端13軟件收到管理平臺發(fā)送的指令,完成服務(wù)組件的安裝、配置文件生成、以及服務(wù)的啟動(dòng),并將執(zhí)行日志以異步心跳應(yīng)答方式發(fā)回給管理平臺。
[0130]針對安裝包名稱不同的問題:本問題主要影響客戶端13軟件中的安裝程序中指定的安裝包名。通過如下方法解決:在客戶端13配置中,將發(fā)行版名稱、版本號、安裝包名定義為二級hash結(jié)構(gòu),本配置作為客戶端13軟件包的一部分,會(huì)在步驟4客戶端13軟件安裝時(shí)分發(fā)到每臺主機(jī)11上。管理平臺向客戶端13主機(jī)11發(fā)送安裝指令時(shí),會(huì)帶有發(fā)行版名稱、版本號信息,客戶端13安裝程序根據(jù)hash key值尋找安裝包名稱,并進(jìn)行安裝;
[0131]針對安裝步驟有差異的問題:在客戶端13配置中定義各個(gè)發(fā)行版本服務(wù)的軟件安裝流程和安裝命令,客戶端13軟件根據(jù)配置調(diào)用各安裝步驟和安裝命令,以解決差異化的問題。
[0132]請參照圖3,本發(fā)明的實(shí)施例二為:
[0133]一種hadoop平臺自動(dòng)安裝部署的裝置,包括人機(jī)交互界面、集群管理模塊4、服務(wù)管理模塊、主機(jī)11管理、監(jiān)控管理、告警管理、系統(tǒng)管理、數(shù)據(jù)庫處理模塊、主機(jī)11通訊模塊、客戶端13軟件、主機(jī)11和數(shù)據(jù)庫。
[0134]人機(jī)交互界面,即大數(shù)據(jù)管理平臺的人機(jī)交互界面,是用戶對集群以及集群主機(jī)11的各種操作的統(tǒng)一入口,基于B/S架構(gòu),用戶通過瀏覽器即可登錄管理平臺;
[0135]集群管理模塊4,用于負(fù)責(zé)集群創(chuàng)建、集群信息展現(xiàn)等;
[0136]服務(wù)管理模塊,主要作用是服務(wù)配置管理、服務(wù)新增、服務(wù)啟動(dòng)/停止等操作。以上各服務(wù)操作指令會(huì)通過管理平臺發(fā)送給客戶端13主機(jī)11執(zhí)行;
[0137]主機(jī)11管理模塊,主要作用是集群主機(jī)11查詢、主機(jī)11狀態(tài)監(jiān)控、主機(jī)11新增、主機(jī)11退出、在主機(jī)11上安裝新組件、退出組件等操作;
[0138]監(jiān)控管理模塊,主要用于負(fù)責(zé)整個(gè)集群主機(jī)11和服務(wù)狀態(tài)監(jiān)控。通過對各類服務(wù)的jmx信息和主機(jī)11心跳信息的采集,形成各類監(jiān)控圖表??梢怨┯脩舨樵儺?dāng)前和歷史數(shù)據(jù);
[0139]告警管理模塊,用于實(shí)現(xiàn)集群中服務(wù)或主機(jī)11的健康檢查,支持自定義健康檢查命令和檢查策略、狀態(tài)異常的通知方式、異常事件處理動(dòng)作等。
[0140]系統(tǒng)管理,用于提供管理平臺賬號和權(quán)限管理。
[0141]數(shù)據(jù)處理模塊,用于本模塊主要負(fù)責(zé)為管理平臺各類操作提供數(shù)據(jù)庫操作接口,實(shí)現(xiàn)數(shù)據(jù)庫的增加、修改、刪除、查詢操作。
[0142]主機(jī)11通訊模塊,用于本模塊為管理平臺上運(yùn)行的一個(gè)服務(wù)進(jìn)程,主要負(fù)責(zé)與集群中各個(gè)主機(jī)11進(jìn)行心跳通信。本模塊發(fā)送給客戶端13主機(jī)11的心跳信息分類兩類:一類是狀態(tài)檢查心跳,這類心跳只是讓每臺主機(jī)11上報(bào)各主機(jī)11上運(yùn)行的組件運(yùn)行狀態(tài)?’另一類是指令類信息,這中是根據(jù)用戶操作事件觸發(fā),當(dāng)用戶操作服務(wù)啟停等操作是會(huì)發(fā)送此類心跳信息。
[0143]客戶端13通信軟件,用于為集群每臺主機(jī)11上運(yùn)行的服務(wù)進(jìn)程,負(fù)責(zé)與模塊9進(jìn)行通訊。負(fù)責(zé)響應(yīng)主機(jī)11通訊模塊發(fā)送過來的心跳指令,并進(jìn)行應(yīng)答。針對狀態(tài)檢查心跳,客戶端13通信軟件會(huì)把該主機(jī)11上運(yùn)行所有的hadoop服務(wù)信息上報(bào)給管理平臺,便于管理平臺監(jiān)控和管理;針對指令類信息,負(fù)責(zé)執(zhí)行操作指令,如組件安裝、服務(wù)啟停等,并將執(zhí)行結(jié)果異步返回給管理平臺。
[0144]yum:(全稱為 Yellow dog Updater, Modified)是一個(gè)在 Fedora 和 RedHat 以及SUSE中的Shell前端軟件包管理器?;赗PM包管理,能夠從指定的服務(wù)器自動(dòng)下載RPM包并且安裝,可以自動(dòng)處理依賴性關(guān)系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝??蛻舳?3主機(jī)11在使用yum時(shí),需要通過repo文件指定安裝軟件源的安裝位置。
[0145]本發(fā)明與現(xiàn)有技術(shù)的相比,在一個(gè)50節(jié)點(diǎn)規(guī)模的集群中,如采用手工部署一個(gè)Hadoop集群,從集群規(guī)劃、軟件安裝、服務(wù)配置、配置分發(fā),到服務(wù)啟動(dòng),以及可用性檢查。所有工作完成需要I天左右時(shí)間;如果主機(jī)11數(shù)量更多,則時(shí)間會(huì)成倍增長;在采用本方案的情況下,僅需半個(gè)小時(shí)就可以完成以上工作。因?yàn)椴煌鳈C(jī)11上的安裝任務(wù)支持并行執(zhí)行,主機(jī)11數(shù)量的增多對安裝效率基本沒有影響。
[0146]本發(fā)明經(jīng)過實(shí)驗(yàn),已經(jīng)能夠在Hadoop Apache開源版、Q)H開源版(包括4.4、4.6、5.0.1,5.1.0,5.1.2)、HDP開源版(包括2.0,2.06,2.1)多個(gè)版本中安裝部署成功。同時(shí),本發(fā)明也可普遍用于分布系統(tǒng)中任意軟件的自動(dòng)化安裝、配置分發(fā)、狀態(tài)監(jiān)控,軟件并不僅僅限于Hadoop的相關(guān)軟件,也可以是其他分布式部署的軟件(如分布式隊(duì)列、分布式數(shù)據(jù)庫等)。
[0147]綜上所述,本發(fā)明提供的一種hadoop平臺自動(dòng)安裝部署的方法及裝置,不僅能夠?qū)崿F(xiàn)在大數(shù)據(jù)管理平臺中完成各種Hadoop開源版的自動(dòng)安裝和部署;還能很好的解決不同Hadoop開源版的安裝版本的兼容問題;進(jìn)一步的,還能解決平臺上主機(jī)11數(shù)量對安裝效率的影響,明顯縮短hadoop平臺安裝部署的時(shí)間,大大提高h(yuǎn)adoop平臺安裝部署的效率。
[0148]以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等同變換,或直接或間接運(yùn)用在相關(guān)的【技術(shù)領(lǐng)域】,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種hadoop平臺自動(dòng)安裝部署的方法,其特征在于,包括: SlOO:發(fā)布hadoop版本軟件安裝包,定制版本配置文件; 不同發(fā)行版和版本號的所述安裝包按照目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器中,版本號目錄層下存放具體的hadoop服務(wù)的軟件安裝包; 不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級結(jié)構(gòu)組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括用于指向yum安裝服務(wù)器對應(yīng)hadoop服務(wù)的軟件安裝包源位置的repo安裝源文件和hadoop服務(wù)目錄列表,每個(gè)hadoop服務(wù)目錄下包括服務(wù)運(yùn)行所需的默認(rèn)配置文件; S200:運(yùn)行大數(shù)據(jù)管理平臺,加載所述配置列表信息; S300:在大數(shù)據(jù)管理平臺創(chuàng)建集群,在所述配置列表信息中選擇所需的hadoop發(fā)行版本及版本號; S400:將主機(jī)加入集群,自動(dòng)分發(fā)步驟S300中選定的hadoop版本號對應(yīng)的1*印0安裝源文件至集群的各主機(jī)上; S500:在選定的hadoop版本號對應(yīng)的hadoop服務(wù)目錄列表中選擇各主機(jī)所需的hadoop服務(wù),并將hadoop服務(wù)對應(yīng)的Master和Slaver節(jié)點(diǎn)分配到各主機(jī)上; S600:在所述服務(wù)的默認(rèn)配置文件的基礎(chǔ)上對所選的hadoop服務(wù)的必要參數(shù)進(jìn)行配置; 5700:大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成包括安裝啟動(dòng)任務(wù)信息的相關(guān)配置信息,將所述安裝啟動(dòng)任務(wù)信息發(fā)送至各主機(jī); 各主機(jī)根據(jù)所述1"印0安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息自動(dòng)安裝并啟動(dòng)各服務(wù)。
2.根據(jù)權(quán)利要求1所述的一種hadoop平臺自動(dòng)安裝部署的方法,其特征在于,在步驟SlOO中,所述安裝包和所述hadoop版本配置文件的目錄層級結(jié)構(gòu)中,一級目錄層均為發(fā)行版本,二級目錄層均為版本號,三級均為hadoop服務(wù); 所述hadoop版本配置文件的三級目錄層下還存放有包括服務(wù)核心配置文件模板的所述服務(wù)的默認(rèn)配置文件和服務(wù)元數(shù)據(jù)信息描述文件,所述服務(wù)元數(shù)據(jù)信息描述文件定義每個(gè)hadoop服務(wù)下包含的組件,以及組件的Master和Slaver從屬關(guān)系。
3.根據(jù)權(quán)利要求1所述的一種hadoop平臺自動(dòng)安裝部署的方法,其特征在于,包括在所述主機(jī)上安裝并運(yùn)行客戶端軟件的步驟; 所述客戶端軟件在主機(jī)上啟動(dòng)后,自動(dòng)收集當(dāng)前主機(jī)包括操作系統(tǒng)和硬件信息的主機(jī)信息并上報(bào)給大數(shù)據(jù)管理平臺,并將所述主機(jī)信息在大數(shù)據(jù)管理平臺中注冊,注冊后的主機(jī)信息存儲在大數(shù)據(jù)管理平臺的數(shù)據(jù)庫中。
4.根據(jù)權(quán)利要求1所述的一種hadoop平臺自動(dòng)安裝部署的方法,其特征在于,步驟S400中還包括在主機(jī)加入集群前需通過私鑰身份認(rèn)證的步驟。
5.根據(jù)權(quán)利要求3所述的一種hadoop平臺自動(dòng)安裝部署的方法,其特征在于,步驟S600還包括根據(jù)各主機(jī)不同的配置要求創(chuàng)建不同的配置組,并將不同配置要求的主機(jī)劃分入對應(yīng)配置要求的配置組中; 步驟S700具體包括: 5701:大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成相關(guān)配置信息,所述配置信息包括:服務(wù)信息、配置組以及服務(wù)配置信息、主機(jī)與服務(wù)組件信息、安裝啟動(dòng)任務(wù)信息,并將生成的信息保存至數(shù)據(jù)庫中; S702:大數(shù)據(jù)管理平臺根據(jù)各主機(jī)所需安裝的服務(wù)的不同,將對應(yīng)的安裝啟動(dòng)任務(wù)信息以心跳方式發(fā)送至各主機(jī)的客戶端軟件; S703:各主機(jī)的客戶端軟件接收所述安裝啟動(dòng)任務(wù)信息后根據(jù)所述安裝啟動(dòng)任務(wù)信息中的指令執(zhí)行對應(yīng)所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng),所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng)包括服務(wù)組件的安裝、配置文件的生成和服務(wù)的啟動(dòng)、停止,同時(shí)生成執(zhí)行日記,并將執(zhí)行日志以異步心跳應(yīng)答方式發(fā)送給大數(shù)據(jù)管理平臺。
6.根據(jù)權(quán)利要求3所述的一種hadoop平臺自動(dòng)安裝部署的方法,其特征在于,主機(jī)通過運(yùn)行大數(shù)據(jù)管理平臺分發(fā)過來的客戶端軟件包進(jìn)行客戶端軟件的安裝,所述hadoop服務(wù)的軟件安裝包通過客戶端軟件進(jìn)行安裝和啟動(dòng); 所述客戶端軟件包包括客戶端配置信息和客戶端安裝程序,所述客戶端配置信息存儲有定義為hash哈希結(jié)構(gòu)的指定的發(fā)行版、版本號和hadoop服務(wù)的軟件安裝包名稱;所述安裝啟動(dòng)任務(wù)信息中包括以所述客戶端配置信息的hash哈希結(jié)構(gòu)中的發(fā)行版和版本號對應(yīng)生成的hash key哈希密鑰; 所述客戶端軟件在接收所述安裝啟動(dòng)任務(wù)信息后,所述客戶端安裝程序根據(jù)hash key哈希密鑰尋找hadoop服務(wù)的軟件安裝包名稱,并進(jìn)行安裝。
7.—種hadoop平臺自動(dòng)安裝部署的裝置,其特征在于,包括軟件包發(fā)布模塊、版本定制模塊和運(yùn)行在大數(shù)據(jù)管理平臺中的配置加載模塊、集群管理模塊、第一選擇模塊、分發(fā)模塊、第二選擇模塊、配置模塊、生成模塊和至少一個(gè)的主機(jī),所述主機(jī)包括安裝模塊; 所述軟件包發(fā)布模塊,用于發(fā)布hadoop版本軟件安裝包;將不同發(fā)行版和版本號的所述安裝包按照目錄層次結(jié)構(gòu)存放在yum安裝服務(wù)器中,版本號目錄層下存放具體的hadoop服務(wù)的軟件安裝包; 所述版本定制模塊,用于定制版本配置文件;將不同發(fā)行版和版本號的hadoop版本配置文件按照目錄層級結(jié)構(gòu)組成配置列表信息后存放在大數(shù)據(jù)管理平臺上,版本號目錄層下存放有包括用于指向yum安裝服務(wù)器對應(yīng)hadoop服務(wù)的軟件安裝包源位置的repo安裝源文件和hadoop服務(wù)目錄列表,每個(gè)hadoop服務(wù)目錄下包括服務(wù)運(yùn)行所需的默認(rèn)配置文件; 所述配置加載模塊,用于運(yùn)行大數(shù)據(jù)管理平臺,加載所述配置列表信息; 所述集群管理模塊,用于在大數(shù)據(jù)管理平臺創(chuàng)建集群,將主機(jī)加入集群; 所述第一選擇模塊,用于在所述配置列表信息中選擇所需的hadoop發(fā)行版本及版本號; 所述分發(fā)模塊,用于自動(dòng)分發(fā)所述第一選擇模塊中選定的hadoop版本號對應(yīng)的repo安裝源文件至集群的各主機(jī)上; 所述第二選擇模塊,用于在所述第一選擇模塊中選定的hadoop版本號對應(yīng)的hadoop服務(wù)目錄列表中選擇各主機(jī)所需的hadoop服務(wù),并將hadoop服務(wù)對應(yīng)的Master和Slaver節(jié)點(diǎn)分配到各主機(jī)上; 所述配置模塊,用于在所述服務(wù)的默認(rèn)配置文件的基礎(chǔ)上對所選的hadoop服務(wù)的必要參數(shù)進(jìn)行配置; 所述生成模塊,用于大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成包括安裝啟動(dòng)任務(wù)信息的相關(guān)配置信息,將所述安裝啟動(dòng)任務(wù)信息發(fā)送至各主機(jī); 所述安裝模塊,用于各主機(jī)根據(jù)所述1"印0安裝源文件獲取相對應(yīng)的所述hadoop服務(wù)的軟件安裝包,并根據(jù)所述安裝啟動(dòng)任務(wù)信息自動(dòng)安裝并啟動(dòng)各服務(wù)。
8.根據(jù)權(quán)利要求7所述的一種hadoop平臺自動(dòng)安裝部署的裝置,其特征在于,所述發(fā)布模塊和定制模塊中的所述目錄層級結(jié)構(gòu)中,一級目錄層均為發(fā)行版本,二級目錄層均為版本號,三級均為hadoop服務(wù); 所述定制模塊的三級目錄層下還存放有包括服務(wù)核心配置文件模板的所述服務(wù)的默認(rèn)配置文件和服務(wù)元數(shù)據(jù)信息描述文件,所述服務(wù)元數(shù)據(jù)信息描述文件定義每個(gè)hadoop服務(wù)下包含的組件,以及組件的Master和Slaver從屬關(guān)系。
9.根據(jù)權(quán)利要求7所述的一種hadoop平臺自動(dòng)安裝部署的裝置,其特征在于,所述集群管理模塊還包括安裝在主機(jī)上的客戶端; 所述客戶端,用于在主機(jī)上啟動(dòng)后,自動(dòng)收集當(dāng)前主機(jī)包括操作系統(tǒng)和硬件信息的主機(jī)信息并上報(bào)給大數(shù)據(jù)管理平臺,并將所述主機(jī)信息在大數(shù)據(jù)管理平臺中注冊,注冊后的主機(jī)信息存儲在大數(shù)據(jù)管理平臺的數(shù)據(jù)庫中。
10.根據(jù)權(quán)利要求7所述的一種hadoop平臺自動(dòng)安裝部署的裝置,其特征在于,所述集群管理模塊還包括身份認(rèn)證單元; 所述身份認(rèn)證單元,用于在主機(jī)加入集群前進(jìn)行身份認(rèn)證。
11.根據(jù)權(quán)利要求9所述的一種hadoop平臺自動(dòng)安裝部署的裝置,其特征在于,所述配置模塊包括配置組創(chuàng)建單元;所述生成模塊包括發(fā)送單元;所述安裝模塊包括接收執(zhí)行單元和應(yīng)答單元; 所述配置組創(chuàng)建單元,用于根據(jù)各主機(jī)不同的配置要求創(chuàng)建不同的配置組,并將不同配置要求的主機(jī)劃分入對應(yīng)配置要求的配置組中; 所述生成模塊,具體用于大數(shù)據(jù)管理平臺根據(jù)重新配置后的服務(wù)配置文件生成相關(guān)配置信息,所述配置信息包括:服務(wù)信息、配置組以及服務(wù)配置信息、主機(jī)與服務(wù)組件信息、安裝啟動(dòng)任務(wù)信息,并將生成的信息保存至數(shù)據(jù)庫中; 所述發(fā)送單元,用于大數(shù)據(jù)管理平臺根據(jù)各主機(jī)所需安裝的服務(wù)的不同,將對應(yīng)的安裝啟動(dòng)任務(wù)信息以心跳方式發(fā)送至各主機(jī)的客戶端軟件; 所述接收執(zhí)行單元,用于各主機(jī)的客戶端軟件接收所述安裝啟動(dòng)任務(wù)信息后根據(jù)所述安裝啟動(dòng)任務(wù)信息中的指令執(zhí)行對應(yīng)所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng),所述hadoop服務(wù)的軟件安裝包的安裝和啟動(dòng)包括服務(wù)組件的安裝、配置文件的生成和服務(wù)的啟動(dòng)、停止; 所述應(yīng)答單元,用于將所述接收執(zhí)行單元執(zhí)行后生成的執(zhí)行日志以異步心跳應(yīng)答方式發(fā)送給大數(shù)據(jù)管理平臺。
12.根據(jù)權(quán)利要求9所述的一種hadoop平臺自動(dòng)安裝部署的裝置,其特征在于,主機(jī)通過運(yùn)行大數(shù)據(jù)管理平臺分發(fā)過來的客戶端軟件包進(jìn)行客戶端的安裝,所述接收執(zhí)行單元在客戶端上運(yùn)行; 所述客戶端軟件包包括客戶端配置信息和客戶端安裝程序,所述客戶端配置信息存儲有定義為hash哈希結(jié)構(gòu)的指定的發(fā)行版、版本號和hadoop服務(wù)的軟件安裝包名稱; 所述接收執(zhí)行單元接收的所述安裝啟動(dòng)任務(wù)信息中包括以所述客戶端配置信息的hash哈希結(jié)構(gòu)中的發(fā)行版和版本號對應(yīng)生成的hash key哈希密鑰; 所述接收執(zhí)行單元,具體用于在接收所述安裝啟動(dòng)任務(wù)信息后,通過客戶端中的所述客戶端安裝程序根據(jù)hash key哈希密鑰尋找hadoop服務(wù)的軟件安裝包名稱,并進(jìn)行安裝。
【文檔編號】G06F9/445GK104317610SQ201410534261
【公開日】2015年1月28日 申請日期:2014年10月11日 優(yōu)先權(quán)日:2014年10月11日
【發(fā)明者】白默, 王雷, 林克, 何凌毅, 朱堅(jiān), 陸向東 申請人:福建新大陸軟件工程有限公司