HDFS生產環境作rebalacne的坑

  1. 新上硬盤或者下架硬盤  hdfs 須要從新作rebalance  從新平衡數據,可是你會發現特別慢,緣由是數據同步的速度默認僅僅爲10Mbps 
    node

image.png

image.png



dfs.datanode.balance.bandwidthPerSec (dfs.balance.bandwidthPerSec)服務器

  每一個 DataNode 可用於平衡的最大帶寬。單位爲字節/秒。以每秒字節數的形式指定每一個數據節點可用於平衡目的的最大帶寬量。您可使用如下後綴(不區分大小寫):k(kilo)、m(mega)、g(giga)、t(tera)、p(peta)、e(exa)指定大小(例如128k、512m、1g等)。或者以字節爲單位提供完整的大小(例如,對於128 MB,134217728)。默認是10M,咱們知道服務器如今都是萬兆網卡了,交換機對應端口也是10G網口的話,也就是說咱們最大能夠設置1.25G帶寬。可是咱們得考慮其餘服務的傳輸效率,不能把全部的帶寬都被DataNode 平衡數據所佔用啦!推薦設置爲128M~512M。網絡

  HDFS平衡器檢測集羣中使用過分或者使用不足的DataNode,並在這些DataNode之間移動數據塊來保證負載均衡。若是不對平衡操做進行帶寬限制,那麼它會很快就會搶佔全部的網絡資源,不會爲Mapreduce做業或者數據輸入預留資源。參數dfs.balance.bandwidthPerSec定義了每一個DataNode平衡操做所容許的最大使用帶寬,這個值的單位是byte,這是很不直觀的,由於網絡帶寬通常都是用bit來描述的。所以,在設置的時候,要先計算好。DataNode使用這個參數來控制網絡帶寬的使用,但不幸的是,這個參數在守護進程啓動的時候就讀入,致使管理員沒辦法在平衡運行時來修改這個值。負載均衡

相關文章
相關標籤/搜索