Linux系统集群架构线上项目配置实战 五(完结篇)

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Linux系统集群架构线上项目配置实战 五(完结篇)

Linux系统集群架构线上项目配置实战 五(完结篇)

写在前面

  今天介绍项目后期的全网数据备份规划与配置过程,整个过程包括备份规划、脚本编写、数据同步等

数据备份规划如下

数据库

从库开启binlog,通过全备与增量备份来进行,每天00:00全备一次,每天12:00增量备份一次,初期数据量不大的情况,后期根据数据量进行调整

本地备份目录

/server/backup/mysql/data

/server/backup/mysql/binlog

FTP****数据

实时同步上传数据,防止服务故障,可以快速切换

/www/ftp 同步至 /www/ftp

其它服务器数据实行实时同步

比如说配置文件备份、代码包备份

本地备份目录

/server/backup/app

/server/backup/sjapp

/server/backup/admin

/server/backup/shangjia

/server/backup/web

所有数据本地保留一周,远端备份服务器保留30天

mkdir /server/backup/mysql/data

mkdir /server/backup/mysql/binlog

mkdir /server/scripts/

Linux系统集群架构线上项目配置实战 五(完结篇) Linux系统集群架构线上项目配置实战 五(完结篇) Linux系统集群架构线上项目配置实战 五(完结篇)

脚本写好了,就需要写个定时任务定时执行,然后手工检查

Cat/var/spool/cron/rootEOF

00 00 * * * /bin/sh /server/scripts/fullbak.sh /dev/null 2&1

00 12 * * * /bin/sh /server/scripts/binlog_bak.sh /dev/null 2&1

EOF

Linux系统集群架构线上项目配置实战 五(完结篇)

同步服务器创建对等目录

mkdir /www/ftp 

安装rsync服务

Yum install rsync –y

配置rsync配置文件

vim /etc/rsyncd.conf

##rsync.conf config start

uid = rsync

gid = rsync

use chroot = no

max connetctions = 200

timeout = 100

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

[backup]

path = /www/ftp

ignore errors

read only = false

list = false

hosts allow = 10.0.0.8

auth users = rsync_backup

secrets file = /etc/rsync.password

##rsync config  end

**创建用户 **

useradd rsync -s /sbin/nologin -M

配置权限设置密码

chown -R rsync:rsync /www/ftp

echo “rsync_backup:rsync.conf”/etc/rsync.password

chmod 600 /etc/rsync.password

启动服务

rsync –daemon

[root@resources ~]# netstat -lntup|grep rsync

tcp  0 0 0.0.0.0:873  0.0.0.0:*  LISTEN  26280/rsync

客户端配置密码

echo “rsync.conf”/etc/rsync.password

chmod 600 /etc/rsync.password

测试手工同步数据是否成功

[root@resources ~]# rsync -avzP /etc/hosts rsync_backup@10.0.0.11::backup –password-file=/etc/rsync.password

sending incremental file list

hosts

473 100%    0.00kB/s    0:00:00 (xfer#1, to-check=0/1)

sent 314 bytes  received 27 bytes  682.00 bytes/sec

total size is 473  speedup is 1.39

[root@ftp-bakserver ~]# ll /www/ftp

total 4

-rw-r–r– 1 rsync rsync 473 May 26 13:24 hosts

客户端安装sersync服务

tar zxvf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /usr/local/

[root@resources ~]# cd /usr/local/

[root@resources local]# mv GNU-Linux-x86 sersync

规范文件目录

[root@resources sersync]# mkdir -p conf bin logs

拷贝配置文件并修改

[root@resources sersync]# mv confxml.xml conf/

[root@resources sersync]# mv sersync2 bin/sersync

修改配置文件内容(confxml.xml

1、修改24-28行

localpath watch=”/opt/tongbu”

 remote ip=”10.0.0.11” name=”tongbu1”/

 !–remote ip=”192.168.8.39” name=”tongbu”/–注释内容

 !–remote ip=”192.168.8.40” name=”tongbu”/–注释内容

        /localpath

修改后的内容为

 localpath watch=”/www/ftp” 本地数据的路径

  remote ip=”10.0.0.11” name=”backup”/远端IP与模块名称

         /localpath

 !#################################### –注释内容

2、修改31-34行内容——认证

commonParams params=”-artuz”/

auth start=”false” users=”root” passwordfile=”/etc/rsync.pass”/

userDefinedPort start=”false” port=”874”/!– port=874 –

timeout start=”false” time=”100”/!– timeout=100 –

ssh start=”false”/

修改后的内容为

commonParams params=”-aruz”/

auth start=”true” users=”rsync_backup”  passwordfile=”/etc/rsync.password”/

userDefinedPort start=”false” port=”874”/!– port=874 –

timeout start=”true” time=”100”/!– timeout=100 –

ssh start=”false”/

3、修改36-37行

failLog path=”/tmp/rsync_fail_log.sh” timeToExecute=”60”/!–default

 every 60mins execute once–

修改成我们刚刚创建好的logs目录

failLog path=”/usr/local/sersync/logs/rsync_fail_log.sh” timeToExecut

e=”60”/!–default every 60mins execute once–

配置环境变量

echo ‘export PATH=$PATH:/usr/local/sersync/bin’/etc/profile

[root@resources sersync]# source /etc/profile

[root@resources sersync]# which sersync

/usr/local/sersync/bin/sersync

启动服务

[root@resources sersync]# sersync -r -d -o /usr/local/sersync/conf/confxml.xml

测试实时同步

[root@resources opt]# cd backup/

[root@resources backup]# ll

total 0

[root@ftp-bakserver ~]# cd /www/ftp

[root@ftp-bakserver backup]# ll

total 0

[root@resources ftp]# for i in seq 10;do mkdir -p /opt/backup/$i;done

[root@resources ftp]# ll

1 5 10 6 2 7 3 8 4 9 

[root@ftp-bakserver ftp]# ls

1 5 10 6 2 7 3 8 4 9

可以同步

备份服务器配置

[user-app]

path = /mnt/backup/user-app

ignore errors

read only = false

list = false

hosts allow = 10.0.0.4

auth users = rsync_backup

secrets file = /etc/rsync.password

[sj-app]

path = /mnt/backup/sj-app

ignore errors

read only = false

list = false

hosts allow = 10.0.0.5

auth users = rsync_backup

secrets file = /etc/rsync.password

[admin]

path = /mnt/backup/admin

ignore errors

read only = false

list = false

hosts allow = 10.0.0.6

auth users = rsync_backup

secrets file = /etc/rsync.password

[shangjia]

path = /mnt/backup/shangjia

ignore errors

read only = false

list = false

hosts allow = 10.0.0.7

auth users = rsync_backup

secrets file = /etc/rsync.password

[web]

path = /mnt/backup/web

ignore errors

read only = false

list = false

hosts allow = 10.0.0.8

auth users = rsync_backup

secrets file = /etc/rsync.password 

其它同步客户端安装与配置sersync按上述操作进行

备份脚本基本都是打包备份或直接拷贝文件到本地备份目录

其它项目文章可查看往期回顾

—–至此,整个项目过程都已经介绍完成—–

写在最后

**   **此篇文章文未留言积赞超过300(截止2017/10/12 中午12:00)只限前三名的小伙伴(先达到先得),我提供此项目线下测试环境搭建的过程中全程问题解答!!!!!

 如需讨论问题的请加群:580703149

所有转发三个渠道或以上的伙伴,可将所有转发截图打包,在群里私发给我,我一一审核确认无误后,会将项目的文档发送给你!!!!

Linux系统集群架构线上项目配置实战 五(完结篇) Linux系统集群架构线上项目配置实战 五(完结篇) Linux系统集群架构线上项目配置实战 五(完结篇) Linux系统集群架构线上项目配置实战 五(完结篇)

如有帮助,扫码打赏民工哥!!

Linux系统集群架构线上项目配置实战 五(完结篇)
本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> Linux系统集群架构线上项目配置实战 五(完结篇)


 上一篇
Linux系统集群架构线上项目配置实战(四) Linux系统集群架构线上项目配置实战(四)
写在前面   项目到目前为止,前面将所有应用工程的安装与配置已阐述完成,今天将要介绍的是数据库的安装、配置、主从同步等相关过程 至于数据库的安装与配置,在之前的文章中也介绍过很多种方法,一般数据库的几种安装方法如下: 1、yum安装
2021-04-05
下一篇 
Linux三剑客命令之Awk Linux三剑客命令之Awk
 Awk  pattern scanning and processing language   对文本和数据进行处理  awk 是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输(stdin)
2021-04-05