nginx+Tomcat的负载均衡配置
一:实验环境
VMware软件
一台centos7作为nginx代理服务器。IP地址:192.168.209.145
一台centos7作为Tomcat1节点服务器。IP地址:192.168.209.146
一台centos7作为Tomcat2节点服务器。IP地址:192.168.209.147
二:实验目的
通过访问nginx代理服务器,自动访问到配置的集群节点服务器
三:实验步骤
3.1:nginx代理服务器配置
首先安装nginx服务,可查看之前的博客,此处不再叙说
- 修改配置文件,添加Tomcat集群
[root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf
...省略内容
#gzip on;
upstream tomcat-server { '//添加节点服务器地址'
server 192.168.209.146:8080 weight=1;
server 192.168.209.147:8080 weight=1;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
proxy_pass http://tomcat-server; '//设置转发到节点服务器'
}
- 重启nginx服务
[root@nginx ~]# killall -s QUIT nginx
[root@nginx ~]# nginx
3.2:Tomcat节点配置
两个节点服务器搭建Tomcat服务
- 配置jdk环境
[root@tomcat ~]# cd /opt
[root@tomcat opt]# ls
apache-tomcat-8.5.16.tar.gz jdk-8u91-linux-x64.tar.gz rh
[root@tomcat opt]# tar zxvf jdk-8u91-linux-x64.tar.gz -C /usr/local/
[root@tomcat opt]# vim /etc/profile
//末行添加以下配置
export JAVA_HOME=/usr/local/jdk1.8.0_91
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib # .代表当前位置/usr/local/
export PATH=${JAVA_HOME}/bin:$PATH
[root@tomcat opt]# source /etc/profile
- 安装Tomcat
[root@tomcat opt]# tar apache-tomcat-9.0.16.tar.gz -C /usr/local/
[root@tomcat opt]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/
[root@tomcat opt]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/
- 创建测试页面
[root@tomcat1 local]# mkdir -pv /web/webapp1 '//创建站点目录'
mkdir: 已创建目录 "/web"
mkdir: 已创建目录 "/web/webapp1"
[root@tomcat1 local]# cd /web/webapp1/
[root@tomcat1 webapp1]# vim index.jsp '//创建页面'
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> '//设置支持中文字符集'
<html>
<head>
<title>JSP test1 page</title>
</head>
<body>
<% out.println("Welcome tomcat1 Web");%> '//输出的信息,Tomcat2节点内容设置为Welcome tomcat2 Web'
</body>
</html>
- 修改Tomcat配置文件中的站点信息
[root@tomcat1 webapp1]# vim /usr/local/tomcat/conf/server.xml '//修改配置文件中站点信息'
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context docBase="/web/webapp1" path="" reloadable="false"> '//添加此段站点信息'
</Context>
'//docBase:web应用的文档基准目录,reloadable:设置监视“类”是否变化,path:设置默认“类”'
- 开启Tomcat服务
[root@tomcat1 webapp1]# startup.sh '//开启Tomcat服务'
3.3:实验验证