Nginx+Tomcat 负载均衡群集的实验环境及配置流程
admin
2023-03-15 09:01:18
0次

下文给大家带来Nginx+Tomcat 负载均衡群集的实验环境及配置流程,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验来做一个解答。

####实验环境  centos 6.5

####需要的安装包

jdk-7u65-linux-x64.gz

apache-tomcat-7.0.54.tar.gz

nginx-1.6.0.tar.gz


两台tomcat云服务器,一台Nginx 服务器

tomcat1 的ip 192.168.1.100:8080

tomcat2 的ip 192.168.1.101:8080

Nginx 的ip 192.168.1.102


注:试验中必须关闭防火墙,selinux和安装了gcc的环境


=========================tomcat1 的配置=============================

Nginx+Tomcat 负载均衡群集的实验环境及配置流程


(1)安装JDK,配置JAVA 环境 

[root@localhost ~]# tar zxvf jdk-7u65-linux-x64.gz

[root@localhost ~]# mv jdk1.7.0_65/ /usr/local/java

[root@localhost ~]# vim /etc/profile.d/java.sh   #在此路径下写一个脚本,内容如下    

     export JAVA_HOME=/usr/local/java

     export PATH=$PATH:$JAVA_HOME/bin

 

[root@localhost ~]# source /etc/profile.d/java.sh   

(2)安装配置Tomcat

[root@localhost ~]# tar xf apache-tomcat-7.0.54.tar.gz 

[root@localhost ~]# mv apache-tomcat-7.0.54 /usr/local/tomcat7

[root@localhost ~]# /usr/local/tomcat7/bin/startup.sh   #启动tomcat,如下所示

Using CATALINA_BASE:   /usr/local/tomcat7

Using CATALINA_HOME:   /usr/local/tomcat7

Using CATALINA_TMPDIR: /usr/local/tomcat7/temp

Using JRE_HOME:        /usr/local/java

Using CLASSPATH:       /usr/local/tomcat7/bin/bootstrap.jar:/usr/local/tomcat7/bin/tomcat-juli.jar

Tomcat started.

You have new mail in /var/spool/mail/root

(3)打开浏览器访问测试,http://  192.168.1.100:8080,出现如下界面则成功

Nginx+Tomcat 负载均衡群集的实验环境及配置流程

(4)建立JAVA的WEB 站点

[root@localhost ~]# mkdir -pv /web/webapp1   #创建web页面的目录

[root@localhost ~]# vim /usr/local/tomcat7/conf/server.xml  #修改配置文件,指定路径,添加×××区域内容

内容如下:

 

           

Nginx+Tomcat 负载均衡群集的实验环境及配置流程

[root@localhost ~]# vim /web/webapp1/index.jsp   #添加测试页面

内容如下:

[root@localhost java]# cat /web/webapp1/index.jsp 

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

 

  JSP test1 page

 

 

   <% out.println("welcome to test site,http://www.test1.com");%>

 

(5)验证测试成功

打开浏览器,输入http://192.168.1.100:8080,出现如下所示

Nginx+Tomcat 负载均衡群集的实验环境及配置流程

=========================Tomcat2 的配置=====================

Tomcat2 的配置方法基本同tomcat1,其中包括

(1)关闭iptables 防火墙

(2)安装JDK, 配置JAVA 环境,版本与Tomcat1 server 保持一致

(3)安装配置Tomcat,版本与Tomcat1 server 保持一致

(4)创建/web/webapp1 目录,修改Tomcat配置文件server.xml,将网站文件目录更改到/web/webapp1/路径下

(5)在/web/webapp1/路径下建立Index.jsp,为了区别测试页面index.jsp 的内容更改如下

[root@localhost ~]# cat  /web/webapp1/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

 

  JSP test2 page

 

 

   <% out.println("welcome to test site,http://www.test2.com");%>

 


==========================Nginx 的配置==============================

[root@localhost 桌面]# yum -y install prce-devel zlib-devel openssl-devel

[root@localhost 桌面]# groupadd www

[root@localhost 桌面]# useradd -g www www -s /bin/false

root@localhost 桌面]# mv nginx-1.6.0.tar.gz ~

[root@localhost 桌面]# cd ~

[root@localhost ~]# tar zxvf nginx-1.6.0.tar.gz 

[root@localhost ~]# cd nginx-1.6.0

[root@localhost 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

[root@localhost nginx-1.6.0]# make && make install

安装完成后编辑配置文件(前面为配置文件的行数,红色部分为添加内容)

[root@localhost init.d]# vim /usr/local/nginx/conf/nginx.conf


 32     #gzip  on;

 33     upstream tomcat_server {

 34         server 192.168.1.100:8080 weight=1;

 35         server 192.168.1.101:8080 weight=2;

 36 

 37             }


 

 43 

 44         #access_log  logs/host.access.log  main;

 45 

 46         location / {

 47             root   html;

 48             index  index.html index.htm;

 49             proxy_pass   http://tomcat_server;

 50         }

 51 

 52         #error_page  404              /404.html;


为了启动方便写一个Nginx 的脚本,并把它放在环境变量中,脚本内容如下

[root@localhost init.d]# vim /etc/init.d/nginx

#!/bin/bash

#chkconfig: - 99 20
#description: Nginx Server Control Script

PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in 
 start)
  $PROG
  ;;
  stop)
   kill -s QUIT $(cat $PIDF)
  ;;
  restart)
   $0 stop
   $0 start
  ;;
  reload)
  kill -s HUP $(cat $PIDF)
  ;;
  *)
   echo "Usage: $0 (start|stop|restart|reload)"
   exit 1
esac
exit 0

[root@localhost init.d]# echo "PATH=$PATH:/etc/init.d/" >> /etc/profile

[root@localhost init.d]# . /etc/profile

[root@localhost init.d]# nginx restart     #重启Nginx

测试配置文件是否正确

[root@localhost init.d]# /usr/local/nginx/sbin/nginx -t

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful


重新启动nginx 

[root@localhost init.d]# nginx restart 

[root@localhost init.d]# netstat -anpt | grep nginx

tcp        0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      40041/nginx 

测试负载均衡效果

打开浏览器输入http://192.168.1.102

不断刷新浏览器测试发现权重相同,页面会反复在两个页面来回切换。



注:如果是虚拟机调到同一个wmnat中,且配置ip地址是永久的,尽量不要配临时的容易出错

看了以上关于Nginx+Tomcat 负载均衡群集的实验环境及配置流程,如果大家还有什么地方需要了解的可以在行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,技术工程师在行业内拥有十几年的经验了。

 


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...