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

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

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

一、 背景 需求

为了实现重要数据的异地备份,防止服务器故障导致数据丢失 而 影响业务连续运行 。 要求 实时检测 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://greatqiu.cn/?id=115

分享给朋友:

相关文章

linux 更改服务器时区,linux修改系统时间和linux查看时区、修改时区的方法

一、查看和修改Linux的时区1. 查看当前时区命令 : "date -R"2. 修改设置Linux服务器时区方法 A命令 : "tzselect"方法 B 仅限于RedHat Linux 和 CentOS命令 : "timeconfig"方法 C 适用于Debian命令 : "dpkg-reconfigure tzdata&q...

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蓄电池)    例如:...

世界各地数据中心的电源线类型您了解多少?

世界各地数据中心的电源线类型您了解多少?

我们都知道在不同的国家或地区会使用许多不同的插头和插座,当然这里也包括分散在世界各地的数据中心。世界上使用的标准不止一种,不同的国家可能使用不同的电源线类型,不同的插头和连接器,特别是插头类型。这里我们就来对各种类型及标准的电源插头和插座做一个概况介绍。服务器是一组庞大的管理网络资源的计算机群,需要电源供电才能正常工作,因此,服务器电源线是连接电源分配器和服务器的基本配件。不同国家的服务器电源线在...

简单解析IPV6

众所周知,我们现在形影不离的互联网,最早诞生于上世纪60年代。它的核心基础,就是大名鼎鼎的IP协议(Internet Protocol,网际互连协议)。如果没有IP协议,以及基于它的IP地址,我们就没办法刷剧、网购、吃鸡、聊微信。ipv4和ipv6有何区别?1、最关键的区别在于能够提供网络ip地址的数量。ipv4是互联网协议第四版,地址长度为32位,可以提供ip地址总量为43亿个。目前ipv4地址...

一张生图让你理解端口vlan

一张生图让你理解端口vlan

当我们使用交换机web 管理的时候,一般会出现端口taged和untaged概念,小编之前被这个逻辑搞晕了,经网上查询定义如下:使用display vlan VLAN ID命令,可以看到Tagged ports和Untagged ports。Untagged ports表示端口发送数据帧时去掉VLAN标签,通常是access端口。Tagged ports表示端口发送数据顿时带上VLAN标签,可能是...

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来控制网卡禁启用。除了能快速...

TP-LINK电信定制版路由器和无线AP面板使用方法

TP-LINK电信定制版路由器和无线AP面板使用方法

中国电信智能网关为基础开放e-Link(翼联)快速连接协议,解决家庭终端接入家庭网络的配置复杂、技术门槛高的问题。通过开放连接,实现无线AP、电力猫、无线中继以及具备WiFi能力的EOC终端等设备的自配置接入家庭网络,达到用户终端零配置。支持e-Link的无线组网设备可以与天翼网关配合,实现:1、无线组网设备自动学习并同步天翼网关的Wi-Fi配置,无需用户配置,即插即用2、同一个SSID下的家庭W...

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...

docker九快记账项目安装方式更新,含Quick run和docker compose安装,新增多合一容器方便整洁

这个项目是关于如何在 Docker 中运行 MoneyNote,支持 amd 和 arm。 #### 如果在公共网络中运行,请注意 1. 默认的mysql root密码是78p7gkc1,请在安装后更改。2. 请更改默认的邀请代码。### Quick Rundocker run --name moneynote -e DB_PASSWO...

linux系统下安装zerotier客户端进行P2P内网穿透,且没有带宽限制

一、下载ZeroTier并且加入组网络1、下载ZeroTier使用ssh登录上你的设备之后,输入一下代码下载ZeroTiercurl -s https://install.zerotier.com | sudo bash2、开启zerotierzerotier-one -d如果你启动zerotier,遇到"zerotier-on...

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

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

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

发表评论

访客

看不清,换一张

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