• Hadoop运维手记


    1.处理hadoop的namenode宕机
      处理措施:进入hadoop的bin目录,重启namenode服务
      操作命令:cd path/to/hadoop/bin   ./hadoop-daemon.sh start namenode
    2.处理hadoop的jobtacker宕机
      处理措施:进入hadoop的bin目录,重启jobtacker服务
      操作命令:cd path/to/hadoop/bin  ./hadoop-daemon.sh start jobtracker
    3. 处理hadoop的datanode宕机
      处理措施:进入hadoop的bin目录,重启datanode服务
      操作命令:cd path/to/hadoop/bin  ./hadoop-daemon.sh start datanode
    4. 处理hadoop的tasktracker宕机
      处理措施:进入hadoop的bin目录,重启tasktacker服务
      操作命令:cd path/to/hadoop/bin  ./hadoop-daemon.sh start tasktracker
    5. 启动hadoop集群
      处理措施:进入hadoop的bin目录,执行start-all.sh脚本
      操作命令:cd path/to/hadoop/bin  ./start-all.sh
      注意事项:
    namenode在启动的时候首先进入安全模式,如果datanode丢失的block达到一定的比例(1- dfs.safemode.threshold.pct),则系统会一直处于安全模式状态即只读状态。 dfs.safemode.threshold.pct(缺省值0.999f)表示hdfs启动的时候,如果datanode上报的block个数达到了 元数据记录的block个数的0.999倍才可以离开安全模式,否则一直是这种只读模式。如果设为1则hdfs永远是处于safemode。
    有两个方法离开这种安全模式
    (1)修改dfs.safemode.threshold.pct为一个比较小的值,缺省是0.999。
    (2)hadoop dfsadmin -safemode leave命令强制离开
    用户可以通过hadoop dfsadmin -safemode $value来操作安全模式,参数$value的说明如下:
      enter – 进入安全模式
      leave – 强制namenode离开安全模式
      get – 返回安全模式是否开启的信息
      wait – 等待,一直到安全模式结束。
    6. 关闭hadoop集群
      处理措施:进入hadoop的bin目录,执行stop-all.sh脚本
      操作命令:cd path/to/hadoop/bin  ./ stop-all.sh
    7. 从hadoop移除机器
      处理措施:把需要移除的机器增加到exclueds文件中,强制刷新datanode列表,等待decommission 状态正常后,即可停机下架,如有必要在namenode执行balancer操作。
      操作命令:在master的conf/hdfs-site.xml中加入

    <property>
    <name>dfs.hosts.exclude</name>
    <value>excludes</value>
    </property>

    在$hadoop_home下创建exclueds文件
    文件内容增加你想删除的节点的机器名,一行一个
    /bin/hadoop dfsadmin -refreshnodes命令刷新datanode例表
    /bin/hadoop dfsadmin -report查看结果

    datanodes available: 1 (1 total, 0 dead)
    
    name: 192.168.200.118:50010
    decommission status : decommission in progress
    configured capacity: 211370565632 (196.85 gb)
    dfs used: 11459694592 (10.67 gb)
    non dfs used: 187135799296 (174.28 gb)
    dfs remaining: 12775071744(11.9 gb)
    dfs used%: 5.42%
    dfs remaining%: 6.04%
    last contact: wed feb 22 23:51:48 pst 2015

    decommission status : decommission in progress变为 decommission status : decommission normal前mapreduce会异常增加节点
    8. 向hadoop添加机器
      处理措施:把新机器的增加到conf/slaves文件中,重启datanode和jobtracker进程,当新添加的机器向namenode发送心跳信息后,namenode会自动感知新加入的机器,如果有必要可以做balancer操作。
      操作命令:
    1.把新机器的增加到conf/slaves文件中(datanode或者tasktracker crash则可跳过)
    2.在新机器上进入hadoop安装目录
      $bin/hadoop-daemon.sh start datanode
      $bin/hadoop-daemon.sh start tasktracker
    3.在namenode上
      $bin/hadoop balancer
    9. 杀死正在运行的job
      操作命令:bin/hadoop job –kill {job-id}

  • 相关阅读:
    greenplum表的distributed key值查看
    oracle dump的使用心得
    Linux du与df命令的差异
    从语言只是工具说起
    DDD领域模型
    同一个对象在另一个对象中容易出现重复引用造成map覆盖,HiJson出现严重漏洞自动删除了$ref和空值
    乒乓球相关
    字符串转xml
    最新版java题
    list集合进行分页
  • 原文地址:https://www.cnblogs.com/skyl/p/4840975.html
Copyright © 2020-2023  润新知