使用场景: 
  1、两台或以上服务器做负载均衡,需要做网站数据的同步时 
  2、需要做数据镜像时 
  3、其它需要文件实时同步的项目中   
  4、数据备份 
 
环境说明: 
接收端服务器IP:192.168.247.138 
发送端服务器IP:192.168.77.200 
操作系统:CentOS 7.9.2009 x86_64(Py3.7.9) 
面板版本:8.0.2 
插件:文件同步工具 3.9.2 
插件说明:基于rsync开发的文件同步工具,可定时或实时的发送文件和更新文件,也可用于配置负载均衡、集群、异地备份等场景 
注意事项:防篡改中开启防护的目录数据是不能被同步的。所以使用文件同步工具是注意不要开启防护或者临时关闭防护 
 
 
 
更新日志: 
更新内容( V3.9.2 ): 
1. 创建本地同步时,增加选择过滤模板的功能2. 优化排除规则,出现同名时可以选择覆盖 
3. 修复rsync全局配置中的ip白名单在添加设置后,无法清空 
4. 修复部分情况下监听服务报错 
 
 
安装步骤: 
登录宝塔面板-->软件商店-->【关键词搜索:宝塔数据同步工具】或【点击专业版插件】-->宝塔数据同步工具-->安装 
 
 
 
 服务器数据同步(用于服务器间数据同步) 
一、rsync 连接方式 
 
 
 
 
 
 
 
 
设置接收任务 (在接收文件的服务器(以下简称“接收服务器”)创建)- 打开接收服务器上的宝塔数据同步工具:宝塔数据同步工具-->接收配置
 - 全局配置
 
宝塔数据同步工具-->接收配置-->全局配置, 
需要注意的是在创建接收任务前,需要在服务器的防火墙中放行数据同步服务端口。否则会导致发送数据的服务器无法连接接收服务器而导致创建发送任务失败。如果是云服务器还需要到服务器后台控制台的安全组中放行端口,默认端口为:873。 
 - 创建接收任务
 
输入框中填写相对应用户名、密码,以及同步目录地址,密钥自动生成。资料填写无误后,点击提交即可,如图 
 
 
 
提交后,会生成对应接收任务并弹出接收密钥对话框,并且服务会自动开启。如图 
注意保存密钥在创建发送任务中会用到。 
 
接收端服务器设置完成 
 
  
 
 
 
 
 
 
 
 
 
 
 
 
 
设置 rsync 连接方式的发送任务 (在发送服务器创建)- 打开发送数据的服务器上的宝塔数据同步工具:宝塔数据同步工具-->发送配置
 - 创建发送任务
 
输入框中填写之前创建的接收配置的信息(根据自行爱好使用rsync的验证方式:密钥或者虚拟帐号)及同步目录地址。资料填写无误后,点击提交即可,如图 
 
验证方式:密钥 (rsync 密钥)、帐号 (rsync虚拟帐号)    点击图片可以看大图 
创建发送任务--rsync用户3.png 
 
 
 
说明: 
连接方式 rsync:通过 rsync 虚拟帐号方式传输文件 
同步方式:增量或者完全 
  增量:数据更改/增加时同步,且只追加和替换文件 
  完全:保持两端的数据与目录结构的一致性,会同步删除、追加和替换文件和目录 
         
服务器IP:填写上对应的接收数据的服务器ip 
同步目录:需要同步文件的存放目录 
 
验证方式:密钥 (rsync 密钥) 
接收密钥:接收配置中生成的密钥 
 
验证方式:账号 (rsync 虚拟帐号) 
用户名:接收配置中设置的用户名 
密码:接收配置中设置的密码 
 
端口:接收服务器全局配置中的端口,默认为:873 防火墙需要开放端口 
同步周期:定时同步(自定义备份时间),实时备份(实时同步备份文件) 
压缩传输:数据在同步时是否压缩文件 
限速:限制上传的速度,防止因同步数据导致带宽跑高 
延迟:延迟时间周期内仅记录不同步,到达周期后一次性同步数据,以节省开销 - 确认方向
 
方向确认.png 
 
 
提示“正常”,点击“执行同步”。 
 
如果同步方式是“完全”模式。接收端存在文件将提示异常: 
方向确认-异常.png 
 
 
 
根据提示解决方案解决,解决后再设置同步: 
1.请手动清理接收数据方的目录 
2.接收数据方重新选择一个空目录 
3.将同步模式改为增量同步 - 创建发送任务成功,会自动同步文件。如图
 
rsync建立成功.png 
 
 
 
rsync 连接方式 发送任务的名称是直接读取的接收端的用户名,所以接收端不要使用相同的名称。 
 
同步方式为 “增量” 时两边的文件可以不一致。可以看到接收端多一个文件 (点击图片可以看大图) 
增量同步.png 
 
 
 
同步方式为 “完全” 时两边的文件一致。(点击图片可以看大图) 
完全同步.png 
 
 
 
注意: 
同步方式为 “完全”时:在创建任务后,第一次同步完成后,如果在接收端建立了文件后也会不一致,点击任务的“同步”按键后会以发送端为准,会删除接收端的文件。  
建议同步方式选择“完全”时,同步完成后修改成“增量”同步方式。避免文件数据的丢失。 - 设置过滤器
 
用于排除同步目录中不需要同步的文件、目录,如图  
 - 查看日志
 
实时日志是查看自动同步的日志。(同步周期:实时同步或者定时同步) 
实时日志.png 
 
 
 
任务中的日志是查看手动同步的日志 
任务日志.png 
 
 
发送端服务器设置完成、rsync 连接方式设置完成 
 
  
 
 
二、ssh 连接方式  
- 设置 ssh 连接方式的发送任务 (仅在发送服务器创建)
 
 
验证方式:ssh帐号、ssh密钥 
 
 
 
 
ssh 连接方式请根据自行实际使用选择使用ssh帐号还是ssh密钥, 
如果创建任务后更换了ssh用户名与密码、ssh密钥。这里也需要更改为最新的,否则将无法验证导致同步失败。  
 
与rsync不同的是 ssh 连接方式 是直接使用操作系统的用户无需建立rsync密钥与rsync虚拟帐号。 
也就是无需设置“接收配置”,无需在接收端安装宝塔数据同步工具。 
 
ssh 连接方式设置完成 
 
 
说明: 
名称 :名称用于标识同步任务 
接收目录 :接收端服务器的目录 
 
验证方式:密钥 (ssh 密钥) 
接收密钥:登录操作系统用户的ssh终端密钥 
 
验证方式:账号 (ssh帐号) 
用户名:登录操作系统用户的ssh的用户名 
密码:登录操作系统用户的ssh用户的密码 
 
端口:接收服务器的SSH端口。默认为:22  
 
其他的与rsync 连接方式相同 
建议使用root用户或者有root权限的用户,可以避免权限问题 
 
 
如何查看 ssh用户的密码与 ssh密钥? 
如果是服务器提供商的,请到登录相关控制台查看密码或者ssh密钥。 
(注意:如果有使用命令行或者宝塔面板更改过此方法失败,因为使用命令行或者面板更改不会同步到服务器提供商的控制台) 
 
面板查看密钥:安全界面-->SSH管理-->SSH密钥登录-->查看密钥。如果为空,需要重新开关一次,此操作会将更新旧密钥,如有其他地方使用,请使用新的密钥进行登录。 
命令行查看密钥: 
经测试支持ed25519、rsa加密方式。 
 
无法通过验证?请查看ssh日志进行排查错误: 
- # Centos
 
 - tail /var/log/secure
 
  复制代码- # Debain/Ubuntu
 
 - tail /var/log/auth.log
 
  复制代码 
 
  
 
二、本地数据同步(用于数据备份) 
- 创建本地数据同步
 
示例:如将默认的建站目录/www/wwwroot/目录做个数据备份,备份至/www/backup/wwwroot目录下。 
任务名定义为wwwroot-backup。如图 
 
 
 
 
资料填写无误后,点添加即可。如图 
 
 
  
 
三、操作日志 
通过操作日志可以查看宝塔数据同步工具的详细操作记录。操作记录记录了操作的具体事项、操作时间,如图 
 
 
宝塔数据同步工具仅支持文件、目录同步。MYSQL/MARIADB同步请使用“MySQL主从复制(重构版)”插件 
 
PS:本帖子仅作为教程帖子,不处理问题;如使用此插件过程存在问题或者疑问,可在论坛新开帖子或者在QQ交流群:620695507中反馈下问题 
 
 |   
- 
 
 
 
- 
 
 
 
 
 
 
 
 
 |