在 Linux 上配置 HDFS 端口,主要是通过修改 Hadoop 的配置文件(主要在 $HADOOP_HOME/etc/hadoop/ 目录下)来完成的。下面按常用端口 + 配置方法 + 示例给你说明。
| 端口 | 作用 | 配置项 |
|---|---|---|
| 8020 / 9000 | NameNode RPC 端口 | fs.defaultFS |
| 9870 | NameNode Web UI(Hadoop 3.x) | dfs.namenode.http-address |
| 9864 | DataNode 数据传输端口 | dfs.datanode.address |
| 9866 | DataNode HTTP 端口 | dfs.datanode.http.address |
| 9867 | DataNode IPC 端口 | dfs.datanode.ipc.address |
| 50070 | NameNode Web UI(Hadoop 2.x) | dfs.namenode.http-address |
| 50010 | DataNode 数据传输端口(Hadoop 2.x) | dfs.datanode.address |
cd $HADOOP_HOME/etc/hadoop
主要涉及:
core-site.xmlhdfs-site.xml<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode:8020</value>
</property>
</configuration>
如果想改成 9000:
<value>hdfs://namenode:9000</value>
<property>
<name>dfs.namenode.http-address</name>
<value>namenode:9870</value>
</property>
<property>
<name>dfs.datanode.address</name>
<value>datanode:9864</value>
</property>
<property>
<name>dfs.datanode.http.address</name>
<value>datanode:9866</value>
</property>
<!-- core-site.xml -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode:9000</value>
</property>
<!-- hdfs-site.xml -->
<property>
<name>dfs.namenode.http-address</name>
<value>namenode:50070</value>
</property>
<property>
<name>dfs.datanode.address</name>
<value>datanode:50010</value>
</property>
# 停止集群
stop-dfs.sh
# 重新格式化 NameNode(仅首次或端口大改时)
hdfs namenode -format
# 启动
start-dfs.sh
# 开放端口示例(CentOS 7+)
firewall-cmd --add-port=9870/tcp --permanent
firewall-cmd --add-port=8020/tcp --permanent
firewall-cmd --reload
或临时关闭:
systemctl stop firewalld
netstat -tunlp | grep java
# 或
ss -tunlp | grep 9870
如果你能告诉我:
我可以直接给你一份可复制的完整配置。