Rsync服务让SLB下多台centos服务器文件同步更新

简介:

需求目的 是为了使俩台集群下的俩台服务器 实现数据同步 及真正的备份 所以负载均衡 加上rsync是一个完美的结合

下面的操作是针对阿里云的SLB 服务,SLB服务 是由tengine与lvs所组成的 所以在其他环境下也可以使用这种方式,所以操作如下:

当使用了SLB负载均衡,为了保证SLB下两台服务器下面的网站文件同步,所以采用了rsync服务进行同步,并进行了每三分钟同步一次。根据这样操作可以完美的使用slb服务,实现负载均衡、容灾恢复 等。。

rsync – remote synchronize是类unix系统下的数据镜像备份工具,它的特性如下:

可以镜像保存整个目录树和文件系统。
可以很容易做到保持原来文件的权限、时间、软硬链接等等。
无须特殊权限即可安装。
快速:第一次同步时rsync会复制全部内容,但在下一次只传输修改过的文件。rsync在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。
安全:可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
支持匿名rsync 同步文件,是理想的镜像工具。
安装:
服务端和客户端安装rsync
yum -y install rsync

我们将SLB下面两台服务器分为服务器A与服务器B,服务器A为主服务器,但是需要注意的是必须在服务器A(100.xxx.xxx.1)和 B(100.xxx.xxx.2)上都安装rsync,其中A服务器上是以服务器模式运行rsync,而B上则以客户端方式运行rsync。这样在web 服务器A上运行rsync守护进程,在B上定时运行客户程序来备份web服务器A上需要备份的内容。

服务器的配置

 一,  vi /etc/rsyncd.conf #根据你自己的rsyncd.conf文件所在目录而定

[globale]

strict modes = yes
port = 873
uid = root
gid = root
user chroot = no
max connections = 5 #同时的最大连接数
timeout = 600
pid file = /var/run/rsyncd.pid #进程的pid存放文件位置
lock file = /var/run/rsyncd.lock #lock文件位置
log file = /var/log/rsyncd.log #日志文件位置
[eeetb.com-rsyncd] #建立一个备份名,服务器B通过该名称指定具体的备份位置,可自定义
path=/home/wwwroot #备份文件存放的目录位置
ignore errors
read only = no
list = no
hosts allow = 100.xxx.xxx.2 #允许服务器B地址,如果是内网可以使用内网IP
auth users = root #允许那些用户,这里的用户test的信息存放在/etc/rsyncd.password
secrets file = /etc/rsyncd.password #指定允许的用户和用户密码

二,建立用户密码文件

vi /etc/rsyncd.password

root:123456 #允许的用户和密码

三,修改防火墙策略 允许873端口

vi /etc/sysconfig/iptables #加入下面的规则

-A INPUT -s 100.xxx.xxx.2 -p tcp -m state –state NEW -m tcp –dport 873 -j ACCEPT #授权B服务器访问A服务器873端口

四,启动服务器端

/usr/bin/rsync –daemon –config=/etc/rsyncd.conf

五,rsync开机自启动

echo ‘/usr/bin/rsync –daemon –config=/etc/rsyncd.conf’ >> /etc/rc.local

客户端B服务器的配置
一,

vi /etc/rsyncd.password

123456 #服务器A设置的密码

chmod 600 /etc/rsyncd.password #需要将密码文件权限设置为600,否者会出现password file must not be other-accessible错误

二,

/usr/bin/rsync -avzP –delete –progress –password-file=/etc/rsyncd.password root@100.xxx.xxx.1::eeetb-rsync /home/wwwroot

三,设置每天自动同步任务

1.crontab -e #(可以定时每三分钟同步一次文件)加入下方内容

2.MAILTO=””

3./3 * /usr/bin/rsync -avzP –delete –progress –exclude=排除的不需同步目录 –password-file=/etc/rsyncd.password root@100.xxx.xxx.1::eeetb-rsync /home/wwwroot > /dev/null 2>&1

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
安全 Linux Shell
使用SCP命令在CentOS 7上向目标服务器传输文件
以上步骤是在CentOS 7系统上使用SCP命令进行文件传输的基础,操作简洁,易于理解。务必在执行命令前确认好各项参数,尤其是目录路径和文件名,以避免不必要的传输错误。
1079 17
|
11月前
|
Ubuntu 安全 小程序
服务器版本的CentOS和Ubuntu哪个更适合你?
但是以上的比较并不说明Ubuntu是不稳定的或者是不安全的,只是以上比较过程中,在稳定性方面Ubuntu稍微逊色了一点。由于Ubuntu在个人桌面电脑的使用率远远高于CentOS,用Ubuntu搭建服务器,如果遇到什么问题,寻找解决方案相对比较容易,这让Ubuntu在选择方面更优于CentOS。如果你是一个初学者,那么毫无疑问Ubuntu是更适合的选择。如果你正在经营自己的公司,在这两者之间,CentOS会更好一些。
|
12月前
|
安全 关系型数据库 网络安全
安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中
通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。
551 0
|
Kubernetes Ubuntu Linux
阿里云服务器使用centos还是ubuntu?
在选择阿里云服务器操作系统时,CentOS和Ubuntu各有优势。CentOS以企业级稳定性著称,适合数据库、ERP等长期稳定需求;而Ubuntu开发者友好,支持最新硬件与功能,更适合开发/测试环境及云计算场景。两者在阿里云上均有官方镜像支持,性能差异可忽略。无特殊需求时推荐Ubuntu 22.04 LTS,若需RHEL生态则选AlmaLinux。根据实际需求、团队技术栈及场景灵活决策,阿里云还支持更换系统盘降低试错成本。
|
负载均衡 前端开发 应用服务中间件
Tomcat的负载均衡和动静分离(与nginx联动)
总的来说,负载均衡和动静分离是提高Web应用性能的两个重要手段。通过合理的配置和使用,我们可以让Web应用更好地服务于用户。
433 21
|
缓存 负载均衡 算法
解读 Nginx:构建高效反向代理和负载均衡的秘密
解读 Nginx:构建高效反向代理和负载均衡的秘密
443 2
|
负载均衡 前端开发 应用服务中间件
负载均衡指南:Nginx与HAProxy的配置与优化
负载均衡指南:Nginx与HAProxy的配置与优化
1030 3
|
负载均衡 应用服务中间件 nginx
解决nginx配置负载均衡时invalid host in upstream报错
在Windows环境下,配置Nginx 1.11.5进行负载均衡时遇到问题,服务无法启动。错误日志显示“invalid host in upstream”。检查发现上游服务器列表中,192.168.29.128的主机地址无效。负载均衡配置中,两个服务器地址前误加了"http://"。修正方法是删除上游服务器列表和proxy_pass中的"http://"。问题解决后,Nginx服务应能正常启动。
1288 4
解决nginx配置负载均衡时invalid host in upstream报错
|
负载均衡 算法 应用服务中间件
nginx自定义负载均衡及根据cpu运行自定义负载均衡
nginx自定义负载均衡及根据cpu运行自定义负载均衡
503 1