双主模型的Nginx Proxy高可用集群 详细示例(Nginx + Keepalive)

1、绘制拓扑

在这里插入图片描述

2、各个虚机的基础配置

2.1 Server-1(HTTP配置及默认主页配置)

[root@Neo_Tang ~]# ifconfig | grep "inet 192" -B 1
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.12  netmask 255.255.255.0  broadcast 192.168.10.255
[root@Neo_Tang ~]# curl http://192.168.10.12
<h1>HTTP web-server-1 192.168.10.12</h1>

2.2 Server-2(HTTP配置及默认主页配置)

[root@Neo_Tang ~]# ifconfig | grep "inet 192" -B 1
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.13  netmask 255.255.255.0  broadcast 192.168.10.255
[root@Neo_Tang ~]# curl http://192.168.10.13
<h1>HTTP web-server-2 192.168.10.13</h1>

2.3 Nginx-1(Nginx Proxy配置)

[root@Neo_Neo ~]# ifconfig | grep "inet 192" -B 1
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.11  netmask 255.255.255.0  broadcast 192.168.1.255
--
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.11  netmask 255.255.255.0  broadcast 192.168.10.255
[root@Neo_Neo ~]# cat /etc/nginx/nginx.conf
http {
   
    upstream webservers {
   
	server 192.168.10.12:80 weight=1;
	server 192.168.10.13:80 weight=1;
    }	
    
    server {
   
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  www.neotang.com;
        root         /usr/share/nginx/html;
        
        location / {
   
		proxy_pass http://webservers;
        }
        
    }

2.4 Nginx-2(Nginx Proxy配置)

[root@Tang_Tang ~]# ifconfig | grep "inet 192" -B 1
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.15  netmask 255.255.255.0  broadcast 192.168.1.255
--
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.18  netmask 255.255.255.0  broadcast 192.168.10.255
[root@Tang_Tang ~]# cat /etc/nginx/nginx.conf
http {
   
    upstream webservers {
   
	server 192.168.10.12:80 weight=1;
	server 192.168.10.13:80 weight=1;
    }	
    
    server {
   
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  www.neotang.com;
        root         /usr/share/nginx/html;
        
        location / {
   
		proxy_pass http://webservers;
        }
        
    }

3、Nginx 服务器访问后端 Server(后端服务器能被成功访问)

3.1 Nginx-1

[root@Tang_Tang ~]# ifconfig | grep "inet 192" -B 1
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.15  netmask 255.255.255.0  broadcast 192.168.1.255
--
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.18  netmask 255.255.255.0  broadcast 192.168.10.255
[root@Tang_Tang ~]# curl http://192.168.10.12
<h1>HTTP web-server-1 192.168.10.12</h1>
[root@Tang_Tang ~]# curl http://192.168.10.13
<h1>HTTP web-server-2 192.168.10.13</h1>

3.1 Nginx-2

[root@Neo_Neo ~]# ifconfig | grep "inet 192" -B 1
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.11  netmask 255.255.255.0  broadcast 192.168.1.255
--
ens37: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.11  netmask 255.255.255.0  broadcast 192.168.10.255
[root@Neo_Neo ~]# curl http://192.168.10.12
<h1>HTTP web-server-1 192.168.10.12</h1>
[root@Neo_Neo ~]# curl http://192.168.10.13
<h1>HTTP web-server-2 192.168.10.13</h1>

4、用户进行访问(Nginx 代理配置完毕后,进行后端服务器访问)

4.1 用户A进行访问

[root@Tang-Neo ~]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.9  netmask 255.255.255.0  broadcast 192.168.1.255
[root@Tang-Neo ~]# for i in {
   1..10}; do curl http://192.168.1.11; done;
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
[root@Tang-Neo ~]# for i in {
   1..10}; do curl http://192.168.1.15; done;
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>

4.2 用户B进行访问

[root@Neo ~]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.10  netmask 255.255.255.0  broadcast 192.168.1.255
[root@Neo ~]# for i in {
   1..10}; do curl http://192.168.1.11; done;
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-2 192.168.10.13</h1>
<h1>HTTP web-server-1 192.168.10.12</h1>
[root@Neo ~]# for i in {
   1..10}; do curl http://192.168.1.15; done;
<h1>HTTP web-server-1 192.168.10.12</h1>
<h1>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值