> 文章列表 > Nginx 和 Tomcat 实现负载均衡

Nginx 和 Tomcat 实现负载均衡

Nginx 和 Tomcat 实现负载均衡

Nginx 和 tomcat 实现负载均衡

🏆荣誉认证:51CTO博客专家博主、TOP红人、明日之星;阿里云开发者社区专家博主、技术博主、星级博主。

💻微信公众号:微笑的段嘉许

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

🎉欢迎关注🔎点赞👍收藏⭐留言📝

📆CSDN首发时间:🌴2023年2月日25🌴

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

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

本文介绍

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


📌导航小助手📌

文章目录

  • Nginx 和 tomcat 实现负载均衡
  • 📝理论讲解:
    • Tomcat简介
    • 应用场景
    • Tomcat Server的组成部分说明
  • 📖实验配置与实现:
  • 一、Nginx 服务器开启路由转发功能,客户端和 tomcat 服务器配置 IP 地址设置正确
    • 1、配置 Nginx 服务 IP 地址和路由转发功能
    • 2、第一台 tomcat 服务器配置 IP 地址
    • 3、第二台 tomcat 服务器配置 IP 地址
    • 4、客户端配置 IP 地址和 DNS
  • 二、安装 tomcat 服务器配置网站
    • 1、安装第一台 tomcat 服务器
    • 2、配置第一台 tomcat 服务器
    • 3、安装第二台 tomcat 服务器
    • 4、配置第二台 tomcat 服务器
  • 三、安装 Nginx 代理和负载均衡功能配置 DNS 服务器域名解析,客户端使用域名 www.nlb.com 负载均衡访问网站
    • 1、安装 Nginx 反向代理依赖软件和 DNS 服务
    • 2、配置 Nginx 代理服务器
    • 3、修改 Nginx 主配置配置支持负载均衡群集
    • 4、配置 DNS 服务器
    • 5、客户端访问验证

📝理论讲解:

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容器,单独运行在后端。

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 实现负载均衡


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

img