一、添加節(jié)點(diǎn)
- 將新節(jié)點(diǎn)的網(wǎng)絡(luò)地址添加到include文件中
- 運(yùn)行以下命令,將審核過的一系列datanode集合更新至namenode信息:
hdfs dfsadmin -refreshNodes
- 運(yùn)行以下命令,將審核過的一系列datanode集合更新至資源管理器:
yarn mradmin -refreshNodes
- 以新節(jié)點(diǎn)更新slaves文件
- 啟動(dòng)新的 datanode 和 nodemanager
二、移除節(jié)點(diǎn)
- 將解除節(jié)點(diǎn)的網(wǎng)絡(luò)地址添加到exclude文件中,不更新include文件
- 執(zhí)行以下指令,使用一組新的審核過的datanode來更新namenode設(shè)置
hdfs dfsadmin -refreshNodes
- 執(zhí)行以下指令,使用一組新的審核過的datanode來更新資源管理器
yarn mradmin -refreshNodes
轉(zhuǎn)到網(wǎng)頁界面,查看待解除的datanode的管理狀態(tài)是否已經(jīng)變?yōu)椤癉ecommission In Progress”狀態(tài),因?yàn)榇藭r(shí)相關(guān)的datanode正在被解除過程之中。這些datanode會(huì)把他們的塊復(fù)制到其他的datanode中
當(dāng)所有datanode的狀態(tài)變?yōu)椤癉ecommissioned”時(shí),表明所有的塊都已經(jīng)復(fù)制完成。關(guān)閉這些已經(jīng)解除的節(jié)點(diǎn)
從include文件中移除這些節(jié)點(diǎn),并運(yùn)行以下命令:
hdfs dfsadmin -refreshNodes
yarn mradmin -refreshNodes
- 從slaves文件中移除節(jié)點(diǎn)
以上涉及到兩個(gè)文件 include 和 exclude,節(jié)點(diǎn)在其中的關(guān)系如下:
| 節(jié)點(diǎn)在include中 | 節(jié)點(diǎn)在exclude中 | 解釋 |
|---|---|---|
| 否 | 否 | 節(jié)點(diǎn)無法連接 |
| 否 | 是 | 節(jié)點(diǎn)無法連接 |
| 是 | 否 | 節(jié)點(diǎn)可連接 |
| 是 | 是 | 節(jié)點(diǎn)可連接,將被解除 |