rsync的几种优化应用方案

rsync的几种优化应用方案,第1张

为了解决文件增多导致rsync变慢的问题,方案是很多的。1、使源目录保存较少文件这是一个传统优化办法,因为rsync虽然是同步所有文件,但和同步最近更新的文件是一个道理,因此将源服务器上的目录删除,仅仅保持最近更新的文件,文件数量就变得不但很少,而且是稳定的,随着时间推移,这数量也不会涨得很快。但这样做有个缺点,就是rsync不能使用删除模式,如果有文件要删除,可以将其弄成空文件,假如有更严格要求,可以另一个程序来删除。2、使用/dev/shm内存分区在源目录保持较少文件的前提下,将文件不存在硬盘上而放入内存,就可以避免系统IO带来的问题,但是这个内存分区在系统reboot后会丢掉所有数据,虽然并不常常需要reboot,但是其中的风险也需要计算清楚。3、使用推送方式因为性能问题是出现在rsync的客户端,用生产服务器抓取源服务器的话,性能问题就会出现在生产服务器上,这当然不很妥当。假如在生产服务器上使用 rsync daemon,源服务器执行rsync命令将文件推送到生产服务器上,性能问题就转移到了源服务器上,这在一定程度可以保证生产服务器的稳定性。4、仅用一台作同步比较假如源服务器的文件要被同步到很多台生产服务器,那么会出现rsync并发。可以分析到这些生产服务器在同一时刻文件是一致的,因此每台机都和源服务器做一次比较就是浪费的。这时可以让源服务器和生产服务器同步一次,并且使用-v参数打印出log,其它生产服务器通过同步这个log记录的文件就可以避免数次比较过程。5、使用inotifyinotify就不是rsync了,inotify是一个守护进程,它可以监控到文件目录下的文件变动情况,根据其输出然后用rsync做文件传输,就可以减掉文件比较这个环节。inotify使用并不复杂,对文件变更情况的监控是实时的,也不消耗很多性能。6、双路同步以上均是对rsync性能方面做优化,但是优化也会带来问题。在3、4、5号方案中,假如生产服务器有一台机器因为负载或其它问题reboot了,在 reboot过程中同步就失败了,这部分失败的文件假如没有其它处理,就永远不会再同步到生产服务器上。这时可以使用多一路rsync来处理,譬如使用 inotify,做到了实时同步,然后再每小时进行一次完整的rsync同步。这样就可以保证有很高的同步速度,又能使丢失文件的风险控制在一小时之内。

在集群机器配置时,经常需要将一个文件或目录copy到同样的多台集群上,如果一个一个机器去复制,比较麻烦。如果有一个办法,通过一条命令就可以实现这个目的,就简单多了。xsync就是这样一个同步脚本。xsync其实是对rsync脚本的二次封装,脚本内容可以根据自己需要进行修改。

使用命令ssh-keygen 生成rsa密钥,配置信息直接回车即可, 生成的密钥默认在当前用户主目录的ssh目录下。
密钥文件有两个:
id_rsa 存放着私钥
id_rsapub 存放着公钥

拷贝公钥到对应主机

该脚本经过修改,需要携带4个参数,分别是
filename 待发送的文件或目录名
servername 服务器前缀名
startno 服务器编号起始编号
endno 服务器编号终止编号

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

rsync功能非强工具其命令功能特色选项我面选项详细说明
rsync服务器配置结束步需要客户端发rsync命令实现服务器端文件备份客户端rsync功能非强工具其命令功能特色选项我面选项进行析说明
Rsync命令格式六种:
rsync [OPTION] SRC DEST
rsync [OPTION] SRC [USER@]HOST:DEST
rsync [OPTION]
[USER@]HOST:SRC DEST
rsync [OPTION] [USER@]HOST::SRC DEST
rsync
[OPTION] SRC [USER@]HOST::DEST
rsync [OPTION]
rsync://[USER@]HOST[:PORT]/SRC [DEST]
应于六种命令格式rsync六种同工作模式:
1)拷贝本文件SRCDES路径信息都包含单冒号":"隔符启种工作模式:rsync -a /data /backup
2)使用远程shell程序(rsh、ssh)实现本机器内容拷贝远程机器DST路径址包含单冒号":"隔符启该模式:rsync
-avz c foo:src
3)使用远程shell程序(rsh、ssh)实现远程机器内容拷贝本机器SRC址路径包含单冒号":"隔符启该模式:rsync
-avz foo:src/bar /data
4)远程rsync服务器拷贝文件本机SRC路径信息包含"::"隔符启该模式:rsync -av
root@1721678192::>rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一详细说明
在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。
Rsync的命令格式可以为以下六种:
rsync [OPTION] SRC DEST
rsync [OPTION] SRC [USER@]HOST:DEST
rsync [OPTION]
[USER@]HOST:SRC DEST
rsync [OPTION] [USER@]HOST::SRC DEST
rsync
[OPTION] SRC [USER@]HOST::DEST
rsync [OPTION]
rsync://[USER@]HOST[:PORT]/SRC [DEST]
对应于以上六种命令格式,rsync有六种不同的工作模式:
1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup
2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync
-avz c foo:src
3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync
-avz foo:src/bar /data
4)从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av
root@1721678192::>

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10259308.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-06
下一篇2023-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存