场景


在上面的基础上。

Hadoop中的NameNode和DataNode数据通信采用了SSH协议,需要配置master对各

slave节点的免秘钥登录。

注:

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

在slave1和slave2中执行命令

mkdir /root/.ssh

然后再master中执行如下操作

1、采用dsa加密生成密钥,也可以采用rsa加密

ssh-keygen -t dsa

然后一路回车。

CentOS7中多台服务器配置SSH免密钥登录_主机名

2、上面将密钥生成在默认路径/root/.ssh下,然后将其内容输出到/root/.ssh/authorized_keys中

cat /root/.ssh/id_dsa.pub >> /root/.ssh/authorized_keys

然后将公钥复制到其他两个需要免密钥登录的slave1和slave2中

scp /root/.ssh/authorized_keys  slave1:/root/.ssh/
scp /root/.ssh/authorized_keys  slave2:/root/.ssh/

然后再master上ssh登录slave1进行测试

ssh slave1

CentOS7中多台服务器配置SSH免密钥登录_centos_02

可以看到登录成功,此时的ip已经是slave1的ip

然后ssh退出登录

logout slave1

CentOS7中多台服务器配置SSH免密钥登录_centos_03