Hadoop:datanode进程正在运行但无法运行?

时间:2017-04-19 04:46:19

标签: hadoop

我们这些天一直在尝试安装hadoop集群。有时候会成功,但大部我根据官方文档和一些看似高质量的博客进行配置。

我遇到的问题是: 命令可以看到所有进程(包括namenode,datanode,nodemanager,resourcemanager):jps

但奴隶实际上并没有工作。我无法在web界面master中看到它们:8088或master:50070

有人说这是由重复的namenode格式和id冲突引起的。我认为这不是我的问题,因为数据节点从一开始就不起作用,而datanode文件夹总是空的。

这种现象还有其他可能的原因吗? 我真的很痛苦地设置群集。

详情:

Hadoop版本:3.0.0-alpha2

hdfs dfsadmin -report的输出是:

Configured Capacity: 492017770496 (458.23 GB)
Present Capacity: 461047037952 (429.38 GB)
DFS Remaining: 460770820096 (429.13 GB)
DFS Used: 276217856 (263.42 MB)
DFS Used%: 0.06%
Under replicated blocks: 10069
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0
Pending deletion blocks: 0

-------------------------------------------------
Live datanodes (1):

Name: 127.0.0.1:9866 (localhost)
Hostname: sr145.local.lan
Decommission Status : Normal
Configured Capacity: 492017770496 (458.23 GB)
DFS Used: 276217856 (263.42 MB)
Non DFS Used: 5954019328 (5.55 GB)
DFS Remaining: 460770820096 (429.13 GB)
DFS Used%: 0.06%
DFS Remaining%: 93.65%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Sun Jan 02 02:52:57 CST 2000

**唯一一个实时datanode与主节点的节点相同。**所有其他从属节点都不是活动的。

配置细节: 1,HDFS-site.xml中:

<configuration>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>sr145:9001</value>
    </property>
    <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/opt/hadoop/hdfs/namenode</value>
    </property>

    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/opt/hadoop/hdfs/datanode</value>
    </property>
</configuration>

2,芯-site.xml中

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/opt/hadoop/tmp</value>
        <description>Abasefor other temporary directories.</description>
    </property>

</configuration>

3,纱-site.xml中

<configuration>

<!-- Site specific YARN configuration properties -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <property>
                <name>yarn.manager.aux-services.mapreduce.shuffle.class</name>
                <value>org.apache.hadoop.mapred.ShuffleHandler</value>
        </property>
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>sr145</value>
        </property>
        <property>
           <name>yarn.resourcemanager.address</name>
           <value>sr145:8032</value>
        </property>
        <property>
           <name>yarn.resourcemanager.scheduler.address</name>
           <value>sr145:8030</value>
        </property>
        <property>
           <name>yarn.resourcemanager.resource-tracker.address</name>
           <value>sr145:8035</value>
        </property>
        <property>
           <name>yarn.resourcemanager.admin.address</name>
           <value>sr145:8033</value>
        </property>
        <property>
           <name>yarn.resourcemanager.webapp.address</name>
           <value>sr145:8088</value>
        </property>
</configuration>

所有节点的配置几乎相同,只是在hdfs-site.xml natenode或datanode配置中有所不同。 $ HADOOP_HOME / etc / hadoop中的workersslaves文件也会被编辑。与原始状态相比,不会移动任何文件。

1 个答案:

答案 0 :(得分:1)

  

唯一一个实时datanode与主节点的节点相同。

只有该datanode知道namenode绑定到localhost,所有其他数据节点都试图与sr145连接。

fs.defaultFS中设置的主机值是Namenode守护程序的启动位置。
在主节点中将其设置为localhost使进程绑定到节点的环回IP。 编辑该值以获得实际的主机名或IP地址,在这种情况下它将是

<property>
   <name>fs.defaultFS</name>
   <value>hdfs://sr145:9000</value>
</property>

此属性在所有节点中必须相同。