Nginx和tomcat实现负载均衡

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx和tomcat实现负载均衡相关的知识,希望对你有一定的参考价值。

拓扑图:


Nginx和tomcat实现负载均衡_Nginx


推荐步骤:

  • nginx服务器开启路由转发功能,客户端和tomcat服务器配置IP地址设置正确
  • 安装tomcat服务器配置网站
  • 安装Nginx代理和负载均衡功能配置DNS服务器域名解析,客户端使用域名www.nlb.com负载均衡访问网站

实验步骤:

一.Nginx服务器开启路由转发功能,客户端和tomcat服务器配置IP地址设置正确

1.配置Nginx服务IP地址和路由转发功能

1)Nginx服务器生成网卡配置文件

Nginx和tomcat实现负载均衡_Nginx_02


2)配置内网网卡IP地址

Nginx和tomcat实现负载均衡_DNS_03


3)配置外网网卡IP地址

Nginx和tomcat实现负载均衡_tomcat_04


4)重新启动服务查看IP地址

Nginx和tomcat实现负载均衡_DNS_05


5)配置路由转发功能开启路由功能

Nginx和tomcat实现负载均衡_tomcat_06

Nginx和tomcat实现负载均衡_DNS_07


2.第一台tomcat服务器配置IP地址

1)第一天tomcat服务器配置IP地址

Nginx和tomcat实现负载均衡_DNS_08


2)重新启动网卡服务查看配置的网关

Nginx和tomcat实现负载均衡_DNS_09


3.第二台tomcat服务器配置IP地址

1)修改网卡配置文件

Nginx和tomcat实现负载均衡_Nginx_10


2)重启网卡服务查看配置的网关

Nginx和tomcat实现负载均衡_DNS_11


4.客户端配置IP地址和DNS

1)客户端配置IP地址和DNS

Nginx和tomcat实现负载均衡_DNS_12


2)查看配置的IP地址

Nginx和tomcat实现负载均衡_tomcat_13



二.安装tomcat服务器配置网站

1.安装第一台tomcat服务器

1)切换到程序光盘

Nginx和tomcat实现负载均衡_tomcat_14


2)挂载程序光盘到/mnt

Nginx和tomcat实现负载均衡_DNS_15


3)解压tomcat移动tomcat安装位置

Nginx和tomcat实现负载均衡_Nginx_16


2.配置第一台tomcat服务器

1)创建网站服务器根目录设置网站主页

Nginx和tomcat实现负载均衡_tomcat_17


2)修改tomcat主配置文件加载网站根目录

Nginx和tomcat实现负载均衡_Nginx_18

Nginx和tomcat实现负载均衡_Nginx_19


3)启动tomcat服务查看服务运行状态

Nginx和tomcat实现负载均衡_Nginx_20


3.安装第二台tomcat服务器

1)切换到程序光盘

Nginx和tomcat实现负载均衡_DNS_21


2)挂载程序光盘到/mnt

Nginx和tomcat实现负载均衡_Nginx_22


3)解压tomcat移动tomcat安装位置

Nginx和tomcat实现负载均衡_DNS_23


4.配置第二台tomcat服务器

1)创建网站服务器根目录设置网站主页

Nginx和tomcat实现负载均衡_Nginx_24


2)修改tomcat主配置文件加载网站根目录

Nginx和tomcat实现负载均衡_DNS_25

Nginx和tomcat实现负载均衡_Nginx_26


3)启动tomcat服务查看服务运行状态

Nginx和tomcat实现负载均衡_tomcat_27



三.装Nginx代理和负载均衡功能配置DNS服务器域名解析,客户端使用域名www.nlb.com负载均衡访问网站

1.安装Nginx反向代理依赖软件和DNS服务

1)切换到系统光盘

Nginx和tomcat实现负载均衡_Nginx_28


2)挂载系统盘到/mnt目录

Nginx和tomcat实现负载均衡_tomcat_29


3)删除系统自带yum源配置本地yum源

Nginx和tomcat实现负载均衡_tomcat_30


4)安装依赖程序

Nginx和tomcat实现负载均衡_tomcat_31


5)创建管理nginx服务用户

Nginx和tomcat实现负载均衡_tomcat_32


2.配置Nginx代理服务器

1)切换到程序光盘

Nginx和tomcat实现负载均衡_DNS_33


2)挂载程序光盘到/mnt目录

Nginx和tomcat实现负载均衡_DNS_34


3)配置nginx

Nginx和tomcat实现负载均衡_tomcat_35


4)编译安装Nginx

Nginx和tomcat实现负载均衡_Nginx_36


5)优化Nginx命令

Nginx和tomcat实现负载均衡_tomcat_37


3.修改Nginx主配置配置支持负载均衡群集

1)修改Nginx主配置文件

Nginx和tomcat实现负载均衡_DNS_38


2)检查Nginx主配置文件是否错误

Nginx和tomcat实现负载均衡_DNS_39


3)启动服务查看端口

Nginx和tomcat实现负载均衡_DNS_40


4.配置DNS服务器

1)修改DNS服务器主配置文件检查是否错误

Nginx和tomcat实现负载均衡_tomcat_41


2)配置DNS服务数据库文件

Nginx和tomcat实现负载均衡_tomcat_42

Nginx和tomcat实现负载均衡_DNS_43


3)启动服务设置开机自动启动

Nginx和tomcat实现负载均衡_tomcat_44


4)查看服务运行状态

Nginx和tomcat实现负载均衡_DNS_45


5.客户端访问验证

1)客户端第一次访问网站服务器

Nginx和tomcat实现负载均衡_Nginx_46


2)客户端第二次访问网站服务器

Nginx和tomcat实现负载均衡_Nginx_47



Linux运维web篇 nginx+tomcat实现动静分离和负载均衡

一、原理

Nginx作为负载均衡器,Tomcat作为应用服务器 nginx处理静态内容 动态内容反向代理给tomcat处理 将动态内容和静态内容分开处理 减轻服务器的压力
架构图
在这里插入图片描述

二、部署服务

部署nginx

systemctl stop firewalld
setenforce 0
#安装所需开发包和编译环境、编译器
yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++ make

#创建程序用户
useradd -M -s /sbin/nologin nginx

#解压安装包
cd /opt
tar zxvf nginx-1.12.0.tar.gz -C /opt/

#指定安装路径、指定用户名、组名、启用模块以支持统计状态
cd nginx-1.12.0/
./configure \\
--prefix=/usr/local/nginx \\
--user=nginx \\
--group=nginx \\
--with-file-aio \\									#启用文件修改支持
--with-http_stub_status_module \\					#启用状态统计
--with-http_gzip_static_module \\					#启用 gzip静态压缩
--with-http_flv_module \\							#启用 flv模块,提供对 flv 视频的伪流支持
--with-http_ssl_module								#启用 SSL模块,提供SSL加密功能
----------------------------------------------------------------------------------------------------------
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-file-aio --with-http_stub_status_module --with-http_gzip_static_module --with-http_flv_module

#编译及安装
make && make install

#软链接便于系统识别nginx操作命令
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

#添加nginx系统服务
vim /lib/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecrReload=/bin/kill -s HUP $MAINPID
ExecrStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

#赋权及开启服务、开启开机自启
chmod 754 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service

在这里插入图片描述

部署tomcat(两台一致)

#!/bin/bash
#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
setenforce 0

#安装JDK
cd /opt
rpm -qpl jdk-8u201-linux-x64.rpm 
rpm -ivh jdk-8u201-linux-x64.rpm 
java -version

#设置JDK环境变量
echo 'export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar						
export PATH=$JAVA_HOME/bin:$PATH' > /etc/profile.d/java.sh

source /etc/profile

#安装启动Tomcat
cd /opt
tar zxvf apache-tomcat-9.0.16.tar.gz
mv apache-tomcat-9.0.16 /usr/local/tomcat

/usr/local/tomcat/bin/startup.sh

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

三 配置动静分离

tomcat 1配置

mkdir /usr/local/tomcat/webapps/lucien
vim /usr/local/tomcat/webapps/lucien/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test1 page</title>
</head>
<body>
<% out.println("x1");%>
</body>
</html>

vim /usr/local/tomcat/conf/server.xml
72行添加以下内容
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/webapps/lucien" path="" reloadable="true">
	</Context>
</Host>

/usr/local/tomcat/bin/shutdown.sh 
/usr/local/tomcat/bin/startup.sh 

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

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

tomcat 2 和1配置一致

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

在这里插入图片描述

在这里插入图片描述

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

nginx配置

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
重启服务

测试

查看静态页面
在这里插入图片描述
在这里插入图片描述

以上是关于Nginx和tomcat实现负载均衡的主要内容,如果未能解决你的问题,请参考以下文章

Nginx和tomcat实现负载均衡

Nginx和tomcat实现负载均衡

Linux运维web篇 nginx+tomcat实现动静分离和负载均衡

nginx实现负载均衡至少需要几台服务器

图文详解 配置Nginx+Tomcat负载均衡动静分离集群

Nginx+tomcat实现负载均衡