码迷,mamicode.com
首页 > 其他好文 > 详细

实现Rsync同步Nginx前端配置

时间:2015-03-30 20:30:59      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:

近期,由于我们的阿里前端服务器频频受到恶意的流量攻击,导致前端NGINX进入黑洞而无法正常访问公司网站。

 按之前的预计方法,采用加速乐及备用全配置前端的作法,将恶意短时流量攻击的损失时间降到最短。现将C这台机用作全配置的NGINX前端,A和B前端的任何NGINX配置都会通过RSYNC同步到C这台机器上。

 

部署的思路如下:

规范A和B的nginx配置目录(用include conf.d/*来实现),在这两个服务器上配置一个rsync的服务端进程,然后,在C上每两分钟运行rsync同步进程,及时的将A和B上的NGINX反映到C上面。达到全配置实时生效的效果。

 

配置如下:

 

一,A上的配置(B上相同配置)

         1,安装rsync(阿里云默认已有此程序)

              

         2,生成文件rsyncd.conf,内容如下:

      

#secrets file = /etc/rsyncd.secrets

#motd file = /etc/rsyncd.motd

read>list = yes

uid = XXX

gid = XXX

use chroot = no

max connections = 5

log file = /var/log/rsyncd.log

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

# Remote sync configuration module

[hosts_sync]

comment = nginx conf rsync

path = /XXX/nginx/conf/conf.d/

read only = yes

#auth users = rsync

 

         3,启动rsync进程,将之加入自动启动

                 a, /usr/bin/rsync --daemon

                   b,在/etc/rc.local里写入:/usr/bin/rsync –daemon (也可以其它方式实现)

二,161上配置:

         1,crontab定时同步脚本:

*/2     *       *       *       *        /usr/bin/rsync -arv X.X.X.X::hosts_sync/ /XXX/nginx/conf/conf.d/ >> /var/log/rsyncd.log 2>&1

*/2     *       *       *       *        /usr/bin/rsync -arv X.X.X.X::hosts_sync/ XXX/nginx/conf/conf.d/ >> /var/log/rsyncd.log 2>&1

         2,Crontab定时reload脚本(必要时可手工)

           10      */2     *       *       *       service nginx reload

三,测试

    1,  查看NGINX目录,相关文件已生成

    2,  日志生成如下:

 

实现Rsync同步Nginx前端配置

标签:

原文地址:http://www.cnblogs.com/aguncn/p/4378732.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!