hadoop集群之间依靠ssh来进行访问,所以将集群上的机器设置为ssh免密登录对后续的访问集群管理有很大的帮助。
1、进入用户根目录下,这里直接进入root用户根目录下。
[root@master ~]# cd ~
2、执行ssh命令,执行时一直回车即可,生成对应的密钥,进入.ssh目录下,查看,发现多了密钥id_rsa和公钥id_rsa.pub两个文件。
[root@master ~]# ssh-keygen -t rsa
[root@master ~]# cd .ssh/
[root@master .ssh]# ll
3、用密钥id_rsa.pub覆盖authorized_keys。
[root@master .ssh]# cp -R ./id_rsa.pub ./authorized_keys
4、分别在三台机器上执行上述操作,最后将三台机器上的authorized_keys文件融合成一个authorized_keys文件,并将融合后的文件复制到三台机器上的.ssh目录下。
[root@master .ssh]# scp -r ./authorized_keys slev1:/root/.ssh/
[root@master .ssh]# scp -r ./authorized_keys slev2:/root/.ssh/
5、分别给三台机器中的.ssh文件夹授权700,给authorized_keys授权600(这一步很重要)。
[root@master ~]# chmod -R 700 ./.ssh
[root@master ~]# chmod -R 600 ./.ssh/authorized_keys
6、以上步骤完成后,三台机器之间应该可以随意登录而不需要输入密码。
[root@master ~]# ssh slev1
[root@slev1 ~]# ssh slev2
[root@slev2 ~]# ssh master