Linux下配置Nginx与Tomcat负载均衡及反代理

LinuxNginxtomcat负载均衡搭建

1. 安装JDK

安装JDK可以是手动安装也可以是自动安装,此处为避免出错选择手动配置JDK,首先,自行下载jdk (linux版本),此处选择的是jdk-8u161-linux-x64.tar.gz

通过mv命令将该压缩包移动到目标文件夹下

通过tar -zxvf jdk-8u161-linux-x64.tar.gz将压缩包解压到当前目录下

解压完成之后开始配置环境变量

Sudo vi /etc/environment

在该文件中进行配置

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin"

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export JAVA_HOME=/usr/zgrx/jvm/jdk1.8.0_161

配置好之后通过命令source /etc/environment使配置生效

2. 安装配置Tomcat

此处为便捷测试便在同一台服务器上安装多个Tomcat服务器进行测试(注意要修改服务器端口,避免冲突)

首先,从tomcat官网进行下载,此处使用的是tomcat8Tomcat官网网址:http://tomcat.apache.org/

下图是此次所使用的服务器版本,直接上图,供各位看客参考。

 Linux下配置Nginx与Tomcat负载均衡及反代理_第1张图片

可以通过SSH或者RUTTY等软件远程连接服务器,然后将tar文件发送到服务器。

通过sudo mkdir ./tomcat 建立存放服务器的的目录

通过tar -zxvf apache-tomcat-8.0.50.tar.gz 对服务器进行解压

解压后的目录如图所示:

 

通过cd 命令依次进入解压后的tomcat下的conf目录,如下图所示:

 

通过sudo vi server.xml 命令进入服务器配置文件,对服务器端口进行配置,配置如下:

Server1 : 127.0.0.1:8080  8005  8009(默认端口)

修改如下:

Server2 : 127.0.0.1:8081  8015  8019

 

 

Tomcat手动开启命令(进入tomcat下的bin目录):sudo ./startup.sh

Tomcat关闭命令 : sudo ./shutdown.sh

  

3. Nginx安装

此处使用在线安装方式:sudo apt-get install Nginx

在线安装的Nginx默认目录为 /etc/Nginx

进入该目录,通过 sudo vi nginx.conf 命令进入Nginx配置文件中进行配置,在http下进行如下添加:

http  {

  ##

        # Basic Settings

        ##

        sendfile on;

        tcp_nopush on;

        tcp_nodelay on;

        keepalive_timeout 65;

        types_hash_max_size 2048;

        # server_tokens off;

     #配置负载均衡服务器列表

     upstream myteam{

                ip_hash; #解决session问题

                server localhost:8080 weight=1;

                server localhost:8081 weight=1;

        }

        server {

                listen  80;  #监听端口

                server_name     服务器本机IP或者域名;

                location / {

                proxy_pass      http://myteam;

                proxy_redirect  default;

                #设置代理

                proxy_set_header Host $host;

                proxy_set_header X-Real-IP $remote_addr;

                }

 

                #err_page 500 502 503 504 /50x.html;

                #location = /50x.html{

                #       root html;

                #}

        }

}

配置好后退出

Nginxsudo nginx

停止Nginxsudo nginx -s stop

先将多个tomcat分别启动后,再启动Nginx,此时在远程通过IP或者域名访问该服务器时,会发现可以直接跳转到tomcat服务器的首页,且挂掉一个tomat时亦不会有太大的影响。


注意事项:Nginx中配置代理时proxy_pass下只能使用IP地址或者域名,而请勿写为localhost,写为localhost时只能本地访问到

 

 

 

 

你可能感兴趣的:(Java,分布式,工具,Nginx,Tomcat)