hadoop集群中Namenode和Datanode之间的通信端口是什么

What is the communication port between Namenode and Datanode in hadoop cluster

想知道hadoop中Namenode和Datanode具体使用的通信协议port number

比如说,如果我在Namenode中写下下面的命令,

hdfs dfsadmin -report

它将显示活动节点(名称节点和数据节点)的详细信息,有多少数据节点等。我的问题是名称节点和数据节点如何通信?通过 which port?我实际上使用上述命令只获得了 1 个数据节点,而在我的集群中,有 8 个数据节点。所以,我不确定是否有 port blocking of networking 导致了这个!!我的防火墙在名称节点和所有数据节点中被禁用。我已经通过返回 inactive.

sudo ufw status 命令进行了检查

从 hadoop 官方页面 (link),我发现了这个:

The Communication Protocols

All HDFS communication protocols are layered on top of the TCP/IP protocol. A client establishes a connection to a configurable TCP port on the NameNode machine. It talks the ClientProtocol with the NameNode. The DataNodes talk to the NameNode using the DataNode Protocol. A Remote Procedure Call (RPC) abstraction wraps both the Client Protocol and the DataNode Protocol. By design, the NameNode never initiates any RPCs. Instead, it only responds to RPC requests issued by DataNodes or clients.

我在 Ubuntu 16.04

中使用 hadoop 3.1.1

非常感谢任何帮助。谢谢。

这些都是在hdfs-site.xml中配置的。

例如,默认情况下,dfs.datanode.address=0.0.0.0:9866

如果您搜索 portaddress,那么您通常可以找到您要查找的内容 https://hadoop.apache.org/docs/r3.1.1/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml

如果该命令或 NameNode UI 不显示数据节点,则 SSH 到各个节点,检查 jps 以查看进程是否 运行,并将文件记录到查找进程是否不是 运行。