脚本自动配置hadoop集群的ssh无密码登录

本文介绍了一个用于简化Hadoop集群中SSH免密登录配置的脚本。通过这个脚本,可以在Hadoop用户下快速实现节点间的无密码登录,大大提高了集群管理效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近公司新搭建hadoop集群,配置了几台机器之后觉得很麻烦,尤其是ssh无密码登录,每个节点都要配置一遍,于是写了个脚本自动配置,以后集群要添加节点也很方便。

网上很多文章都是在root直接配置的,因为我是用单独的hadoop用户,所以是在该用户下执行操作。

#!/bin/bash

export SLAVES="slave1 slave2"
export USER='hadoop'

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa                   #生成本机密钥对,一般在登录用户的.ssh目录下

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys            #把公钥追加到授权的key里面去,此时已经可以ssh本机了,可用ssh localhost测试

chmod 600 ~/.ssh/authorized_keys                           #修改文件"authorized_keys"权限,不安全的设置安全设置,会让你不能使用RSA功能
                                                           #在验证时,扔提示你输入密码,经常都是这里出问题
echo $SLAVES | tr " " "\n"| while read LINE                
do
	ssh-copy-id -i ~/.ssh/id_rsa.pub $USER@$LINE       # 把公钥分发到集群其他节点,$SLAVES为节点主机名列表
	echo "Copying keygen  to $LINE"
done

执行之后,无密码登录设置成功。已经可以从主节点无密码登录到其他节点了。

注意1:以上仅配置了主节点无密码登录到其他节点,如果要配置其他节点到主节点的ssh,可自行修改在相应节点执行即可。

注意2:各节点配置ssh的用户必须一致,不然会出问题。

转载于:https://my.oschina.net/aibati2008/blog/620246

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值