关于Nginx负载均衡目录同步问题

近期外包接单,做了一个简单的系统,本以为如此简单一个Tomcat就足以满足,结果客户要求需要两台服务器负载均衡,之前负载均衡都是由专门的人负责,第一次自己实现Nginx,走了不少弯路。

由于项目组有附件上传的功能,没有专门的文件服务器,将附件都存放在了ROOT底下,负载均衡后发现经常找不到图片,明显是因为两台服务器资源不同步的问题造成的,于是开始研究服务器目录同步,使用Rsync+Sersync实现目录同步,具体步骤:

1:制定两台服务器中的一台为主服务器(安装软件rsync+sersync,但是不需要启动rsync),另一台为从服务器(安装软件rsync,需要启动rsync)

2:从服务器安装完rsync需要对/etc/rsyncd.conf 进行配置:

uid = root                                  #拥有目录权限用户

gid = root                                  #拥有目录权限的组

use chroot = no                         #内网使用可以不用配置

max connections = 200              #最大连接数  

timeout = 300                               #超时时间

pid file = /var/run/rsyncd.pid              #启动进程写入此PID文件

lock file = /var/run/rsyncd.lock            #lock文件来配合最大连接数参数

log file = /var/log/rsyncd.log               #日志文件

ignore errors = yes                         #忽略I/O错误

read only = false                           #允许读写      

list = false                                #不列出列表

hosts allow = 192.168.1.0/24                #允许网段

hosts deny = *                              #拒绝其他网段

auth users = users                          #认证用户

secrets file = /opt/app/rsyncd/auth.pass    #密码文件

[web]                                       #同步目录

path = /backup/web

设置 /opt/app/rsyncd/auth.pass文件格式为user:password

给 /opt/app/rsyncd/auth.pass添加600权限 chmod 600  /opt/app/rsyncd/auth.pass

启动rsync  rsnyc --daemon

3:主服务器部署

主服务器安装完sersync后需要配置confxml.xml,在sersync的安装目录下

<sersync>

        <localpath watch="/backup/web"> <!--本机同步目录-->

    <remote ip="192.168.1.201" name="web"/>    <!--从服务器IP及模块名称,需要与从服务器/etc/rsyncd.conf配置的模块名完全一致-->

    <!--<remote ip="192.168.8.39" name="tongbu"/>-->

    <!--<remote ip="192.168.8.40" name="tongbu"/>-->

    </localpath>

     <rsync>

     <commonParams params="-artuz"/>

    <auth start="true" users="users" passwordfile="/opt/app/sersyncd/auth.pass"/>

            <!--认证用户及认证从服务器密码文件目录,/opt/app/sersyncd/auth.pass(600权限) 里面只需要设定密码,users 要与从服务器设定的用户一致-->

       <userDefinedPort start="false" port="874"/><!-- port=874 端口需要与从服务器rsync设定的一致,如从服务器设定端口8080此处的端口也需要修改成8080  start="true" -->

       <timeout start="false" time="100"/><!-- timeout=100 -->

        <ssh start="false"/>

        </rsync>

<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/>

<!--default every 60mins execute once-->

<crontab start="false" schedule="600"><!--600mins-->

 <crontabfilter start="false">

   <exclude expression="*.php"></exclude>

  <exclude expression="info/*"></exclude>

            </crontabfilter>

        </crontab>

        <plugin start="false" name="command"/>

    </sersync>

启动sersync :/opt/soft/sersync/sersync/sersync2 -d -r -o /opt/soft/sersync/sersync/confxml.xml


由于只能由主服务器同步到从服务器,因此当负载均衡到从服务器时,附件无法被同步到主服务器,访问图片依然存在404错误,因此需要对Nginx进行配置,通过动静分离的方式,将所有静态图片访问的请求都指向从服务器,因此解决上传图片找达不到问题。

location ~ .*\.(gif|jpg|jpeg|png|flv|mp3)$ { #静态

          proxy_pass http://192.168.1.12:80/;

        }

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,941评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,397评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,345评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,851评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,868评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,688评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,414评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,319评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,775评论 1 315
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,945评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,096评论 1 350
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,789评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,437评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,993评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,107评论 1 271
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,308评论 3 372
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,037评论 2 355