搭建centos服务器集群
CentOS7集群搭建(虚拟机)
为什么集群需要配置免密
如果现在我们有3台服务器node1 node2 node3组成一个集群,若只有node1连接了外网,但需要操作三台服务器,我们就可以通过配置集群内免密登录来实现通过xshell连接node1,然后node1中ssh连接上node2 node3
配置
1.修改三台机器的hosts,配置主机映射关系
vim /etc/hosts
文件中输入以下内容:ip hostname
192.168.9.128 node1 node1
192.168.9.129 node2 node2
192.168.9.130 node3 node3
2.配置三台虚拟机免密登录
- 切换到家目录
cd ~
- 生成公钥与私钥
分别在三台机器执行以下命令,执行命令后直接三次回车。可以看到在家目录下面的.ssh目录中生成了两个文件,id_rsa(私钥)、id_rsa.pub(公钥)
ssh-keygen -t rsa
- 在node1配置本机的免密登录
将~/.ssh/id_rsa.pub
(公钥)的内容复制到~/ssh/authorized_keys
文件中
cat id_rsa.pub >> authorized_keys
- 在node1配置到其他机器的免密登录
将其他机器(node2/node3)的~/.ssh/id_rsa.pub
(公钥)的内容复制到node1的~/ssh/authorized_keys
文件中。
使用分发命令分别将其他两个id_rsa.pub给第一台机器 (目的是将其他两个的id_rsa.pub写入到第一台的authorized_keys)
命令:
第一台节点上操作 : rm -f id_rsa.pub
第二台节点上操作 : scp id_rsa.pub node1:~/.ssh/
第一台节点上操作 : cat id_rsa.pub >> authorized_keys
第一台节点上操作 : rm -f id_rsa.pub
第三台节点上操作 : scp id_rsa.pub node1:~/.ssh/
第一台节点上操作 : cat id_rsa.pub >> authorized_keys
第一台节点上操作 : rm -f id_rsa.pub
最后~/ssh/authorized_keys
文件内容格式如下:
- 复制node1机器的认证到其他机器上,在node1上执行以下命令
copy时需要输入yes和node2/3的密码
scp /root/.ssh/authorized_keys node2:/root/.ssh
scp /root/.ssh/authorized_keys node3:/root/.ssh
- 测试是否可以免密登录
在node1上测试ssh到node2,接着ssh到node1,接着ssh到node3,接着ssh到node2.
若每次ssh不用输入密码即成功。
ssh root@node2
exit
ssh root@node1
exit
ssh root@node3
exit
ssh root@node2
exit