nginx rsync inotify實現負載均衡

2021-10-01 15:29:21 字數 1860 閱讀 7191

實驗環境

前端nginx:ip 192.168.6.242,對後端的wordpress**做反向**實現負載均衡

後端nginx:ip 192.168.6.36,192.168.6.205都部署wordpress,並使用相同的資料庫

安裝rsync和inotify

在後端的兩個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使用的密碼檔案

vim /root/inotify.sh

#!/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

"$ was rsynced"

>>/tmp/rsync.log 2>

&1done

nohup /root/inotify.sh &
配置前端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

}

Keepalived nginx實現負載均衡高可用

keepalived只是解決 的單點和位址漂流問題,所以只能對本機服務進行的nginx服務進行健康監控檢測 在部署站點規模不大的 架構是一般通常使用keepalived nginx來實現 從而實現輕量級的排程服務功能 用到lvs的場景不是很多,只有大規模的站點部署是才有可能用到。nginx實現高可用...

Nginx SpringBoot實現負載均衡

在介紹nginx的負載均衡實現之前,先簡單的說下負載均衡的分類,主要分為硬體負載均衡和軟體負載均衡,硬體負載均衡是使用專門的軟體和硬體相結合的裝置,裝置商會提供完整成熟的解決方案,比如f5,在資料的穩定性以及安全性來說非常可靠,但是相比軟體而言造價會更加昂貴 軟體的負載均衡以nginx這類軟體為主,...

springcloud(Ribbon負載均衡)

搭建步驟 1.使用者服務的集群 2.訂單服務整合ribbon 2.1.匯入ribbon的依賴 2.2.在resttemplate的bean定義方法上加上 loadbalanced註解 2.3.把訂單的controller向使用者發起呼叫的resttemplate的url使用服務名呼叫,如 http ...