深入MySQL--MHA搭建的ssh互信打通脚本

本帖最后由 lee 于 2020-9-27 21:51 编辑

在MySQL搭建MHA高可用架构的时候,需要打通master、slave、以及mha manager之间的ssh互信,通常情况下,运维人员需要手动打通ssh互信,在自动化构建的过程中很不方便。如果可以使用自动化的脚本打通服务器之间的ssh互信,对自动化运维会有很大的帮助。

    常见的方法是通过Expect来和服务器进行交互,expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预。spawn的方法是expect环境里面的内部命令,通常用来打通Linux环境之间的互信。

这里分享一个这两天改过的脚本,来打通服务器之间的ssh互信关系,脚本的主要步骤分为如下几步:

1、使用跳板机在源端,利用ssh-keygen命令生成源端服务器的公钥和私钥

2、使用跳板机在目标端,利用ssh-keygen命令生成目标端服务器的公钥和私钥

3、使用跳板机将源端机器的公钥通过scp命令拷贝到目标端机器的/tmp文件夹下

4、使用跳板机在目标端的机器上将/tmp文件夹下源端的公钥推送到目标端的authorized_keys文件中,并修改.ssh文件夹属性为700,,修改authorized_keys文件的属性为600

按照上面的步骤,我们可以单向打通源端到目标端的ssh,借助shell脚本进行源端和目标端交换,就可以实现ssh的打通。
真实的shell脚本如下:
游客,如果您要查看本帖隐藏内容请回复
标签: 暂无标签
lee

写了 75 篇文章,拥有财富 322,被 8 人关注

转播转播 分享分享 分享聚知识
回复

使用道具

成为第一个吐槽的人

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈