您的位置:首页 > 运维架构

创建hadoop用户和实现SSH无密码登录

2013-09-26 11:10 423 查看
1. 创建hadoop用户

输入命令:Sudo addgroup hadoop (创建hadoop用户组)

Sudo adduser --ingroup hadoop hadoop1 (添加用户hadoop到hadoop组)

设置密码为:hadoop

给hadoop用户赋权限

sudo gedit /etc/sudoers

在root ALL=(ALL:ALL) ALL下添加

hadoop ALL=(ALL:ALL) ALL

2.实现SSH无密码登陆

(1) 首先设置namenode的ssh为无需密码的、自动登录。

切换到hadoop用户( 保证用户hadoop可以无需密码登录,因为我们后面安装的hadoop属主是hadoop用户。)

$ su hadoop

cd /home/hadoop

$ ssh-keygen -t rsa

然后一直按回车

完成后,在home跟目录下会产生隐藏文件夹.ssh

$ cd .ssh

之后ls 查看文件

cp id_rsa.pub authorized_keys

测试:

$ssh localhost

或者:

$ ssh master.hadoop

第一次ssh会有提示信息:

The authenticity of host ‘node1 (10.64.56.76)’ can’t be established.

RSA key fingerprint is 03:e0:30:cb:6e:13:a8:70:c9:7e:cf:ff:33:2a:67:30.

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

输入 yes 来继续。这会把该服务器添加到你的已知主机的列表中

发现链接成功,并且无需密码。

(2) 复制authorized_keys到slave1.hadoop 和slave2.hadoop 上

为了保证master.hadoop 可以无需密码自动登录到slave1.hadoop 和slave2.hadoop ,先在slave1.hadoop 和slave2.hadoop 上执行

$ su hadoop

cd /home/hadoop

$ ssh-keygen -t rsa

一路按回车.

然后回到master.hadoop ,复制authorized_keys到slave1.hadoop 和slave1.hadoop

[hadoop@hadoop .ssh]$ scp authorized_keys
slave1.hadoop :/home/hadoop/.ssh/

[hadoop@hadoop .ssh]$ scp authorized_keys
slave2.hadoop :/home/hadoop/.ssh/

这里会提示输入密码,输入hadoop账号密码就可以了。

改动 authorized_keys 文件的许可权限

[hadoop@hadoop .ssh]$chmod 644 authorized_keys

测试:ssh slave1.hadoop 或者sshslave2.hadoop (第一次需要输入yes)。

如果不须要输入密码则配置成功,如果还须要请检查上面的配置能不能正确。



上图说明,已经无需密码登录了slave1.hadoop



上图说明,已经无需密码登录了slave2.hadoop

说明 :上面两个图中,ssh登录后,均出现欢迎信息和帮助信息网址,这会浪费登录时间,如何关闭显示这些信息呢,请参见文章《


修改 Ubuntu SSH 登录后的欢迎信息

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: