中小规模集群搭建之backup服务(rsync守护进程)

拓扑:

 

在服务端(bacakup服务器)操作:

1、安装rsync(一般是默认安装的)

yum install rsync -y
rsync --version

2、创建rsync用户和备份目录:

useradd  -M -s /sbin/nologin  rsync
mkdir  -p /backup
chown  -R rsync.rsync  /backup
ls -ld /backup

3、修改rsync.conf配置文件

# cp /etc/rsyncd.conf{,.ori}
# vim /etc/rsyncd.conf

#this is cat's backup
fake super
= yes uid = rsync gid = rsync use chroot = no max connections = 2000 timeout = 600 pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsyncd.log ignore errors read only = false list = false hosts allow = 172.16.1.0/16 ##hosts deny = 0.0.0.0/32(deny拒绝) auth users = rsync_backup secrets file = /etc/rsync.password [backup] comment = by cat path = /backup

4、启服务

systemctl restart  rsyncd
systemctl  enable rsyncd
systemctl status  rsyncd

5、查看进程和端口是否存活/监听

ps -ef | grep rsync | grep -v grep
lsof -i :873

6、创建密码文件并赋权600

echo "rsync_backup:123456" >/etc/rsync.password
chmod  600  /etc/rsync.password

在客户端操作(web01和nfs01)操作:

1、创建密码文件并赋权600

echo "rsync_backup:123456" >/etc/rsync.password
chmod  600  /etc/rsync.password

2、测试(把 /etc/passwd 推到 backup服务器上)

rsync -avz /etc/passwd rsync_backup@176.16.1.41::data  --password-file=/etc/rsync.password 

去backup服务器查看是否推送成功:

ls /backup

 

 

概念解释:

什么是rsync:

rsync 是一个开源的、高速的、数据复制工具,默认端口873
官网资料:https://www.samba.org/ftp/rsync/rsync.html

rsync的作用:

定时/实时、远程备份

rsync有什么特性:

支持拷贝普通文件和特殊文件,eg:链接文件、设备文件等;
支持排除指定文件或目录同步的功能,相当于tar的排除功能;
可以做到保持源文件或目录的权限、时间、软硬链接、属主、属组等所有属性均不变;
可以实现增量复制,提高了数据传输效率;
可以使用rcp、rsh、ssh等方式组合进行隧道加密传输,要注意的是rsync本身不对数据进行加密;
可以通过socket(进程)传输文件和数据;
支持匿名或认证进程模式传输,并且该过程不需要系统用户的参与,安全的进行数据备份以及镜像备份。

 rsync的三种工作模式:

1、本地模式
1.1 把数据从一个地方复制到另外一个地方,相当于cp命令  eg:# rsync /etc/hosts /opt 就相当于 # cp /etc/hosts /opt
1.2 通过参数可以实现数据的删除相当于rm # eg : # rsync  -r --delete /null /opt   #这里的null为空目录,效果为/opt目录被清空
1.3 查看文件属性,相当于ls -l eg:# rsync filename  
2、远程shell模式
借助类似ssh隧道传输数据,适合不同服务器之间的复制
pull(拉):从远端拉取到本地;(类似于scp)
语法: 
#rsync    参数选项    认证用户@远程IP:源路径 本地路径
push(推):从本地推送至远端;
语法: 
#rsync    参数选项    本地路径    认证用户@远程IP:目标路径    
3、rsync守护进程模式
首先要搭建rsync服务端(要有守护进程),然后才能在客户端实现推拉数据;
3.1 服务端启动守护进程;
3.2 push,pull操作都在客户端进行;
语法:
pull #rsync    参数选项    虚拟用户@守护进程IP::模块名 本地路径
或   #rsync    参数选项    rsync://虚拟用户@守护进程IP/模块名 本地路径
push #rsync    参数选项    本地路径    虚拟用户@守护进程IP::模块名
或   #rsync    参数选项    本地路径    rsync://虚拟用户@守护进程IP/模块名

rsync命令参数:

-v    显示输出过程
-z    压缩
-a    多参数集合(相当于 -rtopgDl)
-r     递归
-t     保留时间戳
-o     保持属主
-p  保持权限
-g  保持属组
-l  保持拷贝软链接
-q  不输出任何信息
--bwlimit=KBPS  限制I/O带宽,KBytes per second
--delete  删除/清空
--exclude  排除
频繁使用组合: -avz/-vzrtopg

 

posted @ 2020-12-23 22:15  Brother_Cat  阅读(72)  评论(0编辑  收藏  举报