由于 ssh 连接被拒绝,macOS 上的 hadoop 启动辅助名称节点失败

hadoop on macOS initiating secondary namenode fails due to ssh connection refused

我已经在 Window 的 wsl2 环境下以 https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html#Pseudo-Distributed_Operation 中描述的伪分布式模式成功启动单节点。 之后,我尝试使用 MacBookPro 重复它。但不知何故 start-dfs.sh 失败了。终端抛出错误:

Stopping namenodes on [localhost]
Stopping datanodes
Stopping secondary namenodes [kakaoui-MacBookPro.local]
kakaoui-MacBookPro.local: ssh: connect to host kakaoui-macbookpro.local port 22: Connection refused
2021-06-26 23:01:23,377 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

好的。有答案说我应该通过系统 属性 启用 ssh 连接,但它已经这样设置并且 ssh localhost 也可以正常工作。

然后事情就变得值得了;有时描述secondary namenode failed as:

Starting secondary namenodes [kakaoui-MacBookPro.local]
kakaoui-MacBookPro.local: ssh: connect to host kakaoui-macbookpro.local port 22: Operation timed out

然后当我离开 Mac 一段时间并再次命令 start-dfs.sh 时,它偶尔会成功。当我做 stop-dfs.shstart-dfs.sh 检查时,它失败了。

即使我能成功start-dfs.sh,之后还有很多问题,比如无法启动数据节点或资源管理器或节点管理器等。我什至无法 运行 hadoop 环境。

感觉一切都乱七八糟,一点也不稳定。已经尝试重新安装这个和那个好几次了。不幸的是,大多数启动失败甚至都没有记录在 /logs 文件夹中。

目前我正在使用:
macOS:卡特琳娜 10.15.6
java: 1.8.0_291
hadoop: 3.3.1

我花了整整两天时间来尝试。请帮忙!

提供对主机文件中所有工作节点的 ssh-key less 访问,甚至是本地主机以及 kakaoui-macbookpro.local。阅读 Creating a SSH Public Key on OSX.

中的说明

最后通过 ssh localhostssh [yourworkernode](也许 ssh kakaoui-macbookpro.local)测试无密码访问。

好的,我找到了我不明白的解决方案。我在启动过程中关闭了 wifi 连接,所有进程都启动了。虽然无法理解 wifi 连接如何干扰 ssh 本地主机。