hadoop2.x分布式集群安装配置 ~第三步:ssh免密钥配置

###免密钥是为了解决hadoop集群各个节点通信的问题,即通信不在需要填写密码,ssh连接的安全性由密钥验证机制来完成

一、配置

  1. 注意的东西来了

    你配置的机器可能有多个用户,但你需要选一个来做hadoop的管理用户,而你接下来的操作将在hadoop的用户的根目录下即(当前用户是hadoop用户):~/ 目录下,其他的则在 /home/hadoop用户名/ 目录下  (将来ssh免密钥连接的是你hadoop用户)

    注意区分:用户根目录与系统根目录

  2. 开始配置(现在默认当前用户是hadoop的用户)

(1)跳到~/.ssh文件夹下: cd ~/.ssh

 ( 2 )生成公钥id_rsa.pub和密钥id_rsa : ssh-keygen -t rsa

( 3 ) 将id_rsa.pub的内容追加到authorized_keys文件中(公钥替换加到authorized_keys)cat id_rsa.pub > authorized_keys

 ( 4 )每一个节点都进行(1)(2)(3)操作

 ( 5 )最后将所有节点的authorized_keys内容汇合:

每个datanode节点都执行下面操作(authorized_keys1的名字要改

scp ~/.ssh/authorized_keys  [email protected]:~/.ssh/authorized_keys1


执行完后,在172.16.19.1的hadooptest的.ssh中将传来所有的authorized_keys,追加到本地的authorized_keys(每个传来的authorized_keys执行一次

cat authorized_keys1>> authorized_keys(这里是">>")

(6)将172.16.19.1的hadooptest的.ssh中的authorized_keys再分发给各个节点。

同样是scp命令,就不写了。

二、错误总结

1、hadoop运行需要连接其他节点出现要密码时,说明ssh免密钥没做好,要重做

2.注意authorized_keys的权限必须是600,否则还要密码


你可能感兴趣的:(hadoop2.x分布式集群安装配置 ~第三步:ssh免密钥配置)