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

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介:

需求目的 是为了使俩台集群下的俩台服务器 实现数据同步 及真正的备份 所以负载均衡 加上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

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
17天前
|
安全 大数据 Linux
云上体验最佳的服务器操作系统 - Alibaba Cloud Linux | 飞天技术沙龙-CentOS 迁移替换专场
本次方案的主题是云上体验最佳的服务器操作系统 - Alibaba Cloud Linux ,从 Alibaba Cloud Linux 的产生背景、产品优势以及云上用户使用它享受的技术红利等方面详细进行了介绍。同时,通过国内某社交平台、某快递企业、某手机客户大数据业务 3 大案例,成功助力客户实现弹性扩容能力提升、性能提升、降本增效。 1. 背景介绍 2. 产品介绍 3. 案例分享
|
4月前
|
NoSQL Linux Redis
在 centos7 下重启/开启 redis 服务器
本文提供了一种在Centos 7操作系统下如何重启Redis服务器的步骤,包括停止Redis服务、确认停止成功以及重新启动Redis服务。
230 2
在 centos7 下重启/开启 redis 服务器
|
4月前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
4月前
|
弹性计算 关系型数据库 MySQL
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
|
4月前
|
Linux 数据安全/隐私保护 Windows
centos 7.2 搭建svn服务器
centos 7.2 搭建svn服务器
113 0
|
6月前
|
PHP
PHP遍历文件并同步上传到服务器
在进行网站迁移时,由于原网站的图片文件过多,采用打包下载再上传的方式耗时过长,且尝试使用FTP工具从旧服务器传输至新服务器时失败。为解决此问题,特使用PHP编写了一款工具,该工具能扫描指定目录下的所有`.webp`图像文件,并将其上传至新的服务器,极大地提高了迁移效率。
121 16
|
6月前
|
存储 安全 Linux
新 CentOS 7 服务器的基本配置
新 CentOS 7 服务器的基本配置
139 1
|
6月前
|
运维 网络协议 Linux
揭秘CentOS 7:系统目录奥秘大起底,网卡配置秒变高手,让你的服务器管理飞一般的感觉!
【8月更文挑战第5天】CentOS 7作为RHEL的社区版本,以其稳定性和丰富功能广受好评。本文通过案例分析介绍其系统目录结构及网卡配置方法。系统目录如/(根)、/bin(基本命令)、/boot(启动文件)、/dev(设备文件)、/etc(配置文件)、/home(用户目录)和/lib(共享库)等各司其职。网卡配置通过编辑/etc/sysconfig/network-scripts/下的ifcfg文件实现,如设置ens33接口的静态IP地址、子网掩码、网关和DNS服务器,并通过重启网络服务使配置生效。这是系统管理员必备的技能之一。
90 2
|
6月前
|
监控 Unix 数据安全/隐私保护
告别中央服务器:Syncthing实现点对点文件同步
告别中央服务器:Syncthing实现点对点文件同步
167 3
|
6月前
|
网络协议 Linux Shell
如何在运行Centos 6的虚拟服务器上安装cPanel
如何在运行Centos 6的虚拟服务器上安装cPanel
49 0