nginx+rsync+inotify实现负载均衡配置方法

 更新时间:2014年11月02日 15:21:06   作者:运维笔记  
这篇文章主要介绍了nginx+rsync+inotify实现负载均衡配置方法,需要的朋友可以参考下

实验环境

前端nginx:ip 192.168.6.242,对后端的wordpress网站做反向代理实现复杂均衡
后端nginx:ip 192.168.6.36,192.168.6.205都部署wordpress,并使用相同的数据库

1、在后端的两个wordpress上配置rsync+inotify,两服务器都开启rsync服务,并且通过inotify分别向对方同步数据
下面配置192.168.6.205这台服务器
vim /etc/rsyncd.conf
uid = nginx
gid = nginx
port = 873
host all = 192.168.6.36     #另外一台wordpress使用192.168.6.205
use chroot = on
max connections = 4
timeout = yes
[wordpress]
path = /usr/local/nginx/html/wordpress
comment = rsync files
ignore errors
read only = no
list = yes
auth users = rsync
secrets file = /etc/rsync_server.passwd     #指定帐号密码,用于提供另外一个节点访问自身的帐号

vim /etc/rsync_server.passwd
rsync:rsync

vim /etc/rsync_client.passwd
rsync                                                     #用于访问另外一个wordpress使用的密码文件

配置inotify同步脚本
#!/bin/bash
host=192.168.6.36                  #另外一个wordpress
src=/usr/local/nginx/html/wordpress/
dst=wordpress
user=rsync
inotifywait=/usr/local/inotify/bin/inotifywait
rsync=/usr/bin/rsync
$inotifywait -mrq –timefmt '%d/%m/%y %H:%M' –format '%T %w%f' -e modify,delete,create,attrib $src | while read files
do
       $rsync -vzrtopg –delete –progress –password-file=/etc/rsync_client.passwd $src $user@$host::$dst
        echo "${files} was rsynced" >>/tmp/rsync.log 2>&1
done

2、配置前端nginx实现反向代理
vim /usr/local/nginx/conf/nginx.conf
#在http段中加入
include vhost/wordpress.conf;

mkdir /usr/local/nginx/confi/vhost
vim /usr/local/nginx/confi/vhost/wordpress.conf
upstream wordpress {
   server 192.168.6.205 weight=1;
   server 192.168.6.36 weight=1;
}

server {
   location / {
       proxy_pass http://wordpress;
       proxy_redirect      off;
       proxy_set_header    Host        $host;
       proxy_set_header    X-Real-IP   $remote_addr;
   }
}

3、修改wordpress中的设置,必须将这个了的站点地址改为前端nginx的ip地址或者域名

相关文章

  • nginx如何开启Gzip压缩

    nginx如何开启Gzip压缩

    Gzip压缩能显著减小网站静态资源如css、js、html的体积,大幅提升加载速度,它通过服务器端压缩,浏览器端解压,适用于大多数现代浏览器,但应避免对已压缩的图片或大文件进行Gzip压缩,以免无效增加CPU负担,配置Gzip压缩需在nginx的http块内设置并重启nginx
    2024-09-09
  • nginx ssl免密码重启教程详解

    nginx ssl免密码重启教程详解

    这篇文章给大家介绍了nginx 如何启动以及nginx ssl 免密码重启 的方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-01-01
  • nginx转发内网图片的代码示例

    nginx转发内网图片的代码示例

    这篇文章主要给大家介绍了nginx转发内网图片,文章通过代码示例介绍的非常详细,对大家的学习或工作有一定的帮助,感兴趣的小伙伴可以自己动手试一下
    2023-10-10
  • keepalived+nginx实现网站高可用性

    keepalived+nginx实现网站高可用性

    本文主要介绍了keepalived+nginx实现网站高可用性,包含配置Keepalived实现双主热备集群架构,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-02-02
  • nginx根据二级目录转发服务以及带/和不带/的区别说明

    nginx根据二级目录转发服务以及带/和不带/的区别说明

    Nginx使用proxy_pass进行二级目录转发时,配置中的斜杠(/)影响路径的处理方式:带斜杠表示绝对路径,不带斜杠表示相对路径,具体转发到后端服务的URL会有所不同
    2024-12-12
  • 详解nginx中的日志配置

    详解nginx中的日志配置

    日志对于统计排错来说非常有利的,本文为大家总结了nginx日志相关的配置如access_log、log_format、open_log_file_cache等内容,感兴趣的小伙伴可以了解下
    2023-08-08
  • Nginx暴露出请求的真实IP的问题

    Nginx暴露出请求的真实IP的问题

    在工作中,经常会用用户实际请求的IP地址,本文主要介绍了Nginx暴露出请求的真实IP的问题,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • nginx 目录密码保护的设置方法

    nginx 目录密码保护的设置方法

    比如要对 网站目录下的 test 文件夹 进行加密认证
    2010-12-12
  • 通过Nginx配置实现外网访问内网数据库的操作指南

    通过Nginx配置实现外网访问内网数据库的操作指南

    项目开发部署中经常会遇到MySQL或Oracle数据库安装在内网,而我们的应用服务只能部署在外网,如果实现外网服务访问连接内网的数据库呢?本次介绍如何通过Nginx配置实现外网访问内网数据库,需要的朋友可以参考下
    2023-10-10
  • 重启或杀掉Nginx进程后丢失nginx.pid的解决办法

    重启或杀掉Nginx进程后丢失nginx.pid的解决办法

    在重启或杀掉nginx进程后,会丢失nginx.pid文件,导致nginx无法正常启动,这里分享下解决方法
    2014-01-01

最新评论