ホームページ >運用・保守 >Nginx >負荷分散を実現するために nginx+rsync+inotify を構成する方法

負荷分散を実現するために nginx+rsync+inotify を構成する方法

PHPz
PHPz転載
2023-05-11 15:37:061538ブラウズ

実験環境

フロントエンド nginx: ip 192.168.6.242、複雑なバランスを実現するためのバックエンド wordpress Web サイトのリバース プロキシ
バックエンド nginx: ip 192.168 .6.36, 192.168 .6.205 WordPress をデプロイし、同じデータベースを使用します

1. 2 つの 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を使用しています
chroot を使用 = on
最大接続数 = 4
タイムアウト = はい
[wordpress]
パス = /usr/local/nginx/html/wordpress
コメント = rsync ファイル
エラーを無視
readonly = no
list = yes
auth users = rsync
secrets file = /etc/rsync_server.passwd #アカウントのパスワードを指定して、別のノードに自身へのアクセスを提供しますアカウント

# vim /etc/rsync_server.passwd











#rsync同期スクリプト
#!/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' -emodify,delete,create,attrib $src | while read files

do

$rsync -vzrtopg –delete – progress –password-file=/etc/rsync_client。 passwd $src $user@$host::$dst
echo "${files} が rsync されました" >>/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
アップストリーム wordpress {
サーバー 192.168.6.205 Weight=1;
サーバー 192.168 .6.36 Weight=1;
}

server {

location / {

proxy_pass http://wordpress;負荷分散を実現するために nginx+rsync+inotify を構成する方法 proxy_redirect off;

proxy_set_header host $host;## # proxy_set_header x-real-ip $remote_addr;### }###}######3. Wordpress の設定を変更します。サイト アドレスをフロントエンドの IP アドレスまたはドメイン名に変更する必要があります。 nginx############

以上が負荷分散を実現するために nginx+rsync+inotify を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。