当前位置:   article > 正文

《Linux运维实战:Centos7.X实现双机互信并数据目录同步(方法一)》_centos7配置互信

centos7配置互信

一、背景信息

需求如下:两台服务器,需要将其中一台服务器的某个目录下的数据定时同步到另外一台服务器的某个目录上,两台主机上的目录下的数据保持一致。

实现步骤

1、两台服务器之间要实现双机互信,配置免密登录
2、使用rsync工具实现两台主机上某个目录下的数据保持一致


二、方法一

2.1、配置双机互信

1、两台主机上分别修改hosts文件

vim /etc/hosts
192.168.1.223 node1
192.168.1.224 node2
  • 1
  • 2
  • 3

2、秘钥生成和分发

#命令输入后,按三次回车即可
ssh-keygen -t rsa
  • 1
  • 2

3、分发秘钥

ssh-copy-id -i /root/.ssh/id_rsa.pub node2
  • 1

4、验证结果

ssh root@node2
  • 1

2.2、数据定时同步

1、在备份主机上创建备份目录

mkdir -p /data/mongo-back
mkdir -p /data/mysql-back
  • 1
  • 2

2、配置定时任务

30 04 * * *  /usr/bin/rsync -arvPz --delete -e "ssh -p 22"  /data/pkgs/yibot_qfqz_tools_new_v1.0/basic-tools/mongo/data/backup/ root@192.168.1.224:/data/mongo-back
30 04 * * *  /usr/bin/rsync -arvPz --delete -e "ssh -p 22"  /data/pkgs/yibot_qfqz_tools_new_v1.0/basic-tools/mysql/tools/data/backup/ root@192.168.1.224:/data/mysql-back
  • 1
  • 2

三、方法二

1、使用同步脚本

#!/usr/bin/expect
########################################################################
if { $argc!=6 }  {
    send_user "Usage: rsync.exp localfile remoteip remoteport remoteuser remotepwd remotedir\n\n"
    exit 1
}
set localfile  [lindex $argv 0]     
set remoteip   [lindex $argv 1]
set remoteport [lindex $argv 2]
set remoteuser [lindex $argv 3]
set remotepwd  [lindex $argv 4]
set remotedir  [lindex $argv 5]
set timeout 3600
spawn /usr/bin/rsync -arvPz --delete -e "ssh -l$remoteuser -p$remoteport" $localfile $remoteip:$remotedir
expect {
	"Password:" {
        send "$remotepwd\r"
        exp_continue
    }
    "password:" {
        send "$remotepwd\r"
        exp_continue
    }
    "yes/no)?" {
        send "yes\r"
        exp_continue
    }
    timeout {
        close
        break
    }
    eof {
        exit 0
    }
}
exit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

2、配置定时同步任务

40 03 * * * /data/mysql/rsync.sh /data/mysql/backup/ 192.168.1.11 22 root 123456 /data/mongodump/
  • 1

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:Linux运维实战总结

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/906215?site
推荐阅读
相关标签
  

闽ICP备14008679号