部署Nginx+Tomcat负载均衡集群
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了部署Nginx+Tomcat负载均衡集群相关的知识,希望对你有一定的参考价值。
- 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 就是部署成功。
以上是关于部署Nginx+Tomcat负载均衡集群的主要内容,如果未能解决你的问题,请参考以下文章
Tomcat之Nginx+Tomcat实现负载均衡动静分离集群部署