您的位置:首页 > 运维架构

hadoop-3.0.0-beta1运维手册(010):hdfs3.0.0动态添加节点(2)

2017-12-06 20:07 489 查看
写在前面的话
Hdfs采用分布式架构,为上层的应用和用户提供可扩展、高吞吐、高可靠的数据存储服务。在整个Hadoop生态系统中,hdfs处于最底层,也是最无可替代的一个基础设施。从2008年hadoop-0.10.1版本开始到现在的hadoop-3.0.0-beta1,hdfs已经走过了近10个年头,其架构和功能特性也发生了巨大的变化。特别是hdfs3.0.0系列,和hdfs2.x相比,增加了基于纠删码(erasure
encoding)的容错方式,与传统的副本方式相比,在同等可用性的情况下, 能大幅节省一半以上的空间,这也是自hdfs诞生近这十年来,数据可靠性机制上的一个重大变化(之前一直都是副本容错方式)。此外hdfs3.0.0还增加了其它的一些特性,例如在Namenode
HA中支持3个Namenode,可以容忍2个Namenode失效,而hdfs2.x只能容忍1个Namenode失效。
本文以连载的方式,在“大数据学习网”上记录自己使用hadoop-3.0.0-beta1的hdfs的点点滴滴,包括从零开始搭建分布式hdfs3.0,如何动态扩展hdfs节点、如何使用hdfs3.0的纠删码容错等等。不当之处,请大家发邮件aishuc@126com给艾叔,谢谢!
 
 

5.3 启动hdfs3.0

启动nn1,运行下面的命令。
[user@nn1 ~]$ cd ~/hadoop-3.0.0-beta1
[user@nn1 hadoop-3.0.0-beta1]$ sbin/start-dfs.sh
输出如下
Starting namenodes on [nn1]
Starting datanodes
Starting secondary namenodes [nn1]
使用hdfs命令验证
[user@nn1 hadoop-3.0.0-beta1]$
hdfs dfsadmin -report
如果我们可以看到下面的信息,则说明hdfs3.0启动成功,并且只有1个datanode。
-------------------------------------------------
Live datanodes (1):
 
Name: 192.168.182.11:9866 (nn1)
Hostname: nn1
下面我们就要动态加入datanode节点了。
 
在nn1上添加host解析
[root@nn1 user]# vi /etc/hosts
内容如下,添加绿色的部分
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.182.11 nn1
192.168.182.12 dn1
测试,如果能够ping通,则说明host解析设置成功
[user@nn1 ~]$ ping dn1
PING dn1 (192.168.182.12) 56(84) bytes of data.
 
测试nn1到dn1的无密码登录,应该是可以直接登录的。
[user@nn1 ~]$ ssh dn1
The authenticity of host 'dn1 (192.168.182.12)' can't be established.
ECDSA key fingerprint is 02:18:29:20:9d:55:88:d6:b2:e6:84:d2:16:10:80:a7.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'dn1,192.168.182.12' (ECDSA) to the list of known hosts.
Last login: Thu Nov 30 03:57:52 2017 from 192.168.182.1
 
 

5.4 动态加入dn1

在dn1上,启动datanode
[user@dn1 hadoop-3.0.0-beta1]$
hdfs --daemon start datanode
注意:使用上面的命令启动datanode,原来的hadoop-deamon.sh启动方法已经不用了。
Jps验证,如果能够看到DataNode,则说明正常。
[user@dn1 hadoop-3.0.0-beta1]$ jps
3272 Jps
3215 DataNode
在nn1上查看节点是否加入成功
[user@nn1 hadoop-3.0.0-beta1]$ hdfs dfsadmin -report
显示
-------------------------------------------------
Live datanodes (2):
则说明加入成功
注意:以上是在原有的hdfs3.0集群不停机的情况下,加入dn1的。
为了便于后续管理,编辑hadoop的workers文件,加入dn1
[user@nn1 ~]$ cd hadoop-3.0.0-beta1
[user@nn1 hadoop-3.0.0-beta1]$ vi etc/hadoop/workers
内容如下,其中dn1是新添加的
nn1
dn1
 

5.5 查看dn1后副本的分布

在web中可以看到,profile的副本数是3,由于之前datanode只有1个,因此,实际只存储了1个副本。
 
现在加入了一个dn1,下面我们可以看到profile的Block0的副本又增加一个存储节点dn1,这是自动进行的。
 


 
5-19 hdfs3.0web界面查看Block分布
 
上一篇:《hadoop-3.0.0-beta1运维手册(009):hdfs3.0.0基本操作-hdfs动态加入节点(1)》
原创文章,转载请注明: 转载自大数据学习网,作者:艾叔
本文链接地址: http://www.bigdatastudy.net/show.aspx?id=457&cid=8
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息