部署hadoop集群,都需要配置SSH免密码登陆,为什么要设置SSH免密码登录,其原因是我们在开启hadoop的时候需要多次输入yes和root密码,这是我们所不能忍受的,我们迫切需要实现免登录的功能。 这里以三个节点node0, node1,node2为例配置
- 首先每个节点的/etc/hosts文件都要配置好,内容如下: 10.10.75.100 node0 10.10.75.101 node1 10.10.75.102 node2
2.在每个节点都执行: ssh-keygen -t rsa 生成公钥 注意:如果以前有生成过可以先删除,删除命令是 rm -rf /root/.ssh/
3.将node1,node2生成的公钥改名,拷贝到node0节点上
#节点node1 cp /root/.ssh/id_rsa.pub /root/.ssh/key_node1 scp /root/.ssh/key_node1 root@node0:/root/.ssh/
#节点node2 cp /root/.ssh/id_rsa.pub /root/.ssh/key_node2 scp /root/.ssh/key_node2 root@node0:/root/.ssh/
4.node0节点生成公钥也改名 cp /root/.ssh/id_rsa.pub /root/.ssh/key_node0
5.在节点node0上,把公钥导入到认证文件,执行如下命令: cd /root/.ssh/ cat key_node0 >> authorized_keys cat key_node1 >> authorized_keys cat key_node2 >> authorized_keys cat key_node3 >> authorized_keys chmod 700 /root/.ssh chmod 600 authorized_keys
6.把这个authorized_kesy文件分发到其它节点 scp authorized_keys root@node1:/root/.ssh scp authorized_keys root@node2:/root/.ssh
- 测试SSH免密码登录