码迷,mamicode.com
首页 > 其他好文 > 详细

Hadoop配置Master无密码登录所有Salve

时间:2016-03-17 01:54:17      阅读:886      评论:0      收藏:0      [点我收藏+]

标签:

配置Master无密码登录所有Salve

1、所有节点创建hadoop用户,并设置密码

以root账号登录:

useradd hadoop

passwd hadoop

2、设置Master节点用hadoop账号免密码登录本机

以hadoop账号登录,执行以下命令:

ssh-keygen t rsa P ‘‘

运行后询问其保存路径时直接回车采用默认路径。生成的密钥对:id_rsa(私钥)和id_rsa.pub(公钥),默认存储在"/home/hadoop/.ssh"目录下。

[hadoop@NameNode1 ~]$ ls -a 

. .. .bash_history .bash_logout .bash_profile .bashrc .gnome2 .mozilla .ssh .viminfo 

[hadoop@NameNode1 ~]$ cd .ssh/ 

[hadoop@NameNode1 .ssh]$ ls 

authorized_keys id_rsa id_rsa.pub known_hosts 

3、把id_rsa.pub(公钥)追加到授权的key里面去

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

或是进入.sh目录下,直接cp id_rsa.pub authorized_keys

 

4、用root用户登录修改SSH配置文件"/etc/ssh/sshd_config"的下列内容

检查下面几行前面"#"注释是否取消掉:

RSAAuthentication yes # 启用 RSA 认证

PubkeyAuthentication yes # 启用公钥私钥配对认证方式

AuthorizedKeysFile .ssh/authorized_keys # 公钥文件路径

 

修改完后,重启ssh服务生效:

service sshd restart

 

5、测试hadoop用户是否能够不用密码直接登录

root先切换到hadoop账号,su - hadooop

然后hadoop用户执行 ssh localhost

..yes

如果不用输入密码,则设置成功。

 

6、使用ssh-copy-id命令将公钥传送到远程主机上

[hadoop@NameNode1 .ssh]$ ssh hadoop@localhost

Last login: Wed Mar 16 23:00:05 2016 from localhost

[hadoop@NameNode1 ~]$ ssh-copy-id hadoop@datanode1

The authenticity of host ‘datanode1 (192.168.1.164)‘ can‘t be established.

RSA key fingerprint is 4c:d0:2c:41:ca:91:e6:d4:e6:cc:da:df:4b:24:4e:6e.

Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added ‘datanode1,192.168.1.164‘ (RSA) to the list of known hosts.

hadoop@datanode1‘s password:

Now try logging into the machine, with "ssh ‘hadoop@datanode1‘", and check in:

.ssh/authorized_keys

to make sure we haven‘t added extra keys that you weren‘t expecting.

 

[hadoop@NameNode1 ~]$ ssh-copy-id hadoop@datanode2

[hadoop@NameNode1 ~]$ ssh-copy-id hadoop@datanode3

 

7、验证

在Master主机上,执行以下命令,可以不用输入密码而直接连接到其它服务器

[hadoop@NameNode1]ssh hadoop@datanode1

[hadoop@NameNode1]ssh hadoop@datanode2

[hadoop@NameNode1]ssh hadoop@datanode3

 

8、修改sudoers配置文件

[root@NameNode~]# vi /etc/sudoers --root账号修改,增加以下两项

hadoop ALL=(ALL) ALL

hadoop ALL=(ALL) NOPASSWD: ALL

参考:http://stackoverflow.com/questions/28171755/cloudera-installation-failed-to-detect-root-privileges-on-centos

Hadoop配置Master无密码登录所有Salve

标签:

原文地址:http://www.cnblogs.com/rusking/p/5285867.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!