读书人

hadoop运用随记3

发布时间: 2012-07-23 09:42:20 作者: rapoo

hadoop使用随记3

接《随记2》

由于随记2中提到的root用户启动是会产生错误的,因此我在集群中的每台机器都添加了一个hadoop用户,以下所讲的都是在hadoop用户下的操作

?

添加hadoop用户

ssh root用户登录集群中的每台机器,建立hadoop用户

root@localhost:~>useradd hadoop -d /home/hadoop(建立/home/hadoop目录为hadoop用户的主目录)

root@localhost:~> passwd hadoop

输入密码(两次)

?

一下步骤都是以hadoop登录各服务器

1、双向打通集群主节点(master)和各集群节点(slaves)的ssh免密码登录

(1)打通集群主节点(master server)的本机免密码ssh登录

hadoop@localhost:~>ssh-keygen -t rsa

询问保存路径时直接回车采用默认路径

提示要为生成的密钥输入passphrase的时,直接回车,将其设定为空密码

生成的密钥对id_rsa,id_rsa.pub,默认存储在/home/hadoop/.ssh目录下。

hadoop@localhost:~>cd .ssh

hadoop@localhost:~/.ssh>cat id_rsa.pub?>>?authorized_keys(将id_rsa.pub?内容复制到authorized_keys文件)

?

测试:

hadoop@localhost:~>ssh localhost

如果可以免密码登录,说明本机已经打通

(注:如果不能打通,还需要输入密码,在suse linux中可以尝试使用命令chmod 644 authorized_keys修改authorized_keys文件权限即可,在redhat中使用命令chmod 600 authorized_keys修改authorized_keys文件权限即可)

(2)、打通集群主节点和各集群节点的免密码ssh登录

将集群主节点(master Server)中产生的authorized_keys分别copy到各个datanode(集群节点)的/home/hadoop/.ssh目录(即hadoop用户目录/.ssh目录,如果没有则分别使用mkdir .ssh进行建立)下即可将集群主节点(master)对集群节点(slave)免密码ssh登录(集群主节点(master)可以免密码ssh登录各集群节点(slave),反之还不行)

?

(3)、在各集群节点上(slave上)采用步骤(1)的方式将各集群节点(slave)本机打通

(注:cat id_rsa.pub?>>?authorized_keys为追加方式,此时各集群节点中authorized_keys文件内容为集群主节点authorized_keys文件内容+本机id_rsa.pub?文件内容)

(4)、将各集群节点(slave)id_rsa.pub?文件内容一一追加到集群主机点(master)authorized_keys文件中去即可将集群主节点和各集群机点打通(ssh免密码登录)

如:先采用scp命令将集群各节点产生的id_rsa.pub?复制到集群主节点上,然后使用cat id_rsa.pub >> authorized_keys命令一一追加到集群主节点的authorized_keys文件中

此时进行测试是否可以双向登录免密码。集群主节点:ssh 集群节点1ip地址,各集群节点:ssh 集群主节点ip地址

(特别注意:如果不能打通,还需要输入密码,在suse linux中可以尝试使用命令chmod 644 authorized_keys修改authorized_keys文件权限即可,在redhat中使用命令chmod 600 authorized_keys修改authorized_keys文件权限即可)

?

读书人网 >开源软件

热点推荐