當(dāng)前在Hadoop技術(shù)的發(fā)展中,如何把Docker技術(shù)應(yīng)用于Hadoop平臺(tái)的建立,尤其是對(duì)于Hadoop on Docker規(guī)模部署問(wèn)題的解決,一直是一個(gè)備受關(guān)注的技術(shù)難點(diǎn)。因此,本次的中國(guó)Hadoop技術(shù)峰會(huì)中,首次實(shí)現(xiàn)一鍵規(guī)模部署的Hadoop on Docker及其DEMO演示,也成為了大會(huì)中的一大熱點(diǎn)話(huà)題。
下午兩點(diǎn),星環(huán)首席工程師呂侶在Hadoop系統(tǒng)架構(gòu)分論壇發(fā)表了題為《Hadoop on Docker-from development to production》的演講,展示了星環(huán)科技自主研發(fā)的產(chǎn)品Transwarp operating system(TOS)在Hadoop on Docker領(lǐng)域做出的優(yōu)化與突破。
在過(guò)去,Hadoop on Docker大數(shù)據(jù)平臺(tái)的部署,只在單機(jī)情況下實(shí)現(xiàn)過(guò),而且過(guò)程繁瑣,耗時(shí)很長(zhǎng)。雖然類(lèi)似Pivotal方案也實(shí)現(xiàn)過(guò)一鍵部署,但是單機(jī)的小規(guī)模部署對(duì)于Hadoop這樣的大數(shù)據(jù)平臺(tái)并不具有實(shí)際意義。(如下圖所示)此前,具有真正應(yīng)用意義的多機(jī)部署也從未真正實(shí)現(xiàn)過(guò)。那么,如何借助Docker作為優(yōu)化手段,在大規(guī)模多機(jī)器的情況下進(jìn)行一鍵部署,是目前Hadoop系統(tǒng)架構(gòu)方面最受關(guān)注的技術(shù)熱點(diǎn)之一。
過(guò)去,幾百臺(tái)規(guī)模集群的Hadoop on Docker的部署,從未有人實(shí)現(xiàn)過(guò),這也是Hadoop on Docker難以落地應(yīng)用的主要原因之一。而一鍵規(guī)?;渴饎t更是繞過(guò)了Hadoop on Docker在市場(chǎng)的適應(yīng)期,降低了安裝和使用的成本,使企業(yè)用戶(hù)可以更早更快地使用該技術(shù),是在Hadoop技術(shù)發(fā)展和推廣中舉足輕重的一個(gè)技術(shù)突破。
在實(shí)現(xiàn)規(guī)?;渴鸬那疤嶂?,呂侶首先將Hadoop on Docker的研發(fā)目標(biāo)定位于簡(jiǎn)化部署、支持大數(shù)據(jù)應(yīng)用與普通應(yīng)用以及減少性能損耗等幾方面,在明確了研發(fā)方向以后指出了過(guò)去一些方案的弱點(diǎn)在于單機(jī)化。隨即他展示了星環(huán)科技產(chǎn)品TOS的最新演示,可以看到TOS在支持大規(guī)模部署的前提下實(shí)現(xiàn)了“一鍵部署”流程,平均部署時(shí)間只要七分半。同時(shí),呂侶也提出了TOS替代YARN的必要性在于裸機(jī)部署和資源隔離問(wèn)題兩方面。(下圖為T(mén)DH一鍵部署界面)
Hadoop on Docker一鍵部署DEMO詳見(jiàn)(http://v.qq.com/page/v/x/p/v0160jnmnxp.html)
這是國(guó)內(nèi)首次完成基于Docker實(shí)現(xiàn)的Hadoop平臺(tái)大規(guī)模一鍵部署,也是第一次完成能夠應(yīng)用于落地方案的、具有實(shí)際意義的部署簡(jiǎn)化。在此之上,大規(guī)模部署的時(shí)間也在TOS的支持下達(dá)到了八分鐘以?xún)?nèi),可以說(shuō)是簡(jiǎn)潔與高效并存的優(yōu)化與技術(shù)突破。Transwarp Operation System (TOS)統(tǒng)一調(diào)度系統(tǒng)容器和用戶(hù)容器,分配所有節(jié)點(diǎn)包括CPU/內(nèi)存/磁盤(pán)在內(nèi)的各種資源。應(yīng)用可以通過(guò)指定TOS調(diào)度策略來(lái)影響最終的調(diào)度結(jié)果。
所有TDH組件都單獨(dú)通過(guò)自動(dòng)化CI生成,內(nèi)部的二進(jìn)制代碼和環(huán)境變量在運(yùn)行時(shí)不可改。鏡像附帶默認(rèn)配置,也可以通過(guò)環(huán)境變量或者掛載配置卷定制。
鏡像數(shù)據(jù)分離。將數(shù)據(jù)保持在數(shù)據(jù)卷中,當(dāng)需要更新鏡像時(shí),可以直接殺掉老容器,將數(shù)據(jù)卷掛載在新容器中恢復(fù)服務(wù)。
統(tǒng)一提供集群級(jí)別的DNS、日志收集和監(jiān)控模塊,并保障這些模塊的HA。
調(diào)度計(jì)算節(jié)點(diǎn)時(shí)獲取相關(guān)數(shù)據(jù)的位置,盡量利用本地資源。容器和容器知曉相對(duì)的位置關(guān)系(如在同一主機(jī)上),以便利用本地讀寫(xiě)特性。
和之前的兩種部署方式相比,星環(huán)的部署通過(guò)引入TOS,將資源虛擬化、平臺(tái)化,不但解決了Hadoop本身的部署,并且還可以在同一個(gè)集群中,同時(shí)部署其他非Hadoop的應(yīng)用,比如MySQL和Redis。并且在維護(hù)和升級(jí)過(guò)程中,可以通過(guò)簡(jiǎn)單替換鏡像來(lái)完成,并且通過(guò)引入灰度升級(jí),可以將線(xiàn)上系統(tǒng)的更換風(fēng)險(xiǎn)降到最低。
可以看到,TOS支持私有集群與公有云,實(shí)現(xiàn)一鍵部署統(tǒng)一流程,在對(duì)Docker的支持上進(jìn)一步完善,減小性能損耗。是筆者在現(xiàn)有IT市場(chǎng)所看到的最完善的Hadoop on Docker解決方案。
分享到微信 ×
打開(kāi)微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁(yè)分享至朋友圈。