1.一種利用Docker容器自動(dòng)化部署與管理大數(shù)據(jù)集群的方法,其特征在于:通過(guò)編寫Dockerfile文件構(gòu)建Hadoop大數(shù)據(jù)集群自動(dòng)化部署相關(guān)的Docker鏡像,包括Server端鏡像和Agent端鏡像;利用Server端鏡像啟動(dòng)一個(gè)Server容器,利用Agent端鏡像啟動(dòng)多個(gè)Agent端,由Server端對(duì)多個(gè)Agent端進(jìn)行統(tǒng)一管理,同時(shí)在Server容器中啟動(dòng)Web應(yīng)用;建立一個(gè)由Server端、多Agent端和Web端組成的分布式架構(gòu),自動(dòng)化啟動(dòng)部署Hadoop相關(guān)大數(shù)據(jù)集群的服務(wù)。
2.根據(jù)權(quán)利要求1所述的利用Docker容器自動(dòng)化部署與管理大數(shù)據(jù)集群的方法,其特征在于:所述Web端基于Ember JS框架,負(fù)責(zé)引導(dǎo)用戶進(jìn)行大數(shù)據(jù)組件安裝,安裝完成后對(duì)集群、主機(jī)和組件進(jìn)行可視化監(jiān)控,同時(shí)支持各個(gè)組件的啟停等操作與配置的調(diào)優(yōu);
所述Server端負(fù)責(zé)與Web端和Agent端進(jìn)行交互,開(kāi)放兩大類API,其中一類API為Web端提供監(jiān)控管理服務(wù),實(shí)現(xiàn)應(yīng)用的安裝部署與管理監(jiān)控可視化;另一類API用于與Agent端進(jìn)行交互,分發(fā)任務(wù)到指定的Agent,同時(shí)接受Agent向Server發(fā)送心跳請(qǐng)求,實(shí)時(shí)監(jiān)控Agent的狀態(tài);
所述Agent端負(fù)責(zé)調(diào)用Python腳本進(jìn)行應(yīng)用的自動(dòng)化安裝以及主機(jī)狀態(tài)的監(jiān)控,同時(shí)支持主機(jī)數(shù)量的擴(kuò)展,對(duì)Metrics進(jìn)行封裝,實(shí)現(xiàn)對(duì)集群、主機(jī)和應(yīng)用的監(jiān)控,結(jié)合Grafana更好地實(shí)現(xiàn)監(jiān)控信息的可視化。
3.根據(jù)權(quán)利要求2所述的利用Docker容器自動(dòng)化部署與管理大數(shù)據(jù)集群的方法,其特征在于:所述Web端引導(dǎo)用戶進(jìn)行大數(shù)據(jù)組件安裝,包括添加主機(jī)、選擇應(yīng)用、主機(jī)分配、修改配置。