Spark集群SSH免密码验证登陆
机器准备
笔者有三台机器,左侧栏为ip,右侧为hostname,三台机器都有一个名为spark的用户。通过ping验证三台是可以通信的。
192.168.248.150 spark-master 192.168.248.153 ubuntu-worker 192.168.248.155 spark-worker1
根据机器信息加入到三台机器的/etc/hosts中。
//将虚拟机改为桥接模式,宿主机连入同一局域网即可实现Ubuntu在同一网段下
配置
我们需要设置spark-master 能够免密码验证登陆ubuntu-worker、spark-worker1两台机器。
-
安装ssh
sudo apt-get install openssh-server
- service ssh start
-
检查ssh服务开启状态
ps -s | grep ssh
-
生成秘钥
执行命令ssh-keygen -t rsa,然后一直按回车键即可。
-
复制spark-master结点的id_rsa.pub文件到另外两个结点:
sup -r id_rsa.pub spark@ubuntu-worker:~/.ssh/
-
到另外两个结点,将公钥加到用于认证的公钥文件中:
cat id_rsa.pub >> authorized_keys
-
修改两个worker的authorized_keys权限为600或者644、将.ssh文件权限改为700
chmod 700 .ssh
chmod 600 authorized_keys
-
验证:
登陆spark-master,在终端输入ssh ubuntu-worker,登陆成功则说明配置成功