史上最详细的Hadoop环境搭建(五)之二

5、 配置hdfs-site.xml


 
 
  1. <configuration>
  2. <property>
  3. <!—配置三台NameNode >
  4. <name>dfs.nameservices </name>
  5. <value>ns1,ns2,ns3 </value>
  6. </property>
  7. <property>
  8. <!—第一台NameNode的机器名和rpc端口,指定了NameNode和DataNode通讯用的端口号 >
  9. <name>dfs.namenode.rpc-address.ns1 </name>
  10. <value>bigdata-senior01.chybinmy.com:8020 </value>
  11. </property>
  12. <property>
  13. <!—第一台NameNode的机器名和rpc端口,备用端口号 >
  14. <name>dfs.namenode.serviceerpc-address.ns1 </name>
  15. <value>bigdata-senior01.chybinmy.com:8022 </value>
  16. </property>
  17. <property>
  18. <
    !—第一台NameNode的http页面地址和端口号 >
  19. <name>dfs.namenode.http-address.ns1 </name>
  20. <value>bigdata-senior01.chybinmy.com:50070 </value>
  21. </property>
  22. <property>
  23. <!—第一台NameNode的https页面地址和端口号 >
  24. <name>dfs.namenode.https-address.ns1 </name>
  25. <value>bigdata-senior01.chybinmy.com:50470 </value>
  26. </property>
  27. <property>
  28. <name>dfs.namenode.rpc-address.ns2 </name>
  29. <value>bigdata-senior02.chybinmy.com:8020 </value>
  30. </property>
  31. <property>
  32. <name>dfs.namenode.serviceerpc-address.ns2 </name>
  33. <value>bigdata-senior02.chybinmy.com:8022 </value>
  34. </property>
  35. <property>
  36. <name>dfs.namenode.http-address.ns2 </name>
  37. <value>bigdata-senior02.chybinmy.com:50070 </value>
  38. </property>
  39. <property>
  40. <name>dfs.namenode.https-address.ns2 </name>
  41. <value>bigdata-senior02.chybinmy.com:50470 </value>
  42. </property>
  43. <property>
  44. <name>dfs.namenode.rpc-address.ns3 </name>
  45. <value>bigdata-senior03.chybinmy.com:8020 </value>
  46. </property>
  47. <property>
  48. <name>dfs.namenode.serviceerpc-address.ns3 </name>
  49. <value>bigdata-senior03.chybinmy.com:8022 </value>
  50. </property>
  51. <property>
  52. <name>dfs.namenode.http-address.ns3 </name>
  53. <value>bigdata-senior03.chybinmy.com:50070 </value>
  54. </property>
  55. <property>
  56. <name>dfs.namenode.https-address.ns3 </name>
  57. <value>bigdata-senior03.chybinmy.com:50470 </value>
  58. </property>
  59. </configuration>

6、 配置core-site.xml


 
 
  1. <configuration>
  2. <property>
  3. <name>hadoop.tmp.dir </name>
  4. <value>/opt/modules/hadoopha/hadoop-2.5.0/data/tmp </value>
  5. </property>
  6. </configuration>

hadoop.tmp.dir设置hadoop临时目录地址,默认时,NameNode和DataNode的数据存在这个路径下。

7、 配置slaves文件


 
 
  1. bigdata-senior01.chybinmy.com
  2. bigdata-senior02.chybinmy.com
  3. bigdata-senior03.chybinmy.com

8、 配置yarn-site.xml


 
 
  1. <configuration>
  2. <property>
  3. <name>yarn.nodemanager.aux-services </name>
  4. <value>mapreduce_shuffle </value>
  5. </property>
  6. <property>
  7. <name>yarn.resourcemanager.hostname </name>
  8. <value>bigdata-senior02.chybinmy.com </value>
  9. </property>
  10. <property>
  11. <name>yarn.log-aggregation-enable </name>
  12. <value>true </value>
  13. </property>
  14. <property>
  15. <name>yarn.log-aggregation.retain-seconds </name>
  16. <value>106800 </value>
  17. </property>
  18. </configuration>

9、 分发到其他节点

分发之前先将share/doc目录删除,这个目录中是帮助文件,并且很大,可以删除。


 
 
  1. [hadoop @bigdata-senior01 hadoop- 2.5 .0]$ scp -r /opt/modules/ /opt/modules/hadoopfederation bigdata-senior02.chybinmy.com:/opt/modules
  2. [hadoop @bigdata-senior01 hadoop- 2.5 .0]$ scp -r /opt/modules/hadoopfederation bigdata-senior03.chybinmy.com:/opt/modules

10、 格式化NameNode

在第一台上进行NameNode格式化。

[hadoop@bigdata-senior01 hadoop-2.5.0]$ bin/hdfs namenode -format -clusterId hadoop-federation-clusterId

这里一定要指定一个集群ID,使得多个NameNode的集群ID是一样的,因为这三个NameNode在同一个集群中,这里集群ID为hadoop-federation-clusterId。

在第二台NameNode上。

[hadoop@bigdata-senior02 hadoop-2.5.0]$ bin/hdfs namenode -format -clusterId hadoop-federation-clusterId

在第二台NameNode上。

[hadoop@bigdata-senior03 hadoop-2.5.0]$ bin/hdfs namenode -format -clusterId hadoop-federation-clusterId

11、 启动NameNode

在第一台、第二台、第三台机器上启动NameNode:


 
 
  1. [hadoop @bigdata-senior01 hadoop- 2.5 .0]$ sbin/hadoop-daemon.sh start namenode
  2. [hadoop @bigdata-senior02 hadoop- 2.5 .0]$ sbin/hadoop-daemon.sh start namenode
  3. [hadoop @bigdata-senior03 hadoop- 2.5 .0]$ sbin/hadoop-daemon.sh start namenode

启动后,用jps命令查看是否已经启动成功。

查看HDFS Web页面,此时三个NameNode都是standby状态。

enter image description here

enter image description here

enter image description here

12、 启动DataNode


 
 
  1. [hadoop @bigdata-senior01 hadoop- 2.5 .0]$ sbin/hadoop-daemon.sh start datanode
  2. [hadoop @bigdata-senior02 hadoop- 2.5 .0]$ sbin/hadoop-daemon.sh start datanode
  3. [hadoop @bigdata-senior03 hadoop- 2.5 .0]$ sbin/hadoop-daemon.sh start datanode

启动后,用jps命令确认DataNode进程已经启动成功。

四十九、测试HDFS Federation

1、 修改core-site.xml

在bigdata-senior01机器上,修改core-site.xml文件,指定连接的NameNode是第一台NameNode。

[hadoop@bigdata-senior01 hadoop-2.5.0]$ vim etc/hadoop/core-site.xml


 
 
  1. <configuration>
  2. <property>
  3. <name>fs.defaultFS </name>
  4. <value>hdfs://bigdata-senior01.chybinmy.com:8020 </value>
  5. </property>
  6. <property>
  7. <name>hadoop.tmp.dir </name>
  8. <value>/opt/modules/hadoopfederation/hadoop-2.5.0/data/tmp </value>
  9. </property>
  10. </configuration>

2、 在bigdate-senior01上传一个文件到HDFS


 
 
  1. [hadoop @bigdata-senior01 hadoop- 2.5 .0]$ bin/hdfs dfs -mkdir /tmp
  2. [hadoop @bigdata-senior01 hadoop- 2.5 .0]$ bin/hdfs dfs -put ~/shuffle_daily.sh /tmp/shuffle_daily.sh

3、 查看HDFS文件

enter image description here

可以看到,刚才的文件只上传到了bigdate-senior01机器上的NameNode上了,并没有上传到其他的NameNode上去。

这样,在HDFS的客户端,可以指定要上传到哪个NameNode上,从而来达到了划分NameNode的目的。

后记

这篇文章的操作步骤并不是工作中标准的操作流程,如果在成百上千的机器全部这样安装会被累死,希望读者可以通过文章中一步步地安装,从而初步了解到Hadoop的组成部分,协助过程等,这对于Hadoop的深入使用有很大的帮助。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值