[笔记迁移][Hadoop][11]HA测试与特性

  1. 若想启动Federation中的双NameNode之一,可以在NamNode节点上执行 hadoop-daemon.sh start namenode 启动该节点。

  1. 当Federation中的双NameNode中的Active下线,经过"hdfs-site.xml"中设置的ssh超时时长,Standby将顶替成为Activce。

  1. 上传或下载过程中,若Federation中双NamenNode之一异常,传输过程仍将继续且完整。

  1. 若启动后发现Federation中双NameNode都为Standby(拒绝服务的异常状态),可以使用hdfs haadmin -transitionToActive [ServiceId][–forcemanual] 切换状态 或 hdfs haadmin -getServiceState [ServiceId]查看NameNode状态。

  1. 关于Yarn( ResourceManager )的Active状态信息保存于Zookeeper的/yarn-leader-election/ActiveBreadCrumb下。

  1. Yarn的HA机制仅限于状态替换,与HDFS不同,不能在JOB提交执行途中切换。

  1. 动态增删节点和副本数量
    (1) 假设当前集群包含三个DataNode,每个数据块有三个副本,当其中某一个DataNode宕机时,原先的两个DataNode不会产生新副本(因为原先三个副本分布于三个DataNode上,再添加一个相同没有意义)。

    (2) 但如果现在新增一个DataNode,则该数据块副本会复制一份到这个新节点上,以保持副本数量。

    (3)但如果原离线DataNode又上线,则该数据块的副本数比原先设置多1,HDFS会删除冗余副本。

    (4)杀死DataNode并不会立即显示,经过超时时间后才会被NameNode判定该节点死亡,LiveNode-1,DeadNode+1。

    默认的超时时间为10分钟+30秒。
    如果设超时时间为timeout,则其计算公式为:
    timeout=2heartbeat.recheck.interval + 10dfs.heartbeat.interval
    其中,默认的heartbeat.recheck.interval为5分钟,单位为毫秒,dfs.heartbeat.interval为3秒,单位为秒

    hdfs-site.xml文件中又两个参数:
    <property>
    	<name>heartbeat.recheck.interval</name>
    	<value>2000</value>
    </property>
    <property>
    	<name>dfs.heartbeat.interval</name>
    	<value>1</value>
    </property>
    

    (5)同样地,HDFS冗余副本的删除也有一个超时时间(取决于DataNode向NameNode的汇报时间)。

    hdfs-site.xml文件中有一个参数:
    <property>
    	<name>dfs.blockreport.intervalMsec</name>
    	<value>10000</value>
    	<description>Determines block reporting interval in milliseconds</description>
    </property>
    <!--默认设置3600000毫秒,即1个小时,也就是说,DataNode向NameNode报告Block信息的时间间隔为1个小时,所以经过了1小时多余的Block才被删除掉。-->
    

    注:若在持有Hadoop克隆配置的节点上使用 hadoop-daemon.sh start datanode 来启用新DataNode, 将会因为之前设置的工作目录中 /home/hadoop/hadoopApp/…/tmp/dfs/data/current/VERSION的ClusterID的冲突导致新DataNode启动失败;当 rm -rf /home/hadoopApp/…/tmp时,启动新的DataNode将自动加入集群,自动复制数量未达标的副本

  2. Java操作HA的API与伪分布式几乎相同,只是URL需要变动为 hdfs://{FederationName}/。( 以前时hdfs:// {NameNodeHostName}:{port}/ )

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值