zoukankan      html  css  js  c++  java
  • NameNode HA滚动升级方案

    Hadoop 滚动升级非常方便,只需要在配置中增加一些选项就可以通过Hadoop自身的代码进行完成。

    步骤:

    1、首先到需要升级的NameService的Active NameNode上面,比如我们10.39.2.131是ns1的Active NameNode。

     

    2、新增加的配置:

    <property>

    <name>dfs.ha.fencing.methods</name>

    <value>shell(/bin/true)</value>

    </property>

     

    3、在ActiveNameNode上面使用命令

    hdfs haadmin -ns ns1 -failover nn1 nn2

    将nn1切换为Standby,nn2切换为Active。随后看一下web页面,确认这一过程完成顺利。

    (如果这一过程失败,采用手动切换。

    (1)如果ActiveNameNode没有切换为StandbyNameNode

    hdfs haadmin -ns ns1 -transitionToStandby nn1

    (2)确认nn1进入standby状态,防止client读取过期的数据。

    hdfs haadmin -ns ns2 -transitionToActive nn2)

     

    4、停止nn1(现在已经切换为StandByNameNode)

    hadoop-daemon.sh stop namenode

     

    5、替换jar包

     

    6、启动nn1

    hadoop-daemon.sh start namenode

     

    7、到nn2(目前为ActiveNameNode),执行步骤3,只不过参数位置变化

    hdfs haadmin -ns ns1 -failover nn2 nn1

     

    8、停止nn2

    hadoop-daemon.sh stop namenode

     

    9、替换jar包

     

    10、启动nn2

    hadoop-daemon.sh start namenode

     

    至此,滚动升级完成,在升级过程中不影响client及任务的执行,做到了不停机升级。

  • 相关阅读:
    使用docker部署zabbix
    如何用好 IDEA ,Java 撸码效率至少提升 5 倍?
    getpass模块
    linux下利用nohup后台运行jar文件包程序
    Spring Cloud 与 Dubbo 区别
    git 打标签并推送tag到托管服务器
    git-stash用法小结
    git推送本地分支到远程分支
    Git dev分支合并到master分支完美实战
    IntelliJ远程调试教程
  • 原文地址:https://www.cnblogs.com/sidmeng/p/3830905.html
Copyright © 2011-2022 走看看