HDFS新增節點與刪除節點具體操作流程

服役新數據節點

需求基礎:
隨着公司業務的增長,數據量越來越大,原有的數據節點的容量已經不能滿足存儲數據的需求,需要在原有集羣基礎上動態添加新的數據節點。

準備新節點

第一步:複製一臺新的虛擬機出來
將我們純淨的虛擬機複製一臺出來,作爲我們新的節點
第二步:修改mac地址以及IP地址
修改mac地址命令
vim /etc/udev/rules.d/70-persistent-net.rules
修改ip地址命令
vim /etc/sysconfig/network-scripts/ifcfg-eth0
第三步:關閉防火牆,關閉selinux
關閉防火牆
service iptables stop
關閉selinux
vim /etc/selinux/config

第四步:更改主機名
更改主機名命令
vim /etc/sysconfig/network
第五步:四臺機器更改主機名與IP地址映射
四臺機器都要添加hosts文件
vim /etc/hosts

192.168.52.100 node01.Hadoop.com  node01
192.168.52.110 node02.Hadoop.com  node02
192.168.52.120 node03.Hadoop.com  node03
192.168.52.130 node04.Hadoop.com  node04

第六步:node04服務器關機重啓並生成公鑰與私鑰
node04執行以下命令關機重啓
reboot

node04執行以下命令生成公鑰與私鑰
ssh-keygen -t rsa

node04執行以下命令將node04的私鑰拷貝到node01服務器
ssh-copy-id node01
node01執行以下命令,將authorized_keys拷貝給node04
cd /root/.ssh/
scp authorized_keys node04:$PWD
第七步:node04安裝jdk
node04統一兩個路徑
mkdir -p /export/softwares/
mkdir -p /export/servers/
然後解壓jdk安裝包,配置環境變量,或將集羣中的java安裝目錄拷貝一份,並配置環境變量。
第八步:解壓Hadoop安裝包
在node04服務器上面解壓Hadoop安裝包到/export/servers
node01執行以下命令將Hadoop安裝包拷貝到node04服務器
cd /export/softwares/
scp hadoop-2.6.0-cdh5.14.0-自己編譯後的版本.tar.gz node04:$PWD
第九步:將node01關於Hadoop的配置文件全部拷貝到node04
node01執行以下命令,將Hadoop的配置文件全部拷貝到node04服務器上面
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/
scp ./* node04:$PWD

服役新節點具體步驟

第一步:創建dfs.hosts文件
在node01也就是namenode所在的機器的/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop目錄下創建dfs.hosts文件
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
touch dfs.hosts
vim dfs.hosts
添加如下主機名稱(包含新服役的節點)

node01
node02
node03
node04

第二步:node01編輯hdfs-site.xml添加以下配置
在namenode的hdfs-site.xml配置文件中增加dfs.hosts屬性
node01執行以下命令
cd /export/servers/Hadoop-2.6.0-cdh5.14.0/etc/Hadoop
vim hdfs-site.xml

		<property>
                <name>dfs.hosts</name>
                <value>/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/dfs.hosts</value>
        </property>

第三步:刷新namenode
node01執行以下命令刷新namenode
hdfs dfsadmin -refreshNodes
會出現:Refresh nodes successful則證明成功
第四步:更新resourceManager節點
node01執行以下命令刷新resourceManager
yarn rmadmin -refreshNodes
出現 : 19/03/16 11:19:47 INFO client.RMProxy: Connecting to ResourceManager at node01/192.168.52.100:8033
第五步:namenode的slaves文件增加新服務節點主機名稱
node01編輯slaves文件,並添加新增節點的主機,更改完後,slaves文件不需要分發到其他機器上面去
node01執行以下命令編輯slaves文件
cd /export/servers/Hadoop-2.6.0-cdh5.14.0/etc/Hadoop
vim slaves

node01
node02
node03
node04

第六步:單獨啓動新增節點

node04服務器執行以下命令,啓動datanode和nodemanager
cd /export/servers/hadoop-2.6.0-cdh5.14.0/
sbin/hadoop-daemon.sh start datanode
sbin/yarn-daemon.sh start nodemanager

第七步:瀏覽器查看
http://node01:50070/dfshealth.html#tab-overview

http://node01:8088/cluster

第八步:使用負載均衡命令,讓數據均勻負載所有機器
node01執行以下命令
cd /export/servers/hadoop-2.6.0-cdh5.14.0/
sbin/start-balancer.sh

退役舊數據節點

目標:掌握HDFS在集羣中刪除掉無效節點的步驟
第一步:創建dfs.hosts.exclude配置文件
在namenod的cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop目錄下創建dfs.hosts.exclude文件,並添加需要退役的主機名稱
node01執行以下命令
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
touch dfs.hosts.exclude
vim dfs.hosts.exclude

node04

第二步:編輯namenode所在機器的hdfs-site.xml
編輯namenode所在的機器的hdfs-site.xml配置文件,添加以下配置
node01執行以下命令
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim hdfs-site.xml

		<property>
                <name>dfs.hosts.exclude</name>
                <value>/export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop/dfs.hosts.exclude</value>
        </property>

第三步:刷新namenode,刷新resourceManager
namenode所在的機器執行以下命令,刷新namenode,刷新resourceManager
hdfs dfsadmin -refreshNodes
yarn rmadmin -refreshNodes
第四步:查看web瀏覽界面
瀏覽器訪問
http://node01:50070/dfshealth.html#tab-datanode
在這裏插入圖片描述
第五步:節點退役完成,停止該節點進程
等待退役節點狀態爲decommissioned(所有塊已經複製完成),停止該節點及節點資源管理器。注意:如果副本數是3,服役的節點小於等於3,是不能退役成功的,需要修改副本數後才能退役。
在這裏插入圖片描述
node01執行以下命令,停止該節點進程
cd /export/servers/hadoop-2.6.0-cdh5.14.0
sbin/hadoop-daemon.sh stop datanode
sbin/yarn-daemon.sh stop nodemanager
第六步:從include文件中刪除退役節點
namenode所在節點也就是node01執行以下命令刪除退役節點
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim dfs.hosts

node01
node02
node03

namenode所在節點也就是node01執行以下命令刷新namenode和resourceManager
hdfs dfsadmin -refreshNodes
yarn rmadmin -refreshNodes

第七步:從namenode的slave文件中刪除退役節點
namenode所在機器也就是node01執行以下命令從slaves文件中 刪除退役節點
cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop
vim slaves

node01
node02
node03

第八步:如果數據負載不均衡,執行以下命令進行均衡負載
node01執行以下命令進行均衡負載
cd /export/servers/hadoop-2.6.0-cdh5.14.0/
sbin/start-balancer.sh

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章