码迷,mamicode.com
首页 > 其他好文 > 详细

tomcat单机多应用部署,Nginx负载均衡

时间:2019-10-15 22:38:56      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:size   循环   地址   变量   usr   tomcat端口   环境   80端口   需要   

一、Windows

1. 安装两个tomcat服务器以上
  技术图片
2. 配置环境变量
    CATALINA_BASE:D:\servers\Tomcat8
    CATALINA_HOME:D:\servers\Tomcat8
    TOMCAT_HOME:D:\servers\Tomcat8

    CATALINA_2_BASE:D:\servers\Tomcat8 - 2
    CATALINA_2_HOME:D:\servers\Tomcat8 - 2
    TOMCAT_2_HOME:D:\servers\Tomcat8 - 2

3. 修改配置文件,除第一个tomcat,要保证每个tomcat端口不相同
    (1)找到${tomcat}/bin目录下的catalina.bat和startup.bat文件,        
     将里面的CATALINA_HOME、CATALINA_BASE值改为     CATALINA_2_BASE和CATALINA_2_HOME。即对应每个tomcat配置的环境变量,如果有第三个,就配置成 CATALINA_3_BASE、CATALINA_3_HOME。以此类推。
  技术图片技术图片
2)找到${tomcat}/conf下的server.xml
    将里面的端口以1000递增修改。比如第一个tomcat为8080不变,第二个就是9080,第三是10080......当然端口不一样即可,不强制1000递增
    需要改动三个地方,如下:
  技术图片
   技术图片

···· 技术图片

4. 启动tomcat,进行访问。(页面时个人写的东西,请忽略,出现tomcat首页即可,只要不报错)

 技术图片

 技术图片

 Nginx负载均衡

1. 安装Nginx:略
2. 配置${nginx}/conf/nginx.conf
    在此文件中添加:include vhost/*.conf; 添加到http标签内,server标签外。 此代码类似添加代码块,将配置写到别的配置文件中,方便管理。
   
3. 添加配置文件,编写配置。
    (1)在nginx.conf同级下创建文件夹vhost,与配置相同。
    (2)创建tomcatServer.conf文件(名称自定)
    (3)加入如下内容:
        upstream tomcat.wangjun.com{
        server 127.0.0.1:9080 weight=2;
        server 127.0.0.1:8080 weight=2;
      }

      server {
          listen 80;
          autoindex off;
          server_name tomcat.wangjun.com;
          access_log D:/Nginx/nginx-1.16.1/logs/access.log combined;
          index index.html index.htm index.jsp index.php;
          location / { 
                proxy_pass http://tomcat.wangjun.com;
              add_header Access-Control-Allow-Origin *;
          }
      }
4. 我们发现tomcatServer.conf有tomcat.wangjun.com,这个是域名,需要配置,找到C:\Windows\System32\drivers\etc中的host文件,在里面加入:127.0.0.1 tomcat.wangjun.com一行。tomcat.wangjun.com这个名称自定义,只要与tomcatServer.conf对应上即可
  技术图片

 


 5.启动两个tomcat,分别访问各tomcat是否启动成功,然后访问

http://tomcat.wangjun.com 多次刷新,发现会循环访问各个tomcat服务器

注意:
  1. 轮询权重weight最好不要设置1,改为别的数字。
  2. 保证配置的tomcat.wangjun.com 域名在Nginx别的配置文件没有被使用过,否则只会访问8080端口的tomcat,不会循环随机访问其他tomcat。个人遇见过此问题。

 二、linux,mac

(一)、修改/etc/profile 增加tomcat环境变量
    export CATALINA_BASE=/usr/local/tomcat/apache-tomcat-8.5-1
    export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-8.5-1
    export TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-8.5-1

    export CATALINA_2_BASE=/usr/local/tomcat/apache-tomcat-8.5-2
    export CATALINA_2_HOME=/usr/local/tomcat/apache-tomcat-8.5-2
    export TOMCAT_2_HOME=/usr/local/tomcat/apache-tomcat-8.5-2

执行: $ source /etc/profile  #使配置生效

(二)、更改配置文件,除第一个tomcat不变,配置其他tomcat。示例第二个tomcat
    1.找到${tomcat}/bin/catalina.sh
    添加如下内容:
        export CATALINA_BASE=$CATALINA_2_BASE
        export CATALINA_HOME=$CATALINA_2_HOME
技术图片
  2.找到${tomcat}/conf/server.xml

   将里面的端口以1000递增修改。比如第一个tomcat为8080不变,第二个就是9080,第三是10080......当然端口不一样即可,不强制1000递增
    需要改动三个地方,如下:
技术图片技术图片

 技术图片

 

   3. 启动各个tomcat,通过各自端口号地址访问。

技术图片

 

注意: 如果部署多个tomcat示例,端口号必须不能重复,必须是系统中没有使用。

 

Nginx负载均衡,和windows相同,略。

 

tomcat单机多应用部署,Nginx负载均衡

标签:size   循环   地址   变量   usr   tomcat端口   环境   80端口   需要   

原文地址:https://www.cnblogs.com/FondWang/p/11677319.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!