微信搜索superit|邀请体验:大数据, 数据管理、OLAP分析与可视化平台 | 赞助作者:赞助作者

hadoop+Zookeeper集群安装配置高可用-HadoopHA

hadoop aide_941 31℃

hadoop+Zookeeper集群安装配置高可用-HadoopHA

 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sunxiaoju/article/details/85642409

1、请看:https://blog.csdn.net/sunxiaoju/article/details/85222290,此处只是配置系统的:硬件配置以及操作系统、节点需要安装的工具、安装JDK环境、创建hadoop用户、建立ssh无密码登录本机前五部分,第6部分的hadoop安装在此博文中需要重新配置,所以不需要查看,在此处博文中需要添加一个master1的namenode节点要结合前五部分一起配置。

2、下载zookeeper:https://zookeeper.apache.org/releases.html

如下图所示,第一个是下载当前活跃的版本,第二个是下载旧版本:

2、然后将下载好的zookeeper通过scp命令上传到master节点,如:

scp zookeeper-3.4.10.tar.gz hadoop@192.168.0.109:/home/sunftp/ftpdir/

如下图所示:

3、此时在master节点的/home/sunftp/ftpdir/目录中有一个zookeeper-3.4.10.tar.gz文件,如下图所示:

4、使用如下命令解压:

tar -xzvf zookeeper-3.4.10.tar.gz

如下图所示:

5、将zookeeper-3.4.10文件夹移动到/usr/目录下,使用如下命令移动:

sudo mv zookeeper-3.4.10 /usr/

如下图所示:

6、然后进入到/usr/zookeeper-3.4.10/conf/目录,修改配置,使用如下命令从模板配置文件中复制一个zookeeper的配置文件,如:

sudo cp zoo_sample.cfg zoo.cfg

如下图所示:

7、在zookeeper-3.4.10目录中新建一个data目录,使用如下命令:

sudo mkdir data

如下图所示:

8、使用如下命令打开zoo.cfg进行编辑

sudo vim conf/zoo.cfg 

如下图所示

9、然后修改添加入下信息:

  1. dataDir=/usr/zookeeper-3.4.10/data/
  2. server.1=192.168.0.109:2888:3888
  3. server.2=192.168.0.110:2888:3888
  4. server.3=192.168.0.111:2888:3888

其中dataDir修改为刚刚新建data的目录,server.1是master节点IP,1是编号,其余的是slave节点IP,如下图所示:

10、在dataDir指定的目录中新建一个myid文件,文件内容:master节点上为:1,slave1节点上为:2,slave2节点上为:3,使用如下命令新建文件,然后输入1:

sudo vim data/myid

如下图所示:

11、保存退出,然后通过如下命令分别上传到slave1和slave2:

  1. scp -r zookeeper-3.4.10 hadoop@192.168.0.110:/home/sunftp/ftpdir/
  2. scp -r zookeeper-3.4.10 hadoop@192.168.0.111:/home/sunftp/ftpdir/

如下图所示:

13、然后将slave节点上的zookeeper目录从/home/sunftp/ftpdir/移动到/usr/,如下图所示:

14、然后分别使用如下命令:在slave1节点上编辑/usr/zookeeper-3.4.10/data/myid文件,然后将1改为2,在slave2节点上编辑/usr/zookeeper-3.4.10/data/myid文件,然后将1改为3,

sudo vim /usr/zookeeper-3.4.10/data/myid

如下图所示:

15、将/usr/zookeeper-3.4.10/bin/添加到环境变量中,修改/etc/profile,添加入下:

  1. export ZOOKEEPER_HOME=/usr/zookeeper-3.4.10
  2. export PATH=$ZOOKEEPER_HOME/bin:$PATH

如下图所示:

16、保存退出,然后执行source /etc/profile,使之生效,然后在slave1和slave2节点上用同样的方法配置。

17、使用如下命令启动zookeeper:

zkServer.sh start

此时提示没有权限,如下图所示:

18、使用如下命令修改zookeeper目录权限,并且在slave1和slave2分别执行:

sudo chmod -R 777 /usr/zookeeper-3.4.10

19、在master、slave1、salve2启动zookeeper,如下图所示:

20、然后使用如下命令分别查看master、slave1、slave2的状态:

zkServer.sh status

如下图所示:

21、三台机器必须只有一个leader,其他都是follower。

22、此时用jps查看进程会多一个QuorumPeerMain则表示zookeeper配置启动成功,如下图所示:

master:

slave1:

slave2:

23、如果想要看出zookeeper效果,需要多配置一台hadoop的namenode节点,那么现在在新建一台hadoop的namenode节点,配置方法与其他3台相同,新建的一台我们叫做master1,域名配置为:sunxj-hdm1.myhd.com,IP:192.168.0.108,首先在master1节点上使用如下命令创建一个hadoop用户:

sudo adduser hadoop

如下图所示:

24、使用如命令把hadoop用户加入到hadoop用户组,前面一个hadoop是组名,后面一个hadoop是用户名:

sudo usermod -a -G hadoop hadoop

如下图所示:

25、把hadoop用户赋予root权限,让他可以使用sudo命令,使用如下命令编辑:

sudo vim /etc/sudoers

在root    ALL=(ALL:ALL) ALL下一行加入:

hadoop ALL=(root) NOPASSWD:ALL

如下图所示:

26、修改master1的主机名为:sunxj-hdm1,使用如下命令修改:

sudo vim /etc/hostname

如下图所示:

然后将:sunxj-master1修改为sunxj-hdm1

修改前:,修改后:

27、修改/etc/hosts文件中对应的主机名,如下图所示:

28、然后使用reboot重启,之后即可看到主机名已改,如下图所示:

29、在master、master1、slave1、slave2节点上在/etc/hosts文件中加入:

  1. 192.168.0.109 sunxj-hdm.myhd.com
  2. 192.168.0.108 sunxj-hdm1.myhd.com
  3. 192.168.0.110 sunxj-hds1.myhd.com
  4. 192.168.0.111 sunxj-hds2.myhd.com

然后将原来的localhost,sunxj-hdm1注释掉,如下图所示:

30、然后使用如下命令,在四个节点中执行使配置生效

sudo /etc/init.d/networking restart

如下图所示:

31、如果直接通过ping sunxj-hdm1.myhd.com是通的即可配置完成,如下图所示:

33、建立ssh无密码登录,具体方法请看:https://blog.csdn.net/sunxiaoju/article/details/85222290中的第五部分。

34、在配置master,slave1,slave2上的zookeeper,在zoo.cfg配置文件加一个服务列表server.4=192.168.0.108:2888:3888,如下图所示:

35、然后将zookeeper-3.4.10传到master1节点上的/usr/目录。

36、修改master1节点上的/usr/zookeeper-3.4.10/data/myid为4,如下图所示:

38、配置master1节点的环境变量,编辑/etc/profile文件,如下图所示:

发现没有配置jdk环境,以及hadoop环境,我们将hadoop上相应的配置全部拷贝过来,然后在传输文件,修改后的内容如下图所示:

37、然后使用如下命令分别启动四个节点的zookeeper:

zkServer.sh start

如下图所示:

38、最后在使用如下命令查看状态:

zkServer.sh status

如下图所示:

39、为了保持干净,我们把master、slave1、slave2上的hadoop目录更改一个名字,然后重新解压一个干净的hadoop,比如将原来的hadoop-2.7.7更改为hadoop-2.7.7_no_zookeeper,使用如下命令进行更改:

sudo mv /usr/hadoop-2.7.7 /usr/hadoop-2.7.7_no_zookeeper

如下图所示:

40、拷贝一个新的hadoop到usr,注意:文件夹名应与原来的文件夹名相同,这样对于环境变量就不用重新配置了,如下图所示:

41、修改hadoop-2.7.7的权限,使用如下命令修改权限:

sudo chmod 777 /usr/hadoop-2.7.7

如下图所示:

42、在hadoop-2.7.7目录中一个hdfs目录和三个子目录,如

  1. hadoop-2.7.3/hdfs
  2. hadoop-2.7.3/hdfs/tmp
  3. hadoop-2.7.3/hdfs/name
  4. hadoop-2.7.3/hdfs/data
  5. hadoop-2.7.3/hdfs/data/journaldata

如下图所示:

43、此时的修改都集中到master修改,首先修改hadoop-env.sh文件,将export JAVA_HOME=${JAVA_HOME}更改为:/usr/jdk1.8.0_191,如下图所示:

44、修改core-site.xml,如下:

  1. <configuration>
  2. <!– 指定hdfs的nameservice为master –>
  3. <property>
  4. <name>fs.defaultFS</name>
  5. <value>hdfs://master/</value>
  6. </property>
  7. <!– 指定hadoop临时目录 –>
  8. <property>
  9. <name>hadoop.tmp.dir</name>
  10. <value>file:/usr/hadoop-2.7.7/hdfs/tmp</value>
  11. </property>
  12. <!– 指定zookeeper地址 –>
  13. <property>
  14. <name>ha.zookeeper.quorum</name>
  15. <value>sunxj-hdm.myhd.com:2181,sunxj-hdm1.myhd.com:2181,sunxj-hds1.myhd.com:2181,sunxj-hds2.myhd.com:2181</value>
  16. </property>
  17. <!– hadoop链接zookeeper的超时时长设置 –>
  18. <property>
  19. <name>ha.zookeeper.session-timeout.ms</name>
  20. <value>1000</value>
  21. <description>ms</description>
  22. </property>
  23. </configuration>

45、修改hdfs-site.xml,修改如下:

  1. <configuration>
  2. <!– 指定副本数 –>
  3. <property>
  4. <name>dfs.replication</name>
  5. <value>2</value>
  6. </property>
  7. <!– 配置namenode和datanode的工作目录-数据存储目录 –>
  8. <property>
  9. <name>dfs.namenode.name.dir</name>
  10. <value>file:/usr/hadoop-2.7.7/hdfs/name</value>
  11. </property>
  12. <property>
  13. <name>dfs.datanode.data.dir</name>
  14. <value>file:/usr/hadoop-2.7.7/hdfs/data</value>
  15. </property>
  16. <!– 启用webhdfs –>
  17. <property>
  18. <name>dfs.webhdfs.enabled</name>
  19. <value>true</value>
  20. </property>
  21. <!–指定hdfs的nameservice为master,需要和core-site.xml中的保持一致
  22. dfs.ha.namenodes.[nameservice id]为在nameservice中的每一个NameNode设置唯一标示符。
  23. 配置一个逗号分隔的NameNode ID列表。这将是被DataNode识别为所有的NameNode。
  24. 例如,如果使用”master”作为nameservice ID,并且使用”hdm”和”hdm1″作为NameNodes标示符
  25. –>
  26. <property>
  27. <name>dfs.nameservices</name>
  28. <value>master</value>
  29. </property>
  30. <!– master下面有两个NameNode,分别是hdm,hdm1 –>
  31. <property>
  32. <name>dfs.ha.namenodes.master</name>
  33. <value>hdm,hdm1</value>
  34. </property>
  35. <!– hdm的RPC通信地址 –>
  36. <property>
  37. <name>dfs.namenode.rpc-address.master.hdm</name>
  38. <value>sunxj-hdm.myhd.com:9000</value>
  39. </property>
  40. <!– hdm的http通信地址 –>
  41. <property>
  42. <name>dfs.namenode.http-address.master.hdm</name>
  43. <value>sunxj-hdm.myhd.com:50070</value>
  44. </property>
  45. <!– hdm1的RPC通信地址 –>
  46. <property>
  47. <name>dfs.namenode.rpc-address.master.hdm1</name>
  48. <value>sunxj-hdm1.myhd.com:9000</value>
  49. </property>
  50. <!– hdm1的http通信地址 –>
  51. <property>
  52. <name>dfs.namenode.http-address.master.hdm1</name>
  53. <value>sunxj-hdm1.myhd.com:50070</value>
  54. </property>
  55. <!– 指定NameNode的edits元数据的共享存储位置。也就是JournalNode列表
  56. 该url的配置格式:qjournal://host1:port1;host2:port2;host3:port3/journalId
  57. journalId推荐使用nameservice,默认端口号是:8485 –>
  58. <property>
  59. <name>dfs.namenode.shared.edits.dir</name>
  60. <value>qjournal://sunxj-hdm.myhd.com:8485;sunxj-hdm1.myhd.com:8485;sunxj-hds1.myhd.com:8485/master</value>
  61. </property>
  62. <!– 指定JournalNode在本地磁盘存放数据的位置 –>
  63. <property>
  64. <name>dfs.journalnode.edits.dir</name>
  65. <value>/usr/hadoop-2.7.7/hdfs/data/journaldata</value>
  66. </property>
  67. <!– 开启NameNode失败自动切换 –>
  68. <property>
  69. <name>dfs.ha.automatic-failover.enabled</name>
  70. <value>true</value>
  71. </property>
  72. <!– 配置失败自动切换实现方式 –>
  73. <property>
  74. <name>dfs.client.failover.proxy.provider.master</name>
  75. <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
  76. </property>
  77. <!– 配置隔离机制方法,多个机制用换行分割,即每个机制暂用一行 –>
  78. <property>
  79. <name>dfs.ha.fencing.methods</name>
  80. <value>
  81. sshfence
  82. shell(/bin/true)
  83. </value>
  84. </property>
  85. <!– 使用sshfence隔离机制时需要ssh免登陆 –>
  86. <property>
  87. <name>dfs.ha.fencing.ssh.private-key-files</name>
  88. <value>/home/hadoop/.ssh/id_rsa</value>
  89. </property>
  90. <!– 配置sshfence隔离机制超时时间 –>
  91. <property>
  92. <name>dfs.ha.fencing.ssh.connect-timeout</name>
  93. <value>30000</value>
  94. </property>
  95. <property>
  96. <name>ha.failover-controller.cli-check.rpc-timeout.ms</name>
  97. <value>60000</value>
  98. </property>
  99. </configuration>

如下图所示:

46、修改mapred-site.xml ,先通过如下命令拷贝一个模板文件:

sudo cp mapred-site.xml.template mapred-site.xml

如下图所示:

47、然后编辑修改mapred-site.xml,修改如下:

  1. <configuration>
  2. <!– 指定mr框架为yarn方式 –>
  3. <property>
  4. <name>mapreduce.framework.name</name>
  5. <value>yarn</value>
  6. </property>
  7. <!– 指定mapreduce jobhistory地址 –>
  8. <property>
  9. <name>mapreduce.jobhistory.address</name>
  10. <value>sunxj-hdm.myhd.com:10020</value>
  11. </property>
  12. <!– 任务历史服务器的web地址 –>
  13. <property>
  14. <name>mapreduce.jobhistory.webapp.address</name>
  15. <value>sunxj-hdm.myhd.com:19888</value>
  16. </property>
  17. </configuration>

如下图所示:

47、修改yarn-site.xml ,修改如下:

  1. <configuration>
  2. <!– Site specific YARN configuration properties –>
  3. <!– 开启RM高可用 –>
  4. <property>
  5. <name>yarn.resourcemanager.ha.enabled</name>
  6. <value>true</value>
  7. </property>
  8. <!– 指定RM的cluster id –>
  9. <property>
  10. <name>yarn.resourcemanager.cluster-id</name>
  11. <value>yrc</value>
  12. </property>
  13. <!– 指定RM的名字 –>
  14. <property>
  15. <name>yarn.resourcemanager.ha.rm-ids</name>
  16. <value>rm1,rm2</value>
  17. </property>
  18. <!– 分别指定RM的地址 –>
  19. <property>
  20. <name>yarn.resourcemanager.hostname.rm1</name>
  21. <value>sunxj-hds1.myhd.com</value>
  22. </property>
  23. <property>
  24. <name>yarn.resourcemanager.hostname.rm2</name>
  25. <value>sunxj-hds2.myhd.com</value>
  26. </property>
  27. <!– 指定zk集群地址 –>
  28. <property>
  29. <name>yarn.resourcemanager.zk-address</name>
  30. <value>sunxj-hdm.myhd.com:2181,sunxj-hdm1.myhd.com:2181,sunxj-hds1.myhd.com:2181</value>
  31. </property>
  32. <property>
  33. <name>yarn.nodemanager.aux-services</name>
  34. <value>mapreduce_shuffle</value>
  35. </property>
  36. <property>
  37. <name>yarn.log-aggregation-enable</name>
  38. <value>true</value>
  39. </property>
  40. <property>
  41. <name>yarn.log-aggregation.retain-seconds</name>
  42. <value>86400</value>
  43. </property>
  44. <!– 启用自动恢复 –>
  45. <property>
  46. <name>yarn.resourcemanager.recovery.enabled</name>
  47. <value>true</value>
  48. </property>
  49. <!– 制定resourcemanager的状态信息存储在zookeeper集群上 –>
  50. <property>
  51. <name>yarn.resourcemanager.store.class</name>
  52. <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
  53. </property>
  54. </configuration>

如下图所示:

48、在mapred-env.sh加入JAVA_HOME,如下图所示:

49、在yarn-env.sh加入JAVA_HOME,如下代码:

export JAVA_HOME=/usr/jdk1.8.0_191

如下图所示:

50、修改slaves,修改如下:

  1. sunxj-hdm.myhd.com
  2. sunxj-hdm1.myhd.com
  3. sunxj-hds1.myhd.com
  4. sunxj-hds2.myhd.com

如下图所示:

注意:这些配置文件全部在/usr/hadoop.2.7.7/etc/hadoop目录下:

51、将hadoop-2.7.7目录分发到master1、slave1、slave2的usr目录中,使用如下命令:

  1. scp -r hadoop-2.7.7 hadoop@192.168.0.108:/home/sunftp/ftpdir/
  2. scp -r hadoop-2.7.7 hadoop@192.168.0.110:/home/sunftp/ftpdir/
  3. scp -r hadoop-2.7.7 hadoop@192.168.0.111:/home/sunftp/ftpdir/

52、然后在每个节点执行:

sudo mv /home/sunftp/ftpdir/hadoop-2.7.7 /usr/

53、启动zookeeper,由于之前已启动过,这里不在启动。

54、在master,master1,slave1节点上启动journalnode进程,使用如下命令启动:

hadoop-daemon.sh start journalnode

此时在master1,slave1节点上已出现journalnode进程,如下图所示:

但是在master上启动即没报错,也没有journalnode进程,如下图所示:

55、然后通过:

cat hadoop-2.7.7/logs/hadoop-hadoop-journalnode-sunxj-hdm.log 

查看日志出现以下错误:

  1. STARTUP_MSG: java = 1.8.0_191
  2. ************************************************************/
  3. 2019-01-04 00:16:58,071 INFO org.apache.hadoop.hdfs.qjournal.server.JournalNode: registered UNIX signal handlers for [TERM, HUP, INT]
  4. 2019-01-04 00:16:58,477 ERROR org.apache.hadoop.hdfs.qjournal.server.JournalNode: Failed to start journalnode.
  5. org.apache.hadoop.util.DiskChecker$DiskErrorException: Directory is not writable: /usr/hadoop-2.7.7/hdfs/data/journaldata
  6. at org.apache.hadoop.util.DiskChecker.checkAccessByFileMethods(DiskChecker.java:193)
  7. at org.apache.hadoop.util.DiskChecker.checkDirAccess(DiskChecker.java:174)
  8. at org.apache.hadoop.util.DiskChecker.checkDir(DiskChecker.java:108)
  9. at org.apache.hadoop.hdfs.qjournal.server.JournalNode.validateAndCreateJournalDir(JournalNode.java:118)
  10. at org.apache.hadoop.hdfs.qjournal.server.JournalNode.start(JournalNode.java:138)
  11. at org.apache.hadoop.hdfs.qjournal.server.JournalNode.run(JournalNode.java:128)
  12. at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
  13. at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
  14. at org.apache.hadoop.hdfs.qjournal.server.JournalNode.main(JournalNode.java:299)
  15. 2019-01-04 00:16:58,482 INFO org.apache.hadoop.util.ExitUtil: Exiting with status -1
  16. 2019-01-04 00:16:58,486 INFO org.apache.hadoop.hdfs.qjournal.server.JournalNode: SHUTDOWN_MSG:
  17. /************************************************************
  18. SHUTDOWN_MSG: Shutting down JournalNode at sunxj-hdm.myhd.com/192.168.0.109
  19. ************************************************************/

出现此问题是由于没有写权限,然后具体查看hadoop-2.7.7/hdfs/data/journaldata的权限,发现属于root用户,而非hadoop哦用户,如下图所示:

55、这是由于在创建时默认为了root用户,那么我们查看以下hdfs,tmp,data,name的权限,如下图所示:

56、通过如下命令更改:

  1. sudo chown hadoop:hadoop hadoop-2.7.7/hdfs
  2. sudo chown hadoop:hadoop hadoop-2.7.7/hdfs/tmp
  3. sudo chown hadoop:hadoop hadoop-2.7.7/hdfs/name
  4. sudo chown hadoop:hadoop hadoop-2.7.7/hdfs/data
  5. sudo chown hadoop:hadoop hadoop-2.7.7/hdfs/data/journaldata

如下图所示:

57、再次使用hadoop-daemon.sh start journalnode启动即可,如下图所示:

58、使用如下命令在master格式化namenode:

 hadoop namenode -format

如下图所示:

59、把在master节点上生成的元数据 给复制到 另一个namenode(master1)节点上,数据位置在/usr/hadoop-2.7.7/hdfs/name/,如下图所示:

60、将current目录放置到到master1节点相同的位置,通过如下命令先传输到master1节点上:

scp -r /usr/hadoop-2.7.7/hdfs/name/current hadoop@192.168.0.108:/home/sunftp/ftpdir/

如下图所示:

61、通过如下命令在master1上将current移动到/usr/hadoop-2.7.7/hdfs/name/中:

sudo mv /home/sunftp/ftpdir/current /usr/hadoop-2.7.7/hdfs/name/

如下图所示:

62、在master节点上使用如下命令格式化zkfc:

hdfs zkfc -formatZK

如下图所示:

63、上图中显示格式化成功,然后在master节点上使用start-all.sh启动HDFS,如下图所示:

注意:如果启动的时候卡住,说明需要输入yes,比如:

64、启动之后,检查各节点的进程,如下图所示:

master节点:

master1节点:

slave1节点:

slave2节点:

65、此时发现slave1和slave2上没有ResourceManager进程(通过start-all.sh启动),那么需要单独的使用如下命令进行启动:

yarn-daemon.sh start resourcemanager

如下图所示:

注意:在nodename节点上resourcemanager和NodeManager进程同时只能运行一个,而datanode节点可以同时运行。

66、此时可通过web界面来查看master和master1两个节点的状态,必然有一个是active,一个是standby,如下图所示:

(1)master:http://192.168.0.109:50070,如下图所示:

(2)master1:http://192.168.0.108:50070,如下图所示:

67、在slave2节点上查看yarn的web界面,地址为:http://192.168.0.111:8088,如下图所示:

68、web界面来查看master和master1两个节点的状态,可以确定在master1节点上的namenode是活动的,那么我们在master1节点上找到namenode进程的PID,然后强制结束,如下图所示:

69、再次通过查看web界面上的状态,此时原来master1节点无法打开web,而master的状态从standby变为了active,说明已经自动切换了,如下图所示:

70、现在将master1上的namenode通过如下命令单独启动起来:

hadoop-daemon.sh start namenode

如下图所示:

此时的web界面如下图所示:

71、在上传文件的时候干掉 active namenode,在上传文件之前首先要确定上传的位置在哪里,我们可以通过如下命令来查看hdfs系统下的目录信息:

hadoop fs -ls /

如下图所示:

78、此时master和master1节点上的hdfs系统中没有一个文件或文件夹,那么我们可以通过如下命令来创建一个文件夹,比如在master1上创建一个user_data文件夹,那么使用如下命令:

hadoop fs -mkdir /user_data

那么此时会在master也会自动创建一个user_data的,如下图所示:

在master1上创建:

在master节点上查看:

79、现在在master1节点上准备一个文件,文件大小为218720521kb,比如:

80、在master1上传的过程中,在master上kill掉namenode进程,如下图所示:

81、在master1上通过如下命令上传:

hadoop fs -put /home/sunftp/ftpdir/hadoop-2.7.7.tar.gz /user_data

如下图所示:

82、现在开始上传,在上传过程中kill掉master上的namenode,如下图所示:

83、查看文件是否上传成功,可通过如下命令查看:

hadoop fs -ls /user_data/

如下图所示:

我们可以看到上传的大小与原始文件大小相同,所以可以确定上传成功,所以在上传过程中如果出现active的namenode节点异常退出,会有一个备用namenode节点启动来保证文件不会丢失。

84、现在将master上的namenode启动,然后查看数据,如下图所示:

此时在两个slave1和slave2的节点上同样可以查看到文件,如下图所示;

85、然后也可以通过web界面查看,注意只能在active的节点上查看,如下图所示:

active节点(master1)

standby(master)节点:

86、然后在查看user_data目录,如下图所示:

87、然后也可以点击下载,如下图所示:

主要参考:https://www.cnblogs.com/qingyunzong/p/8634335.html

转载请注明:SuperIT » hadoop+Zookeeper集群安装配置高可用-HadoopHA

喜欢 (0)or分享 (0)