原理:
机器1免密码登陆机器2: 机器1的私钥区与机器2的公钥区匹配
有三台机器:
10.0.83.201 CDH
10.0.83.202 CDH1
10.0.83.173 CDH2
第一步:三台机器都安装ssh: sudo apt-get install openssh-server
第二步:三台机器上都执行:ssh localhost 然后 exit 否则~/目录下(ls -a)不会显示.ssh路径
第三步:三台机器上都执行:ssh-keygen -t rsa
第四步:在CDH上的~/.ssh内执行: cp id_rsa.pub authorized_keys
第五步:在CDH1上的~/ssh内执行:scp id_rsa.pub root@10.0.83.201:/home/hadoop/.ssh/id_rsa1.pub
第六步:在CDH2上的~/ssh内执行:scp id_rsa.pub root@10.0.83.201:/home/hadoop/.ssh/id_rsa2.pub
第七步:在CDH上~/.ssh内执行:
cat id_rsa1.pub >> ~/.ssh/authorized_keys
cat id_rsa2.pub >> ~/.ssh/authorized_keys
scp authorized_keys root@10.0.83.202:/home/hadoop/.ssh/authorized_keys
scp authorized_keys root@10.0.83.173:/home/hadoop/.ssh/authorized_keys
第八步:三台机器上修改/etc/hosts 和 /etc/hostname 然后reboot
sudo vim /etc/hosts
127.0.0.1 localhost
#127.0.1.1 ubuntu-14.04-Server ubuntu-14 #一定要注释掉
10.0.83.201 CDH.aboutyun.com CDH
10.0.83.202 CDH1.aboutyun.com CDH1
10.0.83.173 CDH2.aboutyun.com CDH2
sudo vim /etc/hostname
CDH.aboutyun.com
第九步:验证免密码
在CDH上执行:ssh CDH1 输入yes 然后exit。 后在执行ssh CDH1。如无需密码直接登录到CDH1 即为成功。同理 ssh CHD2.
在CDH1上验证免密码:CDH,CDH2
在CDH2上验证免密码:CDH,CDH1