zoukankan      html  css  js  c++  java
  • taskTracker和jobTracker 启动失败

    2011-01-05 12:44:42,144 ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.lang.RuntimeException: Not a host:port pair: local
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:136)
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:123)
    at org.apache.hadoop.mapred.JobTracker.getAddress(JobTracker.java:1807)
    at org.apache.hadoop.mapred.TaskTracker.<init>(TaskTracker.java:905)
    at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:2833)

    需配置mapred.job.tracker属性,在hadoop-0.20.2conf mapred-site.xml的configuration节点中配置(job-tracker host为jobTracker服务器的ip或域名)

    <configuration>
    <property>
                    <name>mapred.job.tracker</name>
                    <value>localhost:9101</value>
    </property>

    </configuration>

    1、taskTracker和jobTracker 启动失败

    2011-01-05 12:44:42,144 ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.lang.RuntimeException: Not a host:port pair: local
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:136)
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:123)
    at org.apache.hadoop.mapred.JobTracker.getAddress(JobTracker.java:1807)
    at org.apache.hadoop.mapred.TaskTracker.<init>(TaskTracker.java:905)
    at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:2833)

    需配置mapred.job.tracker属性,在mapred-site.xml的configuration节点中配置(job-tracker host为jobTracker服务器的ip或域名)

    <property>
    <name>mapred.job.tracker</name>
    <value>[job-tracker host]:9001</value>
    </property>

    2、namenode启动失败

    STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707; compiled by 'chrisdo' on Fri Feb 19 08:07:34 UTC 2010
    ************************************************************/
    2011-02-28 15:54:29,719 ERROR org.apache.hadoop.hdfs.server.namenode.NameNode: java.lang.NullPointerException
    at org.apache.hadoop.net.NetUtils.createSocketAddr(NetUtils.java:134)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:156)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.getAddress(NameNode.java:160)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.initialize(NameNode.java:175)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.<init>(NameNode.java:279)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.createNameNode(NameNode.java:956)
    at org.apache.hadoop.hdfs.server.namenode.NameNode.main(NameNode.java:965)

    需配置fs.default.name属性,在core-site.xml的configuration节点中配置(namenode host为namenode服务器的ip或域名)

    <property>
    <name>fs.default.name</name>
    <value>[namenode host]:9000</value>
    </property>

    3、hadoop运行需要地方存放一些临时文件,而数据量较大的时候,这些临时文件也会比较大,所以配置临时目录的时候要确定这些目录是否有足够的空间,如果没有指定目录,一般会放在/tmp这个目录下面。

    一般需要指定的目录有:hadoop-env.sh里的export HADOOP_PID_DIR=;hdfs-site.xml里的dfs.name.dir和dfs.data.dir;core-site.xml里的hadoop.tmp.dir;mapred-site.xml里的mapred.system.dir、mapred.local.dir、mapred.tmp.dir。

    4、分布式运行,查看日志是个非常郁闷的事情,一般的程序标准输出会放在与bin同级的logs目录下的userlogs下面,会有相当多的文件夹。可通过http://job-tracker host:port/jobdetails.jsp查看hadoop运行状况和日志,一般port为50030。

    5、有时,当你申请到一个HOD集群后马上尝试上传文件到HDFS时,DFSClient会警告NotReplicatedYetException。通常会有一个如下报错信息。
    org.apache.hadoop.ipc.RemoteException: java.io.IOException File /root/testdir/hadoop-default.xml could only be replicated to 0 nodes, instead of 1
    at org.apache.hadoop.dfs.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1123)
    at org.apache.hadoop.dfs.NameNode.addBlock(NameNode.java:330)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    ……
    不幸的是我也遇到了这个报错,google了很久才找到一个解决方案:当你向一个DataNodes正在和NameNode联络的集群上传文件的时候,这种现象就会发生。在上传新文件到HDFS之前多等待一段时间就可以解决这个问题,因为这使得足够多的DataNode启动并且联络上了NameNode。

    6、Error: Java heap space
    mapred-site.xml中设置

    <property>
    <name>mapred.child.java.opts</name>
    <value>-Xmx512m</value>
    </property>

    调整这个数字。

    7、 Namenode in safe mode
    解决方法
    bin/hadoop dfsadmin -safemode leave

  • 相关阅读:
    Redis源码解析:28集群(四)手动故障转移、从节点迁移
    Redis源码解析:27集群(三)主从复制、故障转移
    Redis源码解析:26集群(二)键的分配与迁移
    centos 6.5 安装composer
    Centos安装php高版本
    CentOS快速搭建LAMP环境
    封装类似thinkphp连贯操作数据库的Db类(简单版)。
    php封装pdo操作数据的工具类
    php中使用mysqli和pdo扩展,测试mysql数据库的执行效率。
    php中使用mysqli和pdo扩展,测试连接mysql数据库的效率。
  • 原文地址:https://www.cnblogs.com/baoendemao/p/3804688.html
Copyright © 2011-2022 走看看