部署Nginx+Tomcat负载均衡集群

杀马特。学长 韩版系。学妹 提交于 2019-12-24 04:18:56
  • Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。

  • 因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

  • Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强

  • 下面将讲解以Nginx为负载均衡器,Tomcat为应用服务器的负载集群的设置方

本次的实验服务器系统为 CentOS 7
环境包:pcre-devel zlib-devel openssl-devel gcc gcc-c++
Nginx :192.168.10.130/24 (安装包nginx-1.6.0)
Tomcat1:192.168.10.128/24 (jdk-8u91-linux-x64.、apache-tomcat-8.5.16)

Tomcat2:192.168.10.129/24 (jdk-8u91-linux-x64.、apache-tomcat-8.5.16)
如图:
在这里插入图片描述
首先配置安装 2台Tomcat服务器的 :Java环境和Tomcat

# systemctl stop firewalld.service  //关闭防火墙
# setenforce 0
# mkdir /gx | mount.cifs //192.168.10.1/gx /gx      //挂载共享文件
# tar zxvf /gx/jdk-8u91-linux-x64.tar.gz -C /opt
# mv /opt/jdk1.8.0_91/ /usr/local/java   
# vim /etc/profile.d/java.sh
 export JAVA_HOME=/usr/local/java          //设置Java根目录//
 export PATH=$PATH:$JAVA_HOME/bin          //在PATH环境变量中添加Java根目录下的bin/子目录//

# source /etc/profile.d/java.sh        //java.sh脚本导入到环境变量,使其生效//
# java -version            //查看版本//

安装Tomcat

tar zxvf /gx/apache-tomcat-8.5.16.tar.gz -C /opt/
# mv /opt/apache-tomcat-8.5.16/ /usr/local/tomcat8
# /usr/local/tomcat8/bin/startup.sh               //启动tomcat//
# netstat -ntap | grep 8080                  //监听8080端口//
# /usr/local/tomcat8/bin/shutdown.sh           //关闭tomcat//

添加测试页面
Tomcat 1 输出http://www.test1.com (方便测试)
Tomcat 2 输出 http://www.test2.com

 # mkdir -pv /web/webapp1             //创建web目录//
    # vim /web/webapp1/index.jsp         //创建测试页面
   <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 <html>
     <head>
    <title>JSP test1 page</title>
     </head>
     <body>
             <% out.println("Welcome to test site,http://www.test1.com");%>  
     </body>
 </html>

在Tomcat的配置文件里添加web目录

# vim /usr/local/tomcat8/conf/server.xml
 <Host name="localhost"  appBase="webapps"
    unpackWARs="true" autoDeploy="true">
            //在该行下面添加↓↓↓//
<Context docBase="/web/webapp1" path="" reloadable="false">
</Context>    

# /usr/local/tomcat8/bin/startup.sh               //启动tomcat//

在这里插入图片描述
安装配置Nginx

# systemctl stop firewalld.service  //关闭防火墙
# setenforce 0
# yum install pcre-devel zlib-devel openssl-devel gcc gcc-c++ -y
# useradd  -s /bin/false www
# tar zxvf /gx/nginx-1.6.0.tar.gz -C /opt
# cd /opt/nginx-1.6.0/
# ./configure \
--prefix=/usr/local/nginx \
--user=www \
--group=www \
--with-file-aio \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-http_flv_module \
--with-http_ssl_module 

# make && make install    //安装编译安装

修改配置文件

# vim /usr/local/nginx/conf/nginx.conf
    #gzip  on;
 //在该行下面添加两台Tomcat的地址端口↓↓↓
    upstream tomcat_server {                            
                        server 192.168.10.128:8080 weight=1;
                        server 192.168.10.129:8080 weight=1;    
                    }                   
        server {
            listen       80;
         .....
location / {
                    root   html;
                    index  index.html index.htm;
                         // 在该行下面添加↓↓↓//
                    proxy_pass http://tomcat_server;       
            }       

在这里插入图片描述
在这里插入图片描述

# /usr/local/nginx/sbin/nginx -t                  //检测是否成功//
# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/  
# nginx     //启用nginx服务//

测试下负载均衡
在浏览器输入 192.168.10.130 连续刷新后可以在该地址分别看到 http://www.test1.com 和http://www.test2.com 就是部署成功。
在这里插入图片描述
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!