最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

hadoop下ssh的配置

来源:动视网 责编:小采 时间:2020-11-09 16:21:31
文档

hadoop下ssh的配置

hadoop下ssh的配置:centos系统自带ssh,版本为openssh4.3 免密码ssh设置(合适的权限很重要) 登入hadoop账户,建立ssh文件夹 mkdir .ssh 现在确认能否不输入口令就用ssh登录本机: $ ssh namenode 如果不输入口令就无法用ssh登陆namenode,执行下面的命令: $ s
推荐度:
导读hadoop下ssh的配置:centos系统自带ssh,版本为openssh4.3 免密码ssh设置(合适的权限很重要) 登入hadoop账户,建立ssh文件夹 mkdir .ssh 现在确认能否不输入口令就用ssh登录本机: $ ssh namenode 如果不输入口令就无法用ssh登陆namenode,执行下面的命令: $ s


centos系统自带ssh,版本为openssh4.3 免密码ssh设置(合适的权限很重要) 登入hadoop账户,建立ssh文件夹 mkdir .ssh 现在确认能否不输入口令就用ssh登录本机: $ ssh namenode 如果不输入口令就无法用ssh登陆namenode,执行下面的命令: $ ssh-keygen -t rsa

centos系统自带ssh,版本为openssh4.3

免密码ssh设置(合适的权限很重要)

登入hadoop账户,建立ssh文件夹 mkdir .ssh

现在确认能否不输入口令就用ssh登录本机:

$ ssh namenode

如果不输入口令就无法用ssh登陆namenode,执行下面的命令:

$ ssh-keygen -t rsa –f ~/.ssh/id_rsa

回车设置密钥,可以设置一个密钥,也可以设置为空密钥。但是安全起见,设置密钥为hadoop,下面利用ssh-agent来设置免密钥登陆集群中其他机器。

私钥放在由-f选项指定的文件之中,例如~/.ssh/id_rsa。存放公钥的文件名称与私钥类似,但是以’.pub’为后缀,本例为~/.ssh/id_rsa.pub

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

将ssh密钥存放在namenode机器的~/.ssh/authorized_keys文件中。

再用scp命令将authorized_keys和id_rsa.pub分发到其它机器的相同文件夹下,例如,将authorized_keys文件分发给datanode1机器的.ssh文件夹的命令为:

$scp ~/.ssh/id_dsa.pub hadoop@datanode1:/home/hadoop/.ssh

到datanode1机器上 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

理论上要将公钥发放给各机器然后再各个机器上生成authorized_keys文件,实际上直接分发authorized_keys文件也可以

然后赋予文件权限,赋予各机器的.ssh文件夹权限为711,authorized_keys的权限为644。过高的权限不能通过ssh-add命令,过低的权限无法实现免密码登录。

添加ssh-agent:

$eval `ssh-agent -s` 注意这里是反引号

输入命令

$ssh-add,输入id_rsa私钥的密码。

为了使ssh-agent自动运行,将它写到profile中,在/etc/profile.d下新建ssh-agent.sh文件:

$sudo gedit /etc/profile.d/ssh-agent.sh

将以下语句加入

#!/bin/sh

if [ -f ~/.agent.env ]; then

. ~/.agent.env >/dev/null

if ! kill -0 $SSH_AGENT_PID >/dev/null 2>&1; then

echo "Stale agent file found. Spawning new agent..."

eval `ssh-agent |tee ~/.agent.env`

ssh-add

fi

else

echo "Starting ssh-agent..."

eval `ssh-agent |tee ~/.agent.env`

ssh-add

fi

这样就不会生成太多的ssh-agent程序,而且支持GUI环境。打开终端:

Stale agent file found. Spawning new agent...

Agent pid 2543

Identity added: /root/.ssh/id_rsa (/root/.ssh/id_rsa)

添加了新的密钥。

这一切都操作完了后

$ ssh datanode1

实验是否已经可以免密码登录datanode1

对于jobtracker,由于也作为master,所以可以利用相同的密钥也存放在authorized_keys的文件中,而将公钥分发给各机器后,添加到authorized_keys中,分发的机器名存放在know_hosts文件下,这样也可以通过jobtracker机器免密钥登录集群的其他机器。

文档

hadoop下ssh的配置

hadoop下ssh的配置:centos系统自带ssh,版本为openssh4.3 免密码ssh设置(合适的权限很重要) 登入hadoop账户,建立ssh文件夹 mkdir .ssh 现在确认能否不输入口令就用ssh登录本机: $ ssh namenode 如果不输入口令就无法用ssh登陆namenode,执行下面的命令: $ s
推荐度:
标签: 系统 自带 的配置
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top