从零开始搭建hadoop分布式集群环境:(四)配置ssh无密码登录

1. 首先看看系统是否安装了ssh,输入

ssh localhost

   

如图提示 ssh:connect to host localhost port 22:Connection refused,则是系统并未安装ssh,那么第一步是安装ssh.


安装完成后再尝试连接本地。输入

ssh localhost


第一次连接的时候会有提示,输入yes就OK,然后在输入密码。


如果安装ssh 的时候提示

下列软件包有未满足的依赖关系:
 openssh-server : 依赖: openssh-client (= 1:6.6p1-2ubuntu1)
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。

这是因为,openssh-server是依赖于openssh-clien的,那ubuntu不是自带了openssh-client吗?原由是自带的openssh-clien与所要安装的openssh-server所依赖的版本不同,这里所依赖的版本是1:6.6p1-2ubuntu1
所以要安装对应版本的openssh-clien,来覆盖掉ubuntu自带的

$ sudo apt-get install openssh-client=1:6.6p1-2ubuntu1
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
建议安装的软件包:
  libpam-ssh keychain monkeysphere
下列软件包将被【降级】:
  openssh-client
升级了 0 个软件包,新安装了 0 个软件包,降级了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
需要下载 566 kB 的软件包。
解压缩后会消耗掉 0 B 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu/ trusty/main openssh-client amd64 1:6.6p1-2ubuntu1 [566 kB]
下载 566 kB,耗时 2秒 (212 kB/s)        
dpkg:警告:downgrading openssh-client from 1:6.6p1-2ubuntu2 to 1:6.6p1-2ubuntu1
(正在读取数据库 ... 系统当前共安装有 200015 个文件和目录。)
Preparing to unpack .../openssh-client_1%3a6.6p1-2ubuntu1_amd64.deb ...
Unpacking openssh-client (1:6.6p1-2ubuntu1) over (1:6.6p1-2ubuntu2) ...
Processing triggers for man-db (2.6.7.1-1) ...
正在设置 openssh-client (1:6.6p1-2ubuntu1) ...
可以看到,提示了系统中openssh-client被降级,这样再安装openssh-server就可以成功了!

2:装上后先把防火墙关了,命令如下:


sudo ufw disable


3:由于hadoop有时候也需要跟主机通信,所以在跟主机也需要设置ssh无密码登录,否则后面会出问题。


跟主机设置ssh无密码登录的方法如下:


1):产生密钥


输入


ssh-keygen -t dsa -P ''-f ~/.ssh/id_dsa

出现如图所示即产生密钥成功,否则请检查命令行是否出错。命令行中的是两个单引号,不是双引号。


进入~/.ssh文件夹,输入ls查看文件夹所包含的文件



id_dsa就是本机的私钥,id_dsa.pub是其所对应的公钥。


复制id_dsa.pub为authorized_keys,命令如下


cat id_dsa.pub >>authorized_keys


2):测试连接


输入


ssh localhost



若不需要密码则表示设置成功。


若按上述步骤来,还是需要输入密码,则是authorized_keys的权限问题,输入一下命令择可以解决
 tangxinyu@master:~/.ssh$ chmod 600 authorized_keys


3:再把公钥复制到节点
如果slave结点的~/.ssh/authorized_keys这个文件不存在,可以直接将~/.ssh/id_dsa.pub文件复制过去并重命名为authorized_keys:


$ scp ~/.ssh/id_dsa.pub hadoop@122.205.135.212:~/.ssh/authorized_keys



若复制过去后后ssh节点提示
Agent admitted failure to sign using the key
则需要在主机输入以下命令:
ssh-add

这样便可以无密码ssh节点了。
我们可以分别测试一下。输入命令;
ssh node1
exit
ssh node2 
exit

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值