六、三台主机免密登录和时钟同步

本文详细介绍了如何在Linux集群环境中实现三台主机间的免密登录,包括原理、步骤和公钥私钥的配置。同时,讲解了时钟同步的重要性,提供了两种同步方案:网络同步和通过指定主机同步,并给出了具体操作步骤。

目录

1、免密登录

1.1 为什么要免密登录

1.2 免密 SSH 登录的原理

1.3 实现步骤

2、时钟同步

2.1 为什么需要时间同步


1、免密登录

1.1 为什么要免密登录

 Linux集群节点众多, 所以一般在主节点启动从节点, 这个时候就需要程序自动在主节点登录到从节点中, 如果不能免密就每次都要输入密码, 非常麻烦。

1.2 免密 SSH 登录的原理

1. 需要先在 B节点 配置 A节点 的公钥

2. A节点 请求 B节点 要求登录

3. B节点 使用 A节点 的公钥, 加密一段随机文本

4. A节点 使用私钥解密, 并发回给 B节点

5. B节点 验证文本是否正确

1.3 实现步骤

第一步:三台机器生成公钥与私钥

在三台机器执行以下命令,生成公钥与私钥

ssh-keygen -t rsa

执行该命令之后,按下三个回车即可,然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥),默认保存在/root/.ssh目录。

第二步:拷贝公钥到同一台机器

三台机器将拷贝公钥到第一台机器

三台机器执行命令:

ssh-copy-id node1

在执行该命令之后,需要输入yes和node1的密码:

第三步:复制第一台机器的认证到其他机器

将第一台机器的公钥拷贝到其他机器上

在第一台机器上指行以下命令

scp /root/.ssh/authorized_keys node2:/root/.ssh

scp /root/.ssh/authorized_keys node3:/root/.ssh

执行命令时,需要输入yes和对方的密码

第三步:测试SSH免密登录

可以在任何一台主机上通过ssh 主机名命令去远程登录到该主机,输入exit退出登录

例如:在node1机器上,免密登录到node2机器上

ssh node1

exit

执行效果如下:

2、时钟同步

2.1 为什么需要时间同步

因为很多分布式系统是有状态的, 比如说存储一个数据, A节点 记录的时间是1, B节点 记录的时间是2, 就会出问题。

时钟同步方式

方式一:通过网络进行时钟同步

通过网络连接外网进行时钟同步,必须保证虚拟机连上外网

启动定时任务

crontab -e

随后在输入界面键入以下内容,每隔一分钟就去连接阿里云时间同步服务器,进行时钟同步

*/1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com;

方式二:通过某一台机器进行同步

在业务环境中,有时候为了安全,Linux集群的节点不允许连接外网,这时,我们可以采用第二种方式来进行时钟同步。

以192.168.88.161这台服务器的时间为准进行时钟同步

第一步:在node1虚拟机安装ntp并启动

安装ntp服务

yum -y install ntp

启动ntp服务

systemctl start  ntpd

设置ntpd的服务开机启动

#关闭chrony,Chrony是NTP的另一种实现

systemctl disable chrony

#设置ntp服务为开机启动

systemctl enable ntpd

第二步:编辑node1的/etc/ntp.conf文件

编辑node1机器的/etc/ntp.conf

vim /etc/ntp.conf

在文件中添加如下内容(授权192.168.88.0-192.168.88.255网段上的所有机器可以从这台机器上查询和同步时间)

restrict  192.168.88.0  mask  255.255.255.0  nomodify  notrap

注释一下四行内容:(集群在局域网中,不使用其他互联网上时间)

#server  0.centos.pool.ntp.org

#server  1.centos.pool.ntp.org

#server  2.centos.pool.ntp.org

#server  3.centos.pool.ntp.org

去掉以下内容的注释,如果没有这两行注释,那就自己添加上(当该节点丢失网络连接,依然可以采用本地时间作为时间服务器为集群中的其他节点提供时间同步)

server   127.127.1.0

fudge    127.127.1.0  stratum  10

配置以下内容,保证BIOS与系统时间同步

vim /etc/sysconfig/ntpd

添加一行内容  

SYNC_HWLOCK=yes    

第三步另外两台机器与第一台机器时间同步

另外两台机器与192.168.88.161进行时钟同步,在node2和node3机器上分别进行以下操作

crontab  -e

添加以下内容:(每隔一分钟与node1进行时钟同步)

*/1 * * * * /usr/sbin/ntpdate 192.168.88.161

【下一章】

七、三台虚拟机JDK环境安装

【往期回顾】

一、服务器准备
二、设置三台虚拟机的内存、MAC地址
三、使用CRT连接三台虚拟机
四、设置主机名和域名映射
五、关闭三台虚拟机的防火墙和Selinux

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

geek@z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值