你好,游客 登录 注册 搜索
背景:
阅读新闻

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置

[日期:2013-09-26] 来源:Linux社区  作者:xjavasunjava [字体: ]

2)配置SSH无密码访问


Hadoop启动以后,Namenode是通过SSH(Secure Shell)来启动和停止各个datanode上的各种守护进程的,这就须要在节点之间执行指令的时候是不须要输入密码的形式,故我们须要配置SSH运用无密码公钥认证的形式。
以本文中的三台机器为例,现在node1是主节点,他须要连接node2和node3。须要确定每台机器上都安装了ssh,并且datanode机器上sshd服务已经启动。

( 说明:hadoop@hadoop~]$ssh-keygen  -t  rsa
这个命令将为hadoop上的用户hadoop生成其密钥对,询问其保存路径时直接回车采用默认路径,当提示要为生成的密钥输入passphrase的时候,直接回车,也就是将其设定为空密码。生成的密钥对id_rsa,id_rsa.pub,默认存储在/home/hadoop/.ssh目录下然后将id_rsa.pub的内容复制到每个机器(也包括本机)的/home/dbrg/.ssh/authorized_keys文件中,如果机器上已经有authorized_keys这个文件了,就在文件末尾加上id_rsa.pub中的内容,如果没有authorized_keys这个文件,直接复制过去就行.)

3)首先设置namenode的ssh为无需密码自动登陆


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

su hadoop
cd /home/hadoop
ssh-keygen -t rsa

最后一个命令输入完成以后一直按回车
完成后会在/home/hadoop/目录下产生完全隐藏的文件夹.ssh

 

进入.ssh文件夹,然后将id_rsa.pub复制到authorized_keys文件,命令如下

cd .ssh # 进入.ssh目录
cp id_rsa.pub authorized_keys #生成authorized_keys文件

ssh localhost  #测试无密码登陆,第一可能需要密码
ssh node1 #同上一个命令一样

node1无密码登陆的效果:

 

4)配置node1无密码访问node2和node3

首先以node2为例,node3参照node2的方法

在node2中执行以下命令:

su hadoop
cd /home/hadoop
ssh-keygen -t rsa #生成公钥和私钥,一路回车

在node1中进入/home/hadoop/.ssh目录中,复制authorized_keys到node2的.ssh文件夹中

 

执行以下命令

scp authorized_keys hadoop@node2:/home/hadoop/.ssh #复制authorized_keys到node2的.ssh目录中去

 

修改已经传输到node2的authorized_keys的许可权限,需要root权限

chmod 644 authorized_keys

ssh node2 #测试无密码访问node2

 

node3同上面的执行步骤

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款