我的配置:
服务器级机器集群(4 台机器),每台机器配备 RHEL、8GB RAM、四核处理器。我将机器“B1”设置为主机,其余机器设置为从机(B2、B3、B4)。启动 dfs-start.sh,名称节点出现在 B1 的 53410 上。其余节点无法连接到 53410 上的 B1!
这是我到目前为止所做的:
- 从 B2、B3、B4 尝试“telnet B1 53410” - 连接被拒绝。
- 尝试从 B2、B3、B4 SSH 到 B1,反之亦然 - 没问题,工作正常。
- 将 53410 更改为 55410,重新启动 dfs,同样的问题 - 此端口上的连接也被拒绝。
- B1 上禁用的防火墙(iptables 停止) - 尝试从 B2、B3、B4 连接 - 在 telnet 上失败。
- 禁用所有节点上的防火墙,再次尝试,再次无法连接到 53410。
- 检查 ftp 从 B2、B3、B4 到 B1 工作,停止 ftp 服务(服务 vsftpd 停止),尝试在标准 ftp 端口(21)上启动 dfs,namenode 出现,其余节点再次失败。甚至不能从 B2、B3、B4 telnet 到 ftp 端口。
- “telnet localhost 53410”在 B1 上运行良好。
所有节点都可以相互访问,并且所有 /etc/hosts 都设置了正确的 IP 地址映射。所以,在这一点上我几乎一无所知。为什么namenode会拒绝连接-hadoop conf中是否有一个设置,我应该知道允许外部客户端在namenode端口上远程连接?