hadoop 1.x端口列表 - 另外4个未知端口

viv*_*_nk 5 networking hadoop mapreduce hdfs

我配置并安装了hadoop 1.2.1单节点.我将namenode和jobtracker地址的端口分别配置为" hdfs:// localhost:9000 "和" localhost:9001 ".

启动集群后(start-all.sh).我跑了netstat -nltp之后,列出了hadoop端口.

50030 - jobtracker Web UI
50060 - tasktracker Web UI
50070 - namenode Web UI
50075 - datanode Web UI
(http://localhost:50075/browseDirectory.jsp?dir=%2F)
50090 - secondary namenode Web UI

54310 - namenode (as configured in XML)
54311 - jobtracker (as configured in XML)
50010 - datanode (for data transfer)
50020 - datanode (for block metadata operations & recovery)
33447 - tasktracker ( not configured. Any unused local port is chosen by hadoop itself)
Run Code Online (Sandbox Code Playgroud)

但是,其他几个端口也被占用,它表明它是java进程(我停止了hadoop并确认这些只属于hadoop集群).

48212 - ???
41888 - ???
47448 - ???
52544 - ???
Run Code Online (Sandbox Code Playgroud)

这些不是固定端口.它们是动态选择的.因为,当我重新启动集群(stop-all.shstart-all.sh)时,其他端口与第一次相同,但这些端口已更改

48945 - tasktracker (This is fine, as explained before)
Run Code Online (Sandbox Code Playgroud)

其他港口怎么样?这些端口用于什么?

44117 - ???
59446 - ???
52965 - ???
56583 - ???
Run Code Online (Sandbox Code Playgroud)

mba*_*axi 1

感谢您提出这个有趣的问题,Vivek。

这让我很感兴趣,我为 Apache Hadoop 1.2.1 挖掘了一些代码 - 主服务器和从服务器的启动部分;但除了标准记录的端口绑定之外,没有其他端口绑定。

我对启动名称节点的方法做了一些实验,并使用观察端口netstat -nltpa

1) hadoop --config ../conf namenode -常规

2)直接调用Namenode主类

3)添加默认的core-default.xml并启动namenode

我的观察是,#2 和 #3 只显示标准端口,所以我查找了 java 选项,这就是宾果游戏。

在hadoop-env.sh中注释掉下面的所有内容,然后启动hadoop,你只会看到标准端口,所以你看到的其他端口都是JMX bin端口

export HADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS"
export HADOOP_SECONDARYNAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_SECONDARYNAMENODE_OPTS"
export HADOOP_DATANODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_DATANODE_OPTS"
export HADOOP_BALANCER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_BALANCER_OPTS"
export HADOOP_JOBTRACKER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_JOBTRACKER_OPTS"
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助。