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