配置 Spark 集群时需要使用 SSH 免密登录,以方便以后的操作。
示例中,主机名为 master / slave1 / slave2,用户名均为 spark(或是其它一致的用户名)。
修改 hosts 文件(所有主机)
sudo vi /etc/hosts
然后在 hosts 文件中的 localhost 行下面加入:
1 | master_ip master |
(有无同步方法?)
SSH
安装 SSH
在所有主机上sudo apt-get install openssh-serverservice ssh start
生成 RSA 公钥并分发
在 master 上ssh-keygen -t rsa
接着按两次回车scp ~/.ssh/id_rsa.pub spark@slave1_ip:~/.ssh/id_rsa.pub.slave1scp ~/.ssh/id_rsa.pub spark@slave2_ip:~/.ssh/id_rsa.pub.slave2
认证公钥并修改权限级别
在 slave 上cat ~/.ssh/id_rsa.pub* >> authorized_keyssudo chmod 700 ~/.sshsudo chmod 600 ~/.ssh/authorized_keys
验证能否免密登录
在 master 上ssh slave1
如果不需要输入密码则完成免密登录。