在使用Spark进行分布式的应用,每次启动主机上面的服务都需要输入从机上的密码,太费事了,试着做了一下SSH无密码的配置,系统是Ubuntu 12.10.
首先需要生成公钥和私钥对,终端中输入命令。
ssh-keygen -t rsa
之后一直回车默认即可,程序运行结果如下。
然后把.ssh文件下的id_dsa.pub文件用“cat id_dsa>>authorized_keys”命令将id_dsa.pub的内容复制到authorized_keys文件夹下,
cat id_rsa.pub >> authorized_keys
同时更改 authorized_keys文件的权限。
chmod 600 authorized_keys
修改SSH配置文件"/etc/ssh/sshd_config"的下列内容。
完成以上操作后可以用 ssh localhost命令测试本机配置是否成功。
接下来需要把所有的公钥文件authorized_keys 复制到Slave上面去,通过如下命令。
其中root是ssh连接的账号,随后紧接SlaveIP地址和文件存放目录。
完成之后在Master上SSH连接测试Slave。
如上图所示,表示不需要输入密码SSH到了Slave上面,其它Slave配置相同。