Keepalived + Nginx高可用性クラスター(マスタースレーブモード)

1.回路図分析

ここに画像の説明を挿入

2.準備

1. 2つのサーバー192.168.211.25および192.168.211.35が必要です

ここに画像の説明を挿入
仮想マシンのクローンを作成したら、IPアドレスを変更するだけです。

2. 2つのサーバーにnginxをインストールします

3.両方のサーバーにkeepalivedをインストールします

yumコマンドを使用してインストールし yum install keepalived –y
ここに画像の説明を挿入
ここに画像の説明を挿入
ます。インストール後、ディレクトリkeepalivedがetcに生成されます。ファイルkeepalived.confがあります。
ここに画像の説明を挿入

3.高可用性構成を完了する

1.メインサーバーの構成

keepalived.confを変更する

global_defs {
 notification_email {
		 [email protected]
		 [email protected]
		 [email protected]
	}
	 notification_email_from [email protected]
	 smtp_server 192.168.211.25
	 smtp_connect_timeout 30
	 router_id LVS_DEVEL
}
vrrp_script chk_http_port {
	 script "/usr/local/src/nginx_check.sh"
	 interval 2 	#(检测脚本执行的间隔)
	 weight 2
}
vrrp_instance VI_1 {
	 state MASTER 	# 备份服务器上将 MASTER 改为 BACKUP
	 interface ens33 	// 网卡
	 virtual_router_id 51 # 主、备机的 virtual_router_id 必须相同
	 priority 100 	# 主、备机取不同的优先级,主机值较大,备份机值较小
	 advert_int 1
	 authentication {
		 auth_type PASS
		 auth_pass 1111
	}
	virtual_ipaddress {
		192.168.211.50 // VRRP H 虚拟地址
	}
}

/ usr / local / srcに検出スクリプトnginx_check.shを追加します

#!/bin/bash
A=`ps -C nginx –no-header |wc -l`
if [ $A -eq 0 ];then
    /usr/local/nginx/sbin/nginx
    sleep 2
    if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
        killall keepalived
    fi
fi

2.スレーブ構成

keepalived.conf 変更
ここに画像の説明を挿入
して、検出スクリプトnginx_check.shを/ usr / local / srcに追加します(マスターサーバーと同じ)。

3. nginxを起動し、2つのサーバーでkeepalived

nginxを起動:./nginx
keepalivedを起動:systemctl start keepalived.service

4.テスト結果

通常は、アドレス192.168.211.50にアクセスして、Nginx
ここに画像の説明を挿入
停止し、メインサーバーを維持します。テスト結果
ここに画像の説明を挿入
現時点では、アドレス192.168.211.50に引き続きアクセスできます。
ここに画像の説明を挿入

公開された135元の記事 ウォン称賛41 ビュー4247

おすすめ

転載: blog.csdn.net/weixin_41842236/article/details/105459015