Hadoop启动脚本报错“ ssh: connect to host slave1 port 22: Connection refused”

本文介绍如何在Hadoop启动脚本中修改SSH默认端口,以适应更改后的SSH端口号,确保集群正常运行。

因为修改了ssh默认端口号所以,觉得在hadoop启动脚本里ssh端口号是默认的22端口号。

修改脚本文件即可,经过层层查找找到在hadoop/sbin目录下slaves.sh 脚本下的
“ssh $HADOOP_SSH_OPTS $slave $"${@// /\\ }" \
   2>&1 | sed "s/^/$slave: /" &”
在ssh 后加上 -p 修改后的ssh端口号 即可

在虚拟机启动Hadoop时出现“slave1: ssh: connect to host slave1 port 22: No route to host”错误,通常是因为SSH连接失败。以下是一些可能的解决方法: 1. **检查网络连接**: - 确保所有虚拟机都在同一个网络中,并且可以通过IP地址互相访问。 - 使用`ping`命令测试网络连接: ```sh ping slave1 ``` 2. **检查防火墙设置**: - 确保防火墙没有阻止SSH连接。可以暂时关闭防火墙进行测试: ```sh sudo systemctl stop firewalld ``` - 如果关闭防火墙后问题解决,可以配置防火墙允许SSH连接: ```sh sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --reload ``` 3. **检查SSH服务**: - 确保SSH服务在目标机器上运行: ```sh sudo systemctl status sshd ``` - 如果SSH服务未运行,可以启动它: ```sh sudo systemctl start sshd ``` 4. **检查SSH配置**: - 确保`/etc/ssh/sshd_config`文件中的配置正确,特别是端口号是否设置为22: ```sh Port 22 ``` - 修改配置后,重启SSH服务: ```sh sudo systemctl restart sshd ``` 5. **检查路由表**: - 使用`route`或`ip route`命令检查路由表,确保有到目标主机的正确路由: ```sh ip route ``` 6. **检查主机名解析**: - 确保主机名`s lave1`在`/etc/hosts`文件中正确配置: ```sh 192.168.1.10 slave1 ``` 通过以上步骤,您应该能够解决“ssh: connect to host slave1 port 22: No route to host”错误。如果问题仍然存在,建议检查网络拓扑和硬件连接。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值