rsync服务器的搭建配置与测试

1.先准备好虚拟机

主机名 网卡etho 网卡eth1 用途

web01 10.0.0.7/24 172.16.1.7/24 nginxweb服务器【未来部署】

NFS01 10.0.0.31/24 172.16.1.31/24 NFS储存服务器【未来部署】

backup 10.0.0.41/24 172.16.1.41/24 rsync储存服务器


2.rsync在backup安装流程

1.yum -y install rsync 安装ysync

----------------------------------------

2.rpm -qc rsync #查看服务的配置文件

    /etc/rsyncd.conf

    /etc/sysconfig/rsyncd

------------------------------------------------

3.cp /etc/rsyncd.conf{,.bak} #备份配置文件

--------------------------------------------------

4.#配置/etc/rsyncd.conf文件

vi /etc/rsyncd.conf

uid = www

gid = www

port = 873

fake super = yes

use chroot = no

max connections = 200

timeout = 600

ignore errors

read only = false

list = false

auth users = rsync_backup

secrets file = /etc/rsync.passwd

log file = /var/log/rsyncd.log

#####################################

[backup]

comment = welcome to oldboyedu backup!

path = /backup

[data]

path = /data

--------------------------------------------

5.mkdir -p /backup #创建备份目录

-----------------------------------------

  mkdir -p /data

-------------------------------------------------

6.groupadd www -g666 #创建用户组

--------------------------------------------------

useradd www -u 666 -g 666 -M -s /sbin/nologin #创建虚拟用户

-----------------------------------------------------------------

id www #检测创建

----------------------------------------

uid=666(www) gid=666(www) 组=666(www)

-------------------------------------------------

7.chown -R www.www /backup/ #给备份目录授权

-------------------------------------------------

chown -R www.www /data/

----------------------------------------------------

8.ll -d /backup/ /data/      检测创建   

67791369 drwxr-xr-x 2 www www 6 2020-01-03 21:29:20 /backup//

101465103 drwxr-xr-x 2 www www 6 2020-01-03 21:29:24 /date//

----------------------------------------------------------------

9.echo "rsync_backup:oldboy" >/etc/rsync.passwd #创建密码文件

------------------------------------------------------------------

chmod 600 /etc/rsync.passwd   #授权密码文件

---------------------------------------------------------------

10.systemctl start rsyncd #启动rsync服务

----------------------------------------------------

systemctl status rsyncd|grep active

Active: active (running) since 五 2020-01-03 21:36:35 CST; 21s ago

---------------------------------------------------------------------------

systemctl enable rsyncd #设置开机自启动

3.配置内容意思


uid = www # 运行进程的用户

gid = www # 运行进程的用户组

port = 873 # 监听端口

fake super = yes # 无需让rsync以root身份运行,允许接收文件的完整属性

use chroot = no # 禁锢推送的数据至某个目录, 不允许跳出该目录

max connections = 200 # 最大连接数

timeout = 600 # 超时时间

ignore errors # 忽略错误信息

read only = false # 对备份数据可读写

list = false # 不允许查看模块信息

auth users = rsync_backup # 定义虚拟用户,作为连接认证用户

secrets file = /etc/rsync.passwd # 定义rsync服务用户连接认证密码文件路径

[backup] # 定义模块信息

comment = commit # 模块注释信息

path = /backup # 定义接收备份数据目录


4.客户端操作流程

1.yum -y install rsync 安装rsync

-------------------------------------------

2.

echo "oldboy" >/etc/rsync.passwd #创建密码文件

chmod 600 /etc/rsync.passwd     #授权密码文件

3.#客户端测试 试着推送拉取文件目录

rsync -avz /etc/hosts root@172.16.1.41:/tmp  #推送hosts到服务端

rsync -avz -e 'ssh -p 22' root@172.16.1.41:/etc/hosts /tmp  #从服务端加密拉取hosts到本地

4.客户端上传数据到backup和data模块

    rsync -avzP --password-file=/etc/rsync.passwd hostname.txt rsync_backup@10.0.1.41::backup

    rsync -avzP --password-file=/etc/rsync.passwd hostname.txt rsync_backup@10.0.1.41::data

5.客户端下载数据到本地目录

rsync -avzP --password-file=/etc/rsync.passwd rsync_backup@10.0.1.41::data /test/


5.扩展

1.rsync的limit限速

#企业案例: 某 DBA 使用 rsync 拉取备份数据时,由于文件过大导致内部交换机带宽被沾满,导致用户的请求无法响应

export RSYNC_PASSWORD=oldboy

rsync -avz --bwlimit=1 rsync_backup@172.16.1.41::backup /data/

#限制传输带宽为1MB/s

[root@nfs /test]# rsync -avzP --bwlimit=1 bigfile.txt rsync_backup@10.0.1.41::backup

sending incremental file list

bigfile.txt

    92,995,584  8%    1.01MB/s    0:15:51

-----------------------------------------------------

2.rsync实现无差别同步

危险,慎用!

#拉取远端数据:远端与本地保持一致,远端没有,本地有会被删除, 造成客户端数据丢失

    export RSYNC_PASSWORD=oldboy

    rsync -avz --delete rsync_backup@172.16.1.41::backup /data/

#推送数据至远端:本地与远端保持一致, 本地没有,远端会被删除, 造成服务器端数据丢失

    export RSYNC_PASSWORD=oldboy

    rsync -avz --delete /data/ rsync_backup@172.16.1.41::backup

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容