部署hadoop集群需要linux免密钥登录,假设最低集群Master一台,Slave三台,分别为Slave1,Slave2,Slave3
1、每台机器都执行命令生成密钥
ssh-keygen -t rsa 一路回车即可
成功后会生成.ssh文件夹
2、在Master上创建authorized_keys文件,将所有的id_rsa.pub考过来,可通过指令完成
cat /home/hadoop/.ssh/id_rsa.pub >> authorized_keys
ssh Slave1 cat /home/hadoop/.ssh/id_rsa.pub >> authorized_keys
ssh Slave2 cat /home/hadoop/.ssh/id_rsa.pub >> authorized_keys
ssh Slave3 cat /home/hadoop/.ssh/id_rsa.pub >> authorized_keys
生成成功后,.ssh文件夹有4个文件
authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥
id_rsa : 生成的私钥文件
id_rsa.pub : 生成的公钥文件
know_hosts : 已知的主机公钥清单
3、将authorized_keys和know_hosts拷贝到各个Slave机器
scp authorized_keys hadoop@Slave1:/home/hadoop/.ssh/
scp authorized_keys hadoop@Slave2:/home/hadoop/.ssh/
scp authorized_keys hadoop@Slave3:/home/hadoop/.ssh/
scp known_hosts hadoop@Slave1:/home/hadoop/.ssh/
scp known_hosts hadoop@Slave2:/home/hadoop/.ssh/
scp known_hosts hadoop@Slave3:/home/hadoop/.ssh/
4、如果希望ssh公钥生效需满足至少下面两个条件:
1) .ssh目录的权限必须是700
2) .ssh/authorized_keys文件权限必须是600
修改权限
5、验证是否成功 ssh Slave1 登录