集群新加節(jié)點(diǎn)的目的 一是為了應(yīng)付源源不斷的日志存儲(chǔ)寻拂,而是加快計(jì)算的能力,但是如果hdfs上的數(shù)據(jù)存儲(chǔ)沒(méi)有原則 败京,那 總有一天擴(kuò)容是要崩盤(pán)的兜喻,無(wú)法面對(duì)源源不斷的擴(kuò)容需求,另外 hadoop rebalance 也是有瓶頸的赡麦,有的就是本身的硬件性能影響朴皆,你看到有人說(shuō) 可以做到幾秒 移動(dòng) 幾個(gè)TB 的數(shù)據(jù)塊,你有咩有問(wèn)過(guò)人家的網(wǎng)絡(luò)帶寬是多少泛粹?
比如說(shuō)阿里云 內(nèi)網(wǎng)帶寬就是130MB/S,HDFS 數(shù)據(jù)節(jié)點(diǎn)的數(shù)據(jù)塊rebalance 其實(shí)就是通過(guò)內(nèi)網(wǎng)的網(wǎng)絡(luò)通信 來(lái)傳輸 移動(dòng) 數(shù)據(jù)的遂铡,你如果hadoop使用的是外網(wǎng)連接的,那就更扯了晶姊,除非 外網(wǎng)比內(nèi)網(wǎng)有更快的傳輸速度扒接。
我們的hadoop 部署在阿里云上,阿里云上的虛擬化后的網(wǎng)卡性能 基本就是百兆網(wǎng)卡而已们衙,而且不能調(diào)節(jié)大小钾怔,你撐死傳輸速率打滿網(wǎng)卡,也就130MB/s,我們自己rebalance時(shí) 的測(cè)試 20小時(shí) 傳輸了大概9T左右的數(shù)據(jù)蒙挑,平均下來(lái)宗侦,單臺(tái)新增節(jié)點(diǎn) 接受 數(shù)據(jù)傳輸?shù)哪芰κ? 106MB/S,這個(gè)速度 其實(shí)也是已經(jīng)相當(dāng)可以了忆蚀,比35mb/s要好很多矾利。但是老大還是嫌棄 ,太慢馋袜,是呀男旗,能有什么辦法,誰(shuí)讓這個(gè)網(wǎng)卡的硬件性能的局限欣鳖,當(dāng)然rebalance有幾個(gè)參數(shù) 察皇,比如 多線程 申請(qǐng)更大的網(wǎng)絡(luò)帶寬,其實(shí)都是治標(biāo)不治本泽台,你申請(qǐng)1GB/s 的帶寬什荣,根本就是扯淡 無(wú)法實(shí)現(xiàn) 癡人說(shuō)夢(mèng) 只能是自說(shuō)自話呀忧,有種你自己飛過(guò)來(lái)呀 !
所以這個(gè)rebalance 就給我們很多思考溃睹,1.時(shí)機(jī) 2.硬件 3 業(yè)務(wù) 4 數(shù)據(jù)
1.耗時(shí)長(zhǎng) 所以安排在一定 在業(yè)務(wù)清閑 的周五開(kāi)始 或者周末,hdfs 磁盤(pán)占用在80%左右就應(yīng)該擴(kuò)容 rebalance
2.硬件 胰坟,你必須考慮到網(wǎng)卡 帶寬 硬盤(pán)讀寫(xiě)速度因篇,這個(gè)不是自己摘塊 硬盤(pán)安裝到 另一臺(tái)機(jī)器上,不是可插拔的
3.業(yè)務(wù)上笔横,rebalance 影響都 mapReduce job竞滓,基本上是不可以進(jìn)行的,也會(huì)影響到數(shù)據(jù)流的寫(xiě)入
4.數(shù)據(jù) rebalance時(shí)吹缔, 集群按道理應(yīng)該進(jìn)入安全模式商佑,禁止外界對(duì) 數(shù)據(jù)的操作,萬(wàn)一數(shù)據(jù)丟失重復(fù) 找不到 都是有可能的厢塘,我們對(duì)歷史日志文件 歸檔 壓縮 清洗加刪除 茶没,才能保證集群的萬(wàn)古長(zhǎng)青
參考一些 文獻(xiàn) ,發(fā)現(xiàn)大家 對(duì) hdfs的 rebalance 還是 頗有怨言的晚碾,誰(shuí)讓你窮 抓半,買(mǎi)不起萬(wàn)兆網(wǎng)卡 ,買(mǎi)不 起 MLC SSD 企業(yè)硬盤(pán)
https://www.quora.com/What-are-the-best-practices-for-running-Hadoop-Balancer-in-a-cluster
http://www.informit.com/articles/article.aspx?p=2755708&seqNum=5
http://people.apache.org/~liuml07/2017/05/31/My-HDFS-balancer-is-slow/
https://community.hortonworks.com/articles/43615/hdfs-balancer-1-100x-performance-improvement.html
https://community.hortonworks.com/questions/27364/when-should-i-stop-the-balancer.html