当前位置:首页 > 系统运维 > CentOS7 rsync+inotify异机实时备份部署方案

CentOS7 rsync+inotify异机实时备份部署方案

Q师傅2022年07月11日系统运维918

一、 背景 需求

为了实现重要数据的异地备份,防止服务器故障导致数据丢失 而 影响业务连续运行 。 要求 实时检测 A服务器 xx目录 变化情况 ,一旦检测到目录发生 变化 立即触发向 B服务器 xx目录传输文件的动作 B服务器上保留最近 9天的备份文件 以达到 历史 数据异地 备份且不会无限撑满文件系统 。

二、 主机 环境

服务器IP 10.19.222.147 主机名 hosta 需要备份的目录为 /opt/opsmgr/backup

服务器IP 10.19.222.135 主机名 hostb用于接收备份文件的目录为 /home/backup

三、 方案 思路

hosta访问 hostb配置 ssh免密互信 。

hosta和 hostb安 装 rsync和 inotify-tools,实现实时检测目录并传输文件 。

hostb配置定时任务删除 9天以前的备份文件 防止磁盘被 无效数据 撑满 。


四、 实施方案

4.1互信配置登陆

10.19.222.147 hosta操作

[root@hosta ~]# ssh-keygen -t rsa //生成秘钥

Snipaste_2022-07-11_19-13-27.png

[root@hosta ~]# vi /etc/ssh/sshd_config //禁用 root ssh密码登录 ,但运行秘钥登录

PermitRootLogin without-password 先写

PermitRootLogin no 再写

Snipaste_2022-07-11_19-14-36.png

[root@hosta ~]# systemctl restart sshd //重启 sshd服务生效 上述 配置

[root@hosta ~]# cat /root/.ssh/id_rsa.pub //把 输出的内容 写 到 hostb的/root/.ssh/authorized_keys文件

Snipaste_2022-07-11_19-15-58.png

登陆10.19.222.135 hostb操作

[root@hostb ~]# mkdir /root/.ssh

[root@hostb ~]# chmod 700 /root/.ssh

[root@hostb .ssh]# vi /root/.ssh/authorized_keys //写入 hosta的 /root/.ssh/id_rsa.pub内容

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCf5ZLamqa6Of2NSqhjjlP2VClfWadfkHOINYOm4nOnEQ5k6PTZgMX5Gmtg1C8VUJxkFZcj+AG+oHqOzWxntIqqqKjmQodOU9NXa89GmcHSUSFnKO0pt8JafwPrPaL8bPSV0knFRV+wavxhpIG5cF//8Yvzu7CODIxP9zQgoM6fbX7V1PlHE5CTZRtv+40gyMlyz1f0NkxntZ7XZJQldx0CI5ieu0UuyqYgENQsOnlA7WfgMazOLvoVGwNJ6MPu5UeUNGPlvOgAoaY3HvfBd1Jt5FMJGToVqJjfIQqyldN2a2QquGgXrIIDai1gQJM/WPeTPs0YL5BuWa/k+CfJlG+c+ejR7halxhB1OQR2VBAdSld0wx47n7YUX4Bgztg7e6Dbb8i5xl8u49ABYJWrOC0phO5CRygtjANY7mXAqNpzV31Dm/uYbpALjeBm4WNO26G9VF4Wf5GUdDOjIhzB2GtrzMcB0OV7yNABT76j75KYgcikF+8Pg6BucXz21cv9z8= root@hosta

结果展示

Snipaste_2022-07-11_19-17-32.png

[root@hostb ~]# chmod 600 /root/.ssh/authorized_keys

[root@hostb ~]# vi /etc/ssh/sshd_config

PermitRootLogin without-password

PermitRootLogin no

Snipaste_2022-07-11_19-18-25.png

systemctl restart sshd 重启 sshd服务生效 上述 配置

登陆10.19.222.147操作

测试hosta 免密成功 登陆 hostb 22为 hostb主机 sshd服务监听端口 。

ssh -p 22 root@10.19.222.135

结果展示

Snipaste_2022-07-11_19-19-32.png

服务器A root互信 免密 登陆服务器 B配置完成 。

4.2自动同步配置

 软件安装

https://developer.aliyun.com/packageSearch

上传2个 rpm到 /tmp目录

登陆hosta hostb操作 安装 rsync和 inotify-tools

rpm -ivh /tmp/rsync-3.1.2-4.el7.x86_64.rpm

rpm -ivh /tmp/inotify-tools-3.14-9.el7.x86_64.rpm

Snipaste_2022-07-11_19-22-17.png

创建脚本

hosta上的 /opt/opsmgr/backup/为需要备份的目录

hostb上的 /home/backup/为存放备份文件的目录

vi /home/hik/remote_file_backup.sh 写入以下内容

#!/bin/bash

INOTIFY_CMD="/bin/inotifywait -mrq -e modify,create,attrib,move,delete /opt/opsmgr/backup/"

$INOTIFY_CMD | while read files

do

/bin/rsync -az /opt/opsmgr/backup/ root@10.19.222.135:/home/backup/

done

结果展示

Snipaste_2022-07-11_19-24-15.png

设置开机自动运行备份脚本

[root@hosta hik]# echo "sh /home/hik/remote_file_backup.sh &" >> /etc/rc.d/rc.local

[root@hosta hik]# chmod +x /etc/rc.d/rc.local

结果展示

Snipaste_2022-07-11_19-24-59.png

手动运行 脚本

[root@hosta hik]# sh /home/hik/remote_file_backup.sh &

查看结果

[root@hosta hik]# ps -ef|grep inotify |grep -v grep

[root@hosta hik]# ps -ef|grep remote_file_backup.sh |grep -v grep

Snipaste_2022-07-11_19-25-40.png

验证 同步效果

在hosta操作

增加一个文件 audit.log到 /opt/opsmgr/backup

[root@hosta backup]# cp /var/log/audit/audit.log ./

Snipaste_2022-07-11_19-26-55.png

在hostb操作 验证效果

Snipaste_2022-07-11_19-27-54.png

4.3备份数据 自动清理

登陆hostb 10.19.222.135操作

需要保留9天 /home/backup/backup的 数据 ,通过定时任务 每天凌晨来执行删除 9天前的文件 来实现 。

crontab -e 写入下面的内容

0 0 * * * find /home/backup/backup -type f -mtime +8 -exec rm {} \;

验证内容是否有误 crontab -l(小写 L)

Snipaste_2022-07-11_19-29-05.png

扫描二维码推送至手机访问。

版权声明:本文由 Greatqiu.cn Q师傅知识库 发布,如需转载请注明出处。

本文链接:https://www.greatqiu.cn/?id=115

分享给朋友:

相关文章

windows系统搭建内网NTP 服务器提供给其他设备进行校时

windows系统搭建内网NTP 服务器提供给其他设备进行校时

1.运行Regedit,打开注册表编辑器2.找到注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\,在右侧窗口中将AnnounceFlags的值修改为53. 继续找到注册表项HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeP...

现代企业为什么需要NTP校时服务器?

1、局域网内往往没有准确的时间源,以前往往选择设备某一接入服务器的时间作为系统时间通过SDK下发给设备。但服务器内置晶振能力有限,守时能力不足,产生偏差也没有再校准能力。2、对任何系统来说,时间准确都是基本需求。时间被广泛应用于系统中,摄像头有OSD时间,系统内任一操作记录都有时间戳,一些时间还需要被展示出来被很多人看到,例如信息发布屏,显示屏,电子钟等。3、海康威视作为一家以视频为核心的智能物联...

几种常见的UPS不间断电源电池接线图

几种常见的UPS不间断电源电池接线图

1、单组36v接线图(12V蓄电池)   例如: DC:36V2、单组96V接线图(12V蓄电池)  例如DC:96V3、单组192V接线图(12V蓄电池)    例如: DC:192V4、两组36v并联接线图(12V蓄电池)    例如: DC:36V5、两组96V并联接线图(12V蓄电池)    例如:...

linux 操作系统配置系统IP

linux配置ip地址有多种不同的方法,大家可以根据自己的需要来使用不同的方法配置ip地址。 方法一 ifconfig命令使用 ifconfig 命令配置 IP 地址ifconfig 命令用于查看和配置网络接口,可以使用该命令为网络接口配置 IP 地址。假设需要配置 eth0 网卡的 IP 地址为 192.168.1.100,子网掩码为 255.255.255.0,网关为 192.168.1.1...

6k star!B站、滴滴、小红书都在用的网站防火墙

6k star!B站、滴滴、小红书都在用的网站防火墙

你有网站么?你担心网站被黑客攻击么?你知道如何抵御来自黑客的攻击吗?据称互联网上有 30% 的流量都来自于恶意攻击。做过 Web 开发或者有过建站经验的朋友对 SQL 注入、CC 攻击、XSS、WebShell 等名词应该并不陌生,如果你经常在日志中看到各种奇奇怪怪的请求,这说明你的网站可能已经遭遇了黑客攻击。 SafeLine 简介今天,推荐给大家的是一款在社区广受好评的网站防护工具 —— S...

分享一个好用到起飞的it工具,IP地址修改器

分享一个好用到起飞的it工具,IP地址修改器

如果你的工作时,调试网络时会换不同的IP,有工具快速切换会舒服很多。现在为了方便管理,一个地方会有几十个VLAN,调试时,不断切换还是很累人的。程序主要原理还是利用了WMI的Win32_NetworkAdapter、Win32_NetworkAdapterConfiguration,还有Netapi32.dll及注册表补充来获取信息,硬件方面用了Setupapi.dll来控制网卡禁启用。除了能快速...

docker安装zerotier,进行内网穿透、P2P打洞,异地组网

ZeroTier简介ZeroTier 是一款非常简单易用的内网穿透工具(更类似异地组网SD-WAN),只需要简单配置,就能实现虚拟局域网的组建,让你可以在外也能连回家中、学校、办公室的电脑获取资料,数据。配置与使用都非常简单。要在Docker中安装zerotier,可以按照以下步骤操作:1. 在Docker主机上创建一个新的Docker容器来运行zerotier。可以使用以下命令创建一个新的容器:...

华为6003AC控制器  web密码忘记如何 恢复

华为6003AC控制器 web密码忘记如何 恢复

可以创建一个新的管理员账户,web, 密码web2021sysaaalocal-user web password cipher web2021local-user web privilege level 15local-user web service-type http terminal telnet ftpquitquitsavey如果consle密码也忘记了CTRL+B进去AC控制器的BI...

wordpress优化-为wordpress添加redis对象存储,提高网站访问性能

wordpress优化-为wordpress添加redis对象存储,提高网站访问性能

举个不太恰当的例子说人话就是:无对象缓存:当有人访问你的网站时,没有对象缓存时是实时走数据库里调取数据,那么每次查询都会把所有数据表查询一遍。类似一个房间里有 100 个人,每个人都有自己的唯一编号及名字,当有人在门外叫喊编号比如 17,那么房间里的人就从 1 2 3 开始报数直到找到 17 。这种效率非常低,而且会增加太多无用的查询时间。有对象缓存:添加了对象缓存后就像是在这个房间里,100 个...

wordpress配置https(SSL)无法登录后台&页面样式丢失

小编用1panel,手动配置PHP运行环境安装的 wordpress  在开启SSL 之后,居然不能加载图片和CSS进过反复折腾,找到如下方法有效解决一、修改代码1、打开网站根目录文件\wp-includes\functions.php,找到代码 require( ABSPATH . WPINC . '/option.php' );大概在第8行。在下方添加以下代码:add...

华为5800X2 OLT注册onu简单教程

切换中文模式switch language-mode查询ONU上线情况display ont autofind all 进入PON板interface gpon  0/1修改ONUont modify 0 1 sn  x修改ONU描述名称ont modify 0 1 desc xxxx查看ONU光功率interface gpon  0/1display on...

您正确了解保险丝了吗-保险丝常识普及

保险丝是一种电路保护元件,用于保护电路免受过大电流的损害。你提供的信息非常实用,这里我再简要总结一下:1. **保险丝的标识**:保险丝上的标识如“F1A250V”通常表示:   - “F”表示快断型保险丝。   - “1A”表示保险丝的额定电流是1安培。   - “250V”表示保险丝的额定电压是250伏特。2. **保险丝的尺寸**:...

H3C交换机开启 SSH 登录功能

ssh server enable #开启SSH服务 local-user XXX    #创建本地用户 password  simple ******  #设置简单密码 authorization-attribute user-role ne...

H3C  WX无线控制器web界面配置步骤(模拟器操作截图)

H3C WX无线控制器web界面配置步骤(模拟器操作截图)

1添加服务模板2. 配置服务模板> 无线服务模板名称为“1”,无线信号名称ssid为“h3c”;> 无线服务“开启”,绑定业务vlan“101”;> 认证模式“静态PSK认证”;> PSK密钥选择“Passphrase”,输入无线信号的密码;> 最后点击“确认”,完成无线服务模板的配置。3.配置默认AP组AP上线后在默认AP组中4.选择AP型号,开启AP射频...

八位二进制,十六进制拨码表速查,模拟拨码器,模拟计算器

八位二进制,十六进制拨码表速查,模拟拨码器,模拟计算器

地址码工具 - 拨码开关模拟器 + 地址转换 + 常用码对照表body { font-family: 'Roboto', sans-serif; background: #f7f8fa; color: #222; margin: 0; padding: 20px; } h1, h2 { f...

linux挂载samba客户端

Linux Samba客户端挂载指南 | 专业运维技术文档:root { --forest-green: #228B22; --slate-gray: #708090; --accent-color: #32CD32; --text-primary: #2F4F4F;...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。