DIY Hadoop大數(shù)據(jù)環(huán)境的5大陷阱
雖然Hadoop可以運(yùn)行在廉價(jià)的商品計(jì)算機(jī)硬件,且用戶很容易添加節(jié)點(diǎn),但是它有一些細(xì)節(jié)是很昂貴的,尤其是你在生產(chǎn)環(huán)境中運(yùn)行Hadoop。
甲骨文公司大數(shù)據(jù)產(chǎn)品經(jīng)理Jean-Pierre Dijck稱:“IT部門認(rèn)為‘我已經(jīng)有服務(wù)器,我還可以買到便宜的服務(wù)器,我也有人員,所以我們不用花多少錢就可以構(gòu)建自己的Hadoop集群’,這當(dāng)然是一件好事,但是IT部門在部署時(shí)會(huì)發(fā)現(xiàn)這里會(huì)有很多他們沒有預(yù)料到的額外開銷。”
Dijcks列舉了IT領(lǐng)導(dǎo)在DIY Hadoop集群時(shí)的5個(gè)常見錯(cuò)誤:
1.他們?cè)噲D以廉價(jià)的方式構(gòu)建Hadoop
很多IT部門不清楚Hadoop集群應(yīng)該完成什么使命(除了分析某些類型的數(shù)據(jù)),所以他們會(huì)購(gòu)買盡可能便宜的服務(wù)器。
“Hadoop被認(rèn)為是可自愈的,所以當(dāng)服務(wù)器的一個(gè)節(jié)點(diǎn)出現(xiàn)故障,構(gòu)不成大問題,”Dijcks稱,“但如果你購(gòu)買廉價(jià)的服務(wù)器,很多節(jié)點(diǎn)出現(xiàn)故障那么你就要花更多時(shí)間來修復(fù)硬件,如果一大堆節(jié)點(diǎn)都不運(yùn)行了,這就會(huì)造成大問題。”
如果你的Hadoop集群只是實(shí)驗(yàn),那么以上這些可能不是問題。然而,很多實(shí)驗(yàn)性項(xiàng)目通常***都會(huì)進(jìn)入生產(chǎn)環(huán)境。IT部門認(rèn)為,“我們已經(jīng)投入了大量的時(shí)間,我們已經(jīng)做了很多工作,現(xiàn)在我們需要將其投入生產(chǎn),”Dijcks說道,“在實(shí)驗(yàn)期間,如果環(huán)境出現(xiàn)問題,只要重新啟動(dòng)即可,但在生產(chǎn)環(huán)境,集群需要能夠抵御硬件故障、人為交互故障以及任何可能發(fā)生的事情。”
Forrester公司在其2016年第二季度報(bào)告“大數(shù)據(jù)Hadoop優(yōu)化系統(tǒng)”中指出,我們需要大量時(shí)間和精力用于安裝、配置、調(diào)試、升級(jí)和監(jiān)控通用Hadoop平臺(tái)的基礎(chǔ)設(shè)施,而預(yù)配置Hadoop優(yōu)化系統(tǒng)可提供更快的時(shí)間價(jià)值、降低成本、最小化管理工作以及模塊化擴(kuò)展功能。
2.太多“廚師”
大多數(shù)IT部門將自己分為軟件、硬件和網(wǎng)絡(luò)組,而Hadoop集群跨越了這些分組,所以DIY Hadoop集群最終會(huì)成為很多有說服力的“廚師”的產(chǎn)物。
Dijcks稱:“在這種情況中,你有一個(gè)食譜來參考,但負(fù)責(zé)不同領(lǐng)域的人并不會(huì)完全遵循食譜,因?yàn)樗麄兿矚g與食譜要求略有不同的做法。“所以最終,Hadoop集群不會(huì)按照預(yù)期那樣運(yùn)行。
在進(jìn)行故障排除后,系統(tǒng)應(yīng)該能夠啟動(dòng)以及讓IT運(yùn)營(yíng)人員在生產(chǎn)環(huán)境中運(yùn)行,但Dijcks稱:“這是另一個(gè)學(xué)習(xí)曲線開始的地方,他們可能不熟悉Hadoop集群,你會(huì)看到很多人為錯(cuò)誤、停機(jī)時(shí)間等一系列問題。”
3.他們沒有意識(shí)到Hadoop DIY項(xiàng)目是特洛伊木馬
在Hadoop集群轉(zhuǎn)移到生產(chǎn)環(huán)境后,企業(yè)通常會(huì)發(fā)現(xiàn)他們需要安排專門的工作人員來保持其運(yùn)行。Dijcks稱:“當(dāng)然,這個(gè)工作人員的大部分時(shí)間花費(fèi)在維護(hù)上,而不是創(chuàng)新。”此外,這名工作人員還需要了解Hadoop系統(tǒng)。
他警告道:“你不能期望人們?cè)诤芏虝r(shí)間內(nèi)變成Hadoop專家。”即使你雇傭經(jīng)驗(yàn)豐富的工作人員,但I(xiàn)T環(huán)境差異性很大--DIY Hadoop集群組件也是如此。因此,在你特定環(huán)境中的所有配置、連接和相互關(guān)系都需要花時(shí)間來了解。
4. 他們低估了更新的復(fù)雜性和頻率
新版Hadoop(例如來自Cloudera和Hortonworks)每三個(gè)月發(fā)布一次,這些通常包含新特性、新功能、更新、漏洞修復(fù)等。
“除了保持Hadoop集群運(yùn)行所需的所有人類操作外,每三個(gè)月都會(huì)有新的升級(jí)版本,”Dijcks稱,“你完成升級(jí)的那一刻,你必須開始規(guī)劃下一次升級(jí)。這相當(dāng)復(fù)雜,所以有些人開始跳過更新。”即使你跳過幾次更新,最終你還是會(huì)需要更新,例如從5.4升級(jí)到5.7。
雖然Cloudera和Hortonworks會(huì)嘗試測(cè)試盡可能多的場(chǎng)景,“他們不能測(cè)試你特定操作系統(tǒng)版本或者對(duì)特定工作操作的影響,”Dijcks稱,“你的環(huán)境可能有思科路由器或者Red Hat操作系統(tǒng)或者IBM硬件,同時(shí),如果這個(gè)集群正用于大數(shù)據(jù)生產(chǎn)項(xiàng)目,而你需要更新時(shí),就有可能會(huì)制造出明顯的停機(jī)時(shí)間。”
5. 他們沒有準(zhǔn)備好應(yīng)對(duì)安全挑戰(zhàn)
在Hadoop早期,安全沒有被視為一個(gè)大問題,因?yàn)榧喝晕挥诜阑饓竺妗6F(xiàn)在,安全已經(jīng)成為***的問題。
目前Kerberos身份驗(yàn)證已經(jīng)內(nèi)置到Hadoop來解決這些問題,但有些IT企業(yè)不知道如何處理此協(xié)議,“整合Kerberos到企業(yè)的Active Directory非常復(fù)雜,”他表示,“你需要在Active Directory和一系列組件之間進(jìn)行非常多集成工作。且這方面的文檔非常少,最要命的是這涉及到安全管理員和IT其他團(tuán)隊(duì),這些人員幾乎是使用完全不同的語(yǔ)言。”
有些IT部門最終會(huì)與Cloudera、Hortonworks或其他第三方簽署合同以保護(hù)他們的DIY Hadoop集群。“這需要一些時(shí)間才能完成設(shè)置、測(cè)試等工作,”Dijcks稱,“然后每過三個(gè)月,你都需要重新做一次,以確保應(yīng)用和配置等一切的正常運(yùn)行。”