Nginx 和 tomcat 实现负载均衡

时间:2022-11-04 12:54:59

Nginx 和 tomcat 实现负载均衡

????博客主页: ​​微笑的段嘉许博客主页​

????欢迎关注????点赞????收藏⭐留言????

????本文由微笑的段嘉许原创!

????51CTO首发时间:????2022年11月日4????

✉️坚持和努力一定能换来诗与远方!

????作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!

本文介绍

​ 在上一篇文章中已经介绍了Nginx服务器的安装配置,感兴趣的小伙伴可以点击连接阅读​​配置Nginx虚拟主机​​,本文主要介绍Tomcat及Nginx + Tomcat负载均衡群集。


????理论讲解:

Tomcat简介

名称由来:Tomcat最初是Sun的软件架构师詹姆斯 · 邓肯 · 戴维森开发的。后来他帮助将其变为开源项目,并由Sun贡献给APache软件基金会。由于大部分开源项目O'Reilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(公猫)。而O'Reilly出版的介绍Tomcat的书籍的封面也被设计成了一个公猫的形象。而Tomcat的Logo兼吉祥物也被设计成了一只公猫。

其实Tomcat最早在开始研发的时候并不叫这个名字,早期Tomcat项目的名字叫Cataline,所以当我们安装完Tomcat后会法相安装路径下面有很多和Cataline有光的目录和文件,而这些文件通常也是我们使用或配置Tomcat的重要文件。

应用场景

Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。一般来说,Tomo cat虽然和Apache或者Nginx这些Web服务器一样,具有处理HTML页面的功能,然而由于其处理静态HTML的能力远不及Apache或者Nginx,所以Tomcat通常是作为一个Servlet和JSP容器,单独运行在后端。

Nginx 和 tomcat 实现负载均衡

Tomcat Server的组成部分说明

  • Server元素代表了整个Catalina的server容器
  • Service是这样一个集合:它由一个或多个Connector,以及一个Engine(负责处理所有Connector所获得的客户请求)组成。
  • Connector:一个Connector在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处理,从Engine处获得回应并返回给客户。
    Tomcat有两个典型的Connector,一个直接侦听来自browser的http请求,一个侦听来自其他WebServer的请求。
    Coyote Http/1.1 Conector在端口8080处侦听来自客户browse的http请求。
    Coyote JK2 Connector在端口8009 处侦听来自其他WebServer(Apache)的servlet/jsp代理请求。
  • Engine:Engine下可以配置多个虚拟主机Virtual Host,每个虚拟主机都有一个域名。
    当Engine获得一个请求时,它把该请求匹配到某个Host上,然后把该请求交给Host来处理。
    Engine有一个默认虚拟主机,当请求无法匹配到任何一个Host上的时候,将交给默认Host来处理。
  • Host:Host代表一个Virtual Host,即虚拟主机,每个虚拟主机和某个网络域名Domain Name相匹配。
    每个虚拟主机下都可以部署(deploy)一个后者多个Web App,每个Web App对应一个Context,有一个Context path。
    当Host获得一个请求时,将把该请求匹配到某个Context上,然后把该请求交给该Context来处理,匹配的方法是"最长匹配",所以一个path==" "的Context将成为该Host的默认Context匹配
  • Context:一个Context对应一个Web Application,一个Web Application由一个或者多个Servlet组成。

????实验配置与实现:

拓扑图

Nginx 和 tomcat 实现负载均衡

推荐步骤

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

实验步骤

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

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

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

Nginx 和 tomcat 实现负载均衡

2)配置内网网卡 IP 地址

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

3)配置外网网卡 IP 地址

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

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

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

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

1)修改网卡置文件

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

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

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

Nginx 和 tomcat 实现负载均衡

2)查看配置的 IP 地址

Nginx 和 tomcat 实现负载均衡

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

1、安装第一台 tomcat 服务器

1)切换到程序光盘

Nginx 和 tomcat 实现负载均衡

2)挂载程序光盘到/mnt

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

2、配置第一台 tomcat 服务器

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

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

3、安装第二台 tomcat 服务器

1)切换到程序光盘

Nginx 和 tomcat 实现负载均衡

2)挂载程序光盘到/mnt

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

4、配置第二台 tomcat 服务器

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

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡


Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

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

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

1)切换到系统光盘

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

4)安装依赖程序

Nginx 和 tomcat 实现负载均衡

5)创建管理 nginx 服务用户

Nginx 和 tomcat 实现负载均衡

2、配置 Nginx 代理服务器

1) 切换到程序光盘

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

3)配置 nginx

Nginx 和 tomcat 实现负载均衡

4)编译安装 Nginx

Nginx 和 tomcat 实现负载均衡

5)优化 Nginx 服务命令

Nginx 和 tomcat 实现负载均衡

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

1)修改 Nginx 主配置文件

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

3)启动服务查看端口

Nginx 和 tomcat 实现负载均衡

4、配置 DNS 服务器

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

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

5、客户端访问验证

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

Nginx 和 tomcat 实现负载均衡

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

Nginx 和 tomcat 实现负载均衡


????作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!

Nginx 和 tomcat 实现负载均衡