脚本自动配置hadoop集群的ssh无密码登录
脚本自动配置hadoop集群的ssh无密码登录
aibati2008 发表于2年前
脚本自动配置hadoop集群的ssh无密码登录
  • 发表于 2年前
  • 阅读 154
  • 收藏 2
  • 点赞 1
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

最近公司新搭建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的用户必须一致,不然会出问题。

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 11
博文 79
码字总数 60745
×
aibati2008
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: