zoukankan      html  css  js  c++  java
  • Hadoop学习11--Ha集群配置启动

    理论知识:

    http://www.tuicool.com/articles/jameeqm

    这篇文章讲的非常详细了:

    http://www.tuicool.com/articles/jameeqm

    以下是进阶,讲QJM工作原理:

    http://www.tuicool.com/articles/eIBB3a

     首次启动ha集群过程:

    hdfs zkfc -formatZK(这个之前落下了,很重要,如果不注册到zookeeper,那么等于hdfs和zookeeper没产生任何关系)

    1、启动journalnode

    sbin/hadoop-daemon.sh start journalnode  是每一台journode机器

    2、启动namenode 

    1)格式化bin/hdfs namenode -format

    2)启动这个namenode : sbin/hadoop-daemon.sh start namenode

    3)格式化另一台namonode  bin/hdfs namenode -bootstrapStandby :注意2-3步骤的顺序,使用时,我犯了个错误,把顺序颠倒了,结果,第二台namenode的tem.dir目录一直没有任何文件。

    4)启动第二台namenode:sbin/hadoop-daemon.sh start namenode

     3、到了这一步对于新手来说有个陷阱。我们在学习的时候,都知道两台namenode一台是active,一台是standby。可是此刻,两台都是standby。

    还以为是出了问题,后来终于发现,这里是需要【手动转换】的!

    bin/hdfs haadmin -transitionToActive nn1

    此时,可以通过之前配置的http地址访问集群了。

    http://master:50070

    tip:关闭防火墙:sudo ufw disable

    4、启动datanode

    逐台 sbin/hadoop-daemon start datanode

    ---------结束

    把非Ha集群,转换为Ha集群:(和上面的首次相比,只是步骤二由格式化变成了初始化)

    1、启动所有journalnode

    sbin/hadoop-daemon start journalnode

    2、在其中一台namenode上对journalnode的共享数据进行初始化

    bin/hdfs namenode  -initializeShareEdits

    3、启动这台namenode

    sbin/hadoop-daemon start namenode

    4、在第二台namenode上同步:

    bin/hdfs namenode -bootstrapStandby

    5、启动第二台namenode

    6、启动所有的datanode

    ------------结束

    一些常用的管理集群的命令:

    bin/hdfs haadmin -getServiceStae nn1

    bin/hdfs haadmin -failover nn1 nn2

    bin/hdfs haadmin transitionActive nn1(不常使用,因为不会运行fence,无法关闭前一个namenode造成脑裂)

    bin/hdfs haadmin transitionStandby nn2(不常使用,因为不会运行fence,无法关闭前一个namenode造成脑裂)

    bin/hdfs haadmin checkHealth nn2

  • 相关阅读:
    msgs no .h file
    我们为之奋斗过的C#之---简单的库存管理系统
    我们为之奋斗过的C#-----C#的一个简单理解
    套接字之sendto系统调用
    套接字之msghdr结构
    套接字之select系统调用
    套接字之close系统调用
    TCP之listen&backlog
    套接字之相关系统调用的调用流程
    套接字之shutdown系统调用
  • 原文地址:https://www.cnblogs.com/xyang/p/5443861.html
Copyright © 2011-2022 走看看