0

如何使用 IIS 创建 Nginx 负载均衡器?这个问题对我来说并不容易描述。所以我把我的问题分成了两个阶段。

1)IIS网站(app1.xyz.com,app2.xyz.com,app3.xyz.com)前面有1个Nginx服务器(app.xyz.com)所有请求都发送到app.xyz.com,因为它是负载均衡器。这样做容易吗?如何通过使用带有 powershell 的 Octopus 来做到这一点。

2) 我必须通过同时部署 app2.xyz.com 和 app3.xyz.co 来停止 app1.xyz.com。在职的。

什么时候

 app1.xyz.com (DOWN)    app1.xyz.com (UP)     app1.xyz.com (UP)
 app1.xyz.com (UP)      app1.xyz.com (DOWN)   app1.xyz.com (UP)
 app1.xyz.com (UP)      app1.xyz.com (UP)     app1.xyz.com (DOWN)

在不停止所有 Web 应用程序的情况下逐步部署。请看下面的图片我画的:

在此处输入图像描述

在此处输入图像描述

nginx.conf:


worker_processes  4;

events {
    worker_connections  1024;
}


http {
    client_max_body_size 100M;
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;


 upstream loadbalancer.xyz.com {
    server staging1.xyz.com:996;
    server staging2.xyz.com:997;
    keepalive 15;
  }

server {
    listen 999;

    location / {


      proxy_pass https://loadbalancer.xyz.com;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header Host $http_host;
      proxy_set_header X-NginX-Proxy true;
    }

  }
}

4

1 回答 1

1

如果您没有完全使用 nginx 作为负载平衡器,我已经完成了与使用 IIS 作为代理/负载平衡器相同的事情,该代理/负载平衡器路由到它后面的应用程序 IIS 服务器。然后,如果您愿意,您也可以使用 Windows 网络负载均衡器为您的代理(假设您制作超过 1 个)制作代理/负载均衡器以实现高可用性。如果您对此感兴趣,我可以为您提供帮助,但使用 nginx 我不是负载均衡器的最佳选择。我会发表评论,但我是堆栈溢出的新手......对不起......

于 2019-05-31T04:35:55.263 回答