Linux下Hadoop分布式文件系统分布模式中Datanode节点的增加

续我的上篇博文:https://mp.csdn.net/postedit/89164248即Hadoop分布模式已经安装部署好。

本篇博文在上篇博文的基础上添加server4作为Datanode节点。

一、实验环境(rhel7.3版本)

1selinux和firewalld状态为disabled

2各主机信息如下:

主机 ip
server1(NameNode、 Secondary Namenode、nfs网络文件系统的服务端) 172.25.83.1
server2(Datanode、nfs网络文件系统的客户端) 172.25.83.2
server3(Datanode、nfs网络文件系统的客户端) 172.25.83.3
server4(Datanode、nfs网络文件系统的客户端) 172.25.83.4

二、Hadoop分布模式中Datanode节点的增加

1、首先在上篇博文配置好的 nfs网络文件系统添加server4作为nfs网络文件系统的客户

端:

<1>在server4端:添加hadoop用户(指定的hadoop用户的uid为1004(与server1端hadoop用户保持一

致)),以生成需要挂载的目录/home/hadoop

#添加用户的操作,必须是root用户来执行,否则会报错
[root@server4 ~]# useradd -u 1004 hadoop
[root@server4 ~]# id hadoop
uid=1004(hadoop) gid=1004(hadoop) groups=1004(hadoop)

<2>在server4端:安装nfs-utils软件,以提供rpcbind服务,并启动rpcbind服务

#安装nfs-utils软件,启动rpcbind服务必须是root用户来操作,否则会报错
[root@server4 ~]# yum install nfs-utils -y
[root@server4 ~]# systemctl start rpcbind   #rpcbind这个服务在安装完nfs-utils软件之后,会自动启动,所以这步可做也可不做。但是重启系统之后,这步必须做(因为重启系统之后,rpcbind服务就会关闭)

<3>在server4端(nfs网络文件系统的客户端):查看服务端IP共享的文件或目录,进行挂载,并进入共享目录

查看内容

查看服务端IP共享的文件或目录,进行挂载,必须由root用户来操作,否则会报错
[root@server4 ~]# showmount -e 172.25.83.1
Export list for 172.25.83.1:
/home/hadoop *
[root@server4 ~]# mount 172.25.83.1:/home/hadoop /home/hadoop
[root@server5 ~]# df
172.25.83.1:/home/hadoop  17811456 6520832  11290624  37% /home/hadoop

进入共享目录查看共享内容,可以由hadoop用户操作,因为挂载点是hadoop用户的家目录/home/hadoop目录
[root@server4 ~]# su - hadoop
[hadoop@server4 ~]$ ll
total 488256
lrwxrwxrwx  1 hadoop hadoop        12 Apr  4 11:50 hadoop -> hadoop-3.0.3
drwxr-xr-x 10 hadoop hadoop       188 Apr 10 12:06 hadoop-3.0.3
-rw-r--r--  1 root   root   314322972 Apr  4 11:47 hadoop-3.0.3.tar.gz
lrwxrwxrwx  1 hadoop hadoop        13 Apr  4 11:50 java -> jdk1.8.0_181/
drwxr-xr-x  7 hadoop hadoop       245 Jul  7  2018 jdk1.8.0_181
-rw-r--r--  1 root   root   185646832 Apr  4 11:47 jdk-8u181-linux-x64.tar.gz

2、在上篇博文配置好的hadoop中添加server4作为Datanode节点:

配置server1(Namenode):当然也可以在server4端/server2端/server3端进行配置,因为配置了nfs网络文件系统,所以

在任何一端进行操作均可以。

<1>设置ssh免密登陆(前提:安装ssh服务)—实际上因为server2端,server3端和server4端的/home/hadoop目录中的内容是通过 server1端共享出来的,因此,实际上已经实现了server1,server2,server3和server4之间的免密,而server1—>server1间的免密是上篇博文部署伪分布模式时配置好的。

  • 验证普通用户hadoop:server1,server2,server3和server4之间的免密

<2>修改配置文件,指定Datanode地址

[hadoop@server1 hadoop]$ pwd
/home/hadoop/hadoop/etc/hadoop
[hadoop@server1 hadoop]$ vim workers 
172.25.83.2
172.25.83.3
172.25.83.4   #在原来的基础上添加server4的ip地址

配置server4(Datanode):

<1>启动Datanode节点(因为server4节点是在原来分布模式部署好的基础上添加的,所以最好不要动原来的配置,比如原来启动hdfs时,已经启动了Namenode节点和Datanode节点,这里在将server4添加作为Datanode节点时,最好不要再次启动hdfs,来间接启动server4端的Datanode节点,最好的方式就是在server4端直接启动Datanode节点)

[hadoop@server4 hadoop]$ sbin/hadoop-daemon.sh start datanode
WARNING: Use of this script to start HDFS daemons is deprecated.
WARNING: Attempting to execute replacement "hdfs --daemon start" instead.
#根据提示,我们应该使用bin/hdfs --daemon start datanode。不过这只是警告,事实上Datanode节点已经启动成功,我们利用下面的jps命令就可以看到

<2>jps命令查看java进程

[hadoop@server4 hadoop]$ jps
5303 DataNode
5335 Jps

刷新浏览器并查看

上面浏览器中的内容,也可以通过命令在终端中进行显示

[hadoop@server4 hadoop]$ pwd
/home/hadoop/hadoop
[hadoop@server4 hadoop]$ bin/hdfs dfsadmin -report
Configured Capacity: 54716792832 (50.96 GB)
Present Capacity: 50818400256 (47.33 GB)
DFS Remaining: 50395455488 (46.93 GB)
DFS Used: 422944768 (403.35 MB)
DFS Used%: 0.83%
Replicated Blocks:
	Under replicated blocks: 0
	Blocks with corrupt replicas: 0
	Missing blocks: 0
	Missing blocks (with replication factor 1): 0
	Pending deletion blocks: 0
Erasure Coded Block Groups: 
	Low redundancy block groups: 0
	Block groups with corrupt internal blocks: 0
	Missing block groups: 0
	Pending deletion blocks: 0

-------------------------------------------------
Live datanodes (3):

Name: 172.25.83.2:9866 (server2)
Hostname: server2
Decommission Status : Normal
Configured Capacity: 18238930944 (16.99 GB)
DFS Used: 106496 (104 KB)
Non DFS Used: 1275932672 (1.19 GB)
DFS Remaining: 16962891776 (15.80 GB)
DFS Used%: 0.00%
DFS Remaining%: 93.00%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Wed Apr 10 14:50:49 CST 2019
Last Block Report: Wed Apr 10 11:37:40 CST 2019


Name: 172.25.83.3:9866 (server3)
Hostname: server3
Decommission Status : Normal
Configured Capacity: 18238930944 (16.99 GB)
DFS Used: 211468288 (201.67 MB)
Non DFS Used: 1328050176 (1.24 GB)
DFS Remaining: 16699412480 (15.55 GB)
DFS Used%: 1.16%
DFS Remaining%: 91.56%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Wed Apr 10 14:50:49 CST 2019
Last Block Report: Wed Apr 10 14:24:46 CST 2019


Name: 172.25.83.4:9866 (server4)
Hostname: server4
Decommission Status : Normal
Configured Capacity: 18238930944 (16.99 GB)
DFS Used: 211369984 (201.58 MB)
Non DFS Used: 1294409728 (1.21 GB)
DFS Remaining: 16733151232 (15.58 GB)
DFS Used%: 1.16%
DFS Remaining%: 91.74%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Wed Apr 10 14:50:50 CST 2019
Last Block Report: Wed Apr 10 14:40:35 CST 2019

<8>进行测试:上传文件并进行查看

[hadoop@server4 hadoop]$ pwd
/home/hadoop/hadoop
[hadoop@server4 hadoop]$ dd if=/dev/zero of=bigfile bs=1M count=200
[hadoop@server4 hadoop]$ bin/hdfs dfs -put bigfile 

刷新浏览器并查看

从图中我们可以看到1个block的大小是128M,那我们上传的bigfile文件的大小是200M,应该是2个block,我们来验证一下。

选择bigfile

从上图中我们可以看到:有两个block,即表示验证成功。

猜你喜欢

转载自blog.csdn.net/qq_42303254/article/details/89181851
今日推荐