Nginx负载平衡上游代理

时间:2016-12-09 07:56:58

标签: tomcat nginx docker webserver

我在nginx负载均衡方面需要一些帮助。 我有一个docker实例,它提供一个静态网页,它有两个容器 让我们说吧 192.168.1.1:8081 - >提供静态页面 192.168.1.1:8082 - >提供相同的静态页面

现在我想要的是用Nginx对这两个网站进行负载均衡。 当我输入这些IP地址192.168.1.1时,这些IP必须为我的两个站点之间的负载提供服务。

在我的Nginx中,我必须为此设置两个文件

Nginx.conf,在这些文件中我必须包含我的default.conf文件。 default.conf文件包含以下信息。

upstream mynewsite {

        server 192.168.1.1:8081;
        server 192.168.1.1:8082;       
}

server {
listen 80; # I tried by commenting with these also
server_name  192.168.1.1;
#server_name mynewsite; # I tried like this also
index index.htm index.html index.php; 
access_log /var/log/nginx/access.log ;
error_log /var/log/nginx/error.log;

location / {
        proxy_pass http://mynewsite;
        }

当我输入192.168.1.1:8081时,我可以从第一个docker容器访问该页面。 当我输入192.168.1.1:8082时,我可以从第二个docker容器访问该页面。

但是当我输入192.168.1.1时,我无法访问该页面。

我使用的是Centos 6.8和nginx版本:nginx / 1.10.2, Docker版本1.7.1 我的docker容器上的Tomcat应用程序服务器。 注意://192.168.1.1不是确切的ip,我使用了其他一些IP 任何建议来解决此问题。 谢谢, 内甚

1 个答案:

答案 0 :(得分:0)

从小处开始,检查你的日志,然后从那里开始,也许nginx都无法到达上游:

server {
listen 80;
  location / {
        proxy_pass http://mynewsite;
        }
}

upstream mynewsite {

        server 192.168.1.1:8081;
        server 192.168.1.1:8082;       
}