spark使用standalone模式部署时,从节点要与主节点之间进行通信。如果不配置免密登录,启动时会提示输入密码,很可能造成从节点没有成功启动;启动后当主从节点要互相访问时,依然需要密码,这时肯定失败,例如web查看时只看到一个主节点自身的worker。
节点互访存在于主从之间,从从之间不存在。
免密登录配置过程如下
查询是否安装了openssh-server,ii表示已安装
dpkg -l | grep openssh-server
注意:也可以使用 apt list --installed | grep openssh-server
若没安装,使用 apt install openssh-server 安装。
查看ssh是否启动
systemctl status ssh
如下所示,则表示启动
主机免密登录从机
为了能够无密码登录本地主机,需要生成SSH密钥并配置免密码登录。
生成密钥对
ssh-keygen -t rsa -P "" //-t 指定生成RSA类型的密钥以及管理密钥
一直回车,会在/root/.ssh/文件夹下生成id_rsa(私有密钥)、id_rsa.pub(公有密钥)
进入目录~/.ssh,即可查看到生成的公钥、私钥文件。
将id_rsa.pub追加到authorized_keys
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
修改/etc/ssh/sshd_config文件,让本机允许远程连接。具体如下
RSAAuthentication yes (若无则添加)
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
PermitRootLogin yes (配置服务器远程访问时已经设置)
重启ssh
service ssh restart
修改权限
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
将公钥复制到从机u22server4spark2
scp ~/.ssh/id_rsa.pub root@u22server4spark2:~/.ssh/id_rsa.pub_sl
scp ~/.ssh/id_rsa.pub root@u22server4spark3:~/.ssh/id_rsa.pub_sl
登录u22server4spark2,将所传公钥添加至authorized_keys
cat id_rsa.pub_sl >> authorized_keys
验证从主机u22server4spark登录从机u22server4spark2,免密登录。
ssh root@u22server4spark2
如下所示,顺利登录,无需密码。
将公钥复制到从机u22server4spark3,按照如上处理,即可实现主机免密登录登录从机u22server4spark3。
从机免密登录主机
按照主机免密登录从机的操作步骤,分别在两个从机上操作即可。