分享

启动hadoop后,fs.defaultFS中配置的9000端口没有出现在监听中?

uu_snow 发表于 2016-6-11 13:46:29 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 8 34954
本帖最后由 uu_snow 于 2016-6-11 14:49 编辑

我是在虚拟机上安装的完全分布式的集群。
3个虚拟机,OS是CentOS 6.6,仅仅安装了Hadoop2.6.4。Hbase、zookeeper等等都没装。
iptables, selinux等等都关闭了,ssh免密登录也没问题。
使用start-dfs.sh和start-yarn.sh,都能成功启动。
但是,fs.defaultFS中配置的9000端口没有出现在监听中。
使用telnet 这个端口,显示"Connection refused"
请问,这是什么原因?

1)9000这个端口没有被占用。使用netstat -ap | grep 9000,检查过
2)使用hdfs dfs -put,hdfs dfs -ls等命令都是正常的

core-site.xml配置如下:
[mw_shl_code=xml,true]<configuration>
        <property>
              <name>fs.defaultFS</name>
              <value>hdfs://master:9000</value>
        </property>
        <property>
              <name>hadoop.tmp.dir</name>
             <value>/var/hadoop</value>
        </property>

</configuration>
[/mw_shl_code]

hdfs-site.xml配置如下:
[mw_shl_code=xml,true]<configuration>

    <property>
      <name>dfs.namenode.rpc-address</name>
      <value>master:9001</value>
    </property>
    <property>
      <name>dfs.namenode.secondary.http-address</name>
      <value>slave1:50090</value>
    </property>
    <property>
      <name>dfs.blocksize</name>
      <value>67108864</value>
    </property>
   
    <property>
      <name>dfs.namenode.name.dir</name>
      <value>file:/var/hadoop/name</value>
    </property>
    <property>
      <name>dfs.datanode.name.dir</name>
      <value>file:/var/hadoop/data</value>
    </property>

    <property>
      <name>dfs.replication</name>
      <value>1</value>
    </property>

</configuration>
[/mw_shl_code]

使用jps可以看到各个进程:
[mw_shl_code=bash,true][root@master sbin]# jps
4128 Jps
3512 NameNode
3774 ResourceManager[/mw_shl_code]

查看监听端口,没有9000这个端口:
[mw_shl_code=bash,true][root@master sbin]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name  
tcp        0      0 0.0.0.0:50070               0.0.0.0:*                   LISTEN      3512/java         
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      981/sshd           
tcp        0      0 192.168.56.105:8088         0.0.0.0:*                   LISTEN      3774/java         
tcp        0      0 127.0.0.1:25                0.0.0.0:*                   LISTEN      1081/master        
tcp        0      0 192.168.56.105:8030         0.0.0.0:*                   LISTEN      3774/java         
tcp        0      0 192.168.56.105:8031         0.0.0.0:*                   LISTEN      3774/java         
tcp        0      0 192.168.56.105:8032         0.0.0.0:*                   LISTEN      3774/java         
tcp        0      0 192.168.56.105:8033         0.0.0.0:*                   LISTEN      3774/java         
tcp        0      0 192.168.56.105:9001         0.0.0.0:*                   LISTEN      3512/java [/mw_shl_code]

已有(8)人评论

跳转到指定楼层
nextuser 发表于 2016-6-11 14:11:16
楼主可以访问下hdfs的文件,然后在测试下。
回复

使用道具 举报

NEOGX 发表于 2016-6-11 14:25:37
本帖最后由 NEOGX 于 2016-6-11 14:27 编辑

楼主看下9000端口是否被暂用。
sudo netstat -ap | grep 9000
回复

使用道具 举报

uu_snow 发表于 2016-6-11 14:40:34
nextuser 发表于 2016-6-11 14:11
楼主可以访问下hdfs的文件,然后在测试下。

使用hdfs dfs -put,hdfs dfs -ls等命令都是正常的
如下:
[mw_shl_code=bash,true][root@master logs]# hdfs dfs -ls hdfs://master:9001/
Found 1 items
-rw-r--r--   2 root supergroup      15429 2016-06-10 22:15 hdfs://master:9001/LICENSE.txt[/mw_shl_code]


回复

使用道具 举报

qcbb001 发表于 2016-6-11 14:42:16
IPv6是否禁用了
回复

使用道具 举报

uu_snow 发表于 2016-6-11 14:42:26
NEOGX 发表于 2016-6-11 14:25
楼主看下9000端口是否被暂用。
sudo netstat -ap | grep 9000

9000端口没有被占用,执行sudo netstat -ap | grep 9000,没有显示任何信息。

而且,如果9000真的被占用了,我用netstat -ntlp,也应该能看到这个端口吧。
现在是看不到这个端口被监听着

回复

使用道具 举报

uu_snow 发表于 2016-6-11 14:47:33

我没动过IPV6的配置,应该没有被禁用。
如下:
[mw_shl_code=bash,true][root@master logs]# lsmod | grep -i ipv6
ipv6                  334932  0
[/mw_shl_code]
回复

使用道具 举报

grinsky 发表于 2016-6-21 11:49:14
uu_snow 发表于 2016-6-11 14:47
我没动过IPV6的配置,应该没有被禁用。
如下:
[mw_shl_code=bash,true][root@master logs]# lsmod | g ...

我也遇到这种情况了
楼主解决了么
回复

使用道具 举报

shiyongsway 发表于 2019-4-28 17:44:23
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.3.5:9820</value>
    </property>

    <property>
        <name>dfs.namenode.rpc-address</name>
        <value>192.168.3.5:9820</value>

    </property>
    <!--默认的文件系统存储在临时文件夹,Linux重启会删除,所以要指定一个目录-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/hadoop/tmp</value>
    </property>

</configuration>
进行上面的设置,而且需要在hosts文件,一定不要指定127.0.0.1  node01 ,应该是局域网的ip,比如192.168.3.5
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条