部署Tomcat及负载均衡

时间:2022-07-24
本文章向大家介绍部署Tomcat及负载均衡,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

首先需要三台服务器

Tomcat1  106.52.224.243 
Tomcat2  106.52.151.30
nginx    106.52.152.122

文件下载

三台服务器关闭selinux和防火墙

systemctl stop firewalld
setenforce 0

配置tomcat1服务器

在安装Tomcat之前必须先安装JDK

rpm -ivh jdk-8u181-linux-x64.rpm
java -version

安装Tomcat

tar zxf apache-tomcat-7.0.54.tar.gz -C /usr/local/
cd /usr/local/

解压后生成apache-tomcat-7.0.54文件夹,将该文件夹移动到/usr/local 下,并改名为tomca

mv apache-tomcat-7.0.54/ tomcat7

启动tomcat,查看端口号

/usr/local/tomcat7/bin/startup.sh
netstanpl -anpl |grep 8080

打开浏览器进行测试

Tomcat配置相关说明

Tomcat的主目录为/usr/local/tomcat7 (1)主要目录说明

| - - -bin/:存放windows或linux平台上启动和关闭Tomcat的脚本文件
| - - -conf/:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml
| - - -lib/:存放Tomcat运行需要的库文件(JARS)
| - - -logs/:存放Tomcat执行时的LOG文件
| - - -webapps:Tomcat的主要Web发布目录(包括应用程序示例)
| - - -work:存放jsp编译后产生的class文件

配置文件说明

catalina.policy:权限控制配置文件
catalina.properties:Tomcat属性配置文件
context.xml:上下文配置文件
logging.properties:日志Log相关配置文件
server.xml:主配置文件
tomcat-users.xml:manager-gui管理用户配置文件
web.xml:Tomcat的servlet、servlet-mapping、filter、MIME等相关配置

建立java的Web站点

首先在根目录下建立一个web目录,并在里面建立一个webapp1目录,用于存放网站文件

mkdir -pv /web/webapp1

在webapp1目录下建立一个index.jsp的测试网页

vim /web/webapp1/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test page1</title>
</head>
<body>
<% out.println("106.52.224.243");%>
</body>

修改Tomcat的server.xml文件,在host段增加context段

vim /usr/local/tomcat7/conf/server.xml
<Context docBase="/web/webapp1" path="" reloadable="false">
        </Context>

关闭Tomcat,在重新启动

/usr/local/tomcat7/bin/shutdown.sh #关闭tomcat
/usr/local/tomcat7/bin/startup.sh  #启动tomcat

然后通过浏览器访问

配置Tomcat2服务器

tomcat2 server配置方法基本同tomcat1,其中包括 关闭selinux和防火墙 安装JDK 安装配置tomcat 创建/web/webapp1 目录,修改配置文件server.xml,将网站文件目录更改到/web/webapp1/ 路径下 在/web/webapp1/ 路径下建立index.jsp,为了区别将测试网页index.jsp的内容更改

vim /web/webapp1/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test page2</title>
</head>
<body>
<% out.println("106.52.151.30");%>
</body>

然后关闭Tomcat,在重新启动,打开浏览器访问

安装nginx

安装相关软件包

yum -y install pcre-devel zlib-devel openssl-devel gcc gcc+ -y

建立用户和组

groupadd www
groupadd -g www www -s /bin/false

解压并安装Nginx

tar zxf nginx-1.6.3.tar.gz -C /usr/src/
cd /usr/src/nginx-1.6.3/
./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

参数含义:

- -user=,--group=                             指定运行的用户和组
- -with-file-aio                                     启用文件修改支持
- -with-http_stub_status_module       启用状态统计
- -with-http_gzip_static_module        启用gzip静态压缩
- -with-http_flv_module                     启用flv模块,提供寻求内存使用基于时间的偏移量文件
- -with-http_ssl_module                    启用SSL模块

配置nginx.conf

在http {...}中加入以下代码,设定负载均衡的服务器列表,weight参数表示权值,权值越高被分配到的概率越大。为了使测试效果比较明显,这里把权值设置为一样

vim /usr/local/nginx/conf/nginx.conf
upstream tomcat_server {
        server 106.52.224.243:8080 weight=1;
        server 106.52.151.30:8080 weight=1;
}

在http {...} - server {...} - location / {...} 中加入一行

proxy_pass http://tomcat_server;}

然后保存退出 测试Nginx配置文件是否正确

/usr/local/nginx/sbin/nginx -t

启动nginx

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

测试负载均衡效果