簡體   English   中英

HDFS將datanodes服務器遷移到新服務器

[英]HDFS migrate datanodes servers to new servers

我想將包含所有數據和組件的hadoop服務器遷移到新服務器(紅帽的較新版本)。

我在cloudera網站上看到過有關如何移動名稱節點的帖子,但是我不知道如何移動所有數據節點而不會丟失數據。 我們有副本因子2。如果我一次關閉1個datanode,hdsfs會生成新副本嗎? 有沒有一種方法可以一次遷移所有數據節點? 將所有(約20個服務器)數據節點轉移到新集群的正確方法是什么?

我也想知道hbase是否會有同樣的問題,或者我是否可以刪除並在新服務器上添加角色

更新以澄清:

我的Hadoop集群已經包含了兩組服務器(它們在同一個hadoop集群中,在示例中我只是對其進行了邏輯拆分)

  1. 第一組是舊版本的linux服務器
  2. 第二組是較新版本的linux服務器

兩組都已經共享數據和組件(namenode在舊的服務器集中)。 我要刪除所有舊服務器集,以便僅新服務器集將保留在hadoop群集中。

執行是否應該像這樣:

  1. 關閉一個數據節點(從舊服務器集中)
  2. 運行平衡器並等待完成
  3. 對下一個數據節點執行相同的操作

因為如果這樣的話,平衡器操作會花費很多時間,而整個操作會花費很多時間。

對於hbase來說,同樣的問題,現在hbase區域和master只在舊服務器上,我想將其刪除並安裝在新服務器上而不會丟失數據。

謝謝

可以自由添加新的Datanode,而無需觸摸namenode。 但是,您絕對不應一次關閉多個設備。

例如,如果您選擇隨機關閉兩台服務器,並且兩台服務器都保存一個文件塊,那么它就不可能在其他地方復制。 因此,如果您要重復使用相同的硬件,則一次升級一個。

在理想情況下,您的OS磁盤與HDFS磁盤是分開的。 在這種情況下,您可以卸載它們,升級操作系統,重新安裝HDFS服務,重新安裝磁盤,然后一切將像以前一樣工作。 如果那不是您設置服務器的方式,則應在下一次升級之前進行。

為了將副本添加到任何新的數據節點中,您需要1)增加復制因子,或2)運行HDFS重新平衡器以確保副本在整個群集中都經過改組

我對Hbase不太熟悉,但是我知道您需要在安裝該服務並將其遷移到其他服務器之前刷新regionservers。 但是,如果您在不重新分配區域的情況下刷新了大部分數據,則將擁有一台可容納所有數據的服務器。 我相信主服務器也有類似的警告,盡管hbase backup似乎是值得嘗試的命令。

@guylot-添加新節點並運行平衡器過程之后,請通過退役過程將舊節點從群集中移出。 停用過程會將數據移動到群集中的另一個節點。 為預防起見,一次只能在一個節點上運行。 這將限制發生丟失數據事件的可能性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM