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 服务器配置 IP 地址设置正确
-
安装 tomcat 服务器配置网站
-
安装 Nginx 代理和负载均衡功能配置 DNS 服务器域名解析,客户端使用域名www.nlb.com 负载均衡访问站
实验步骤:
一、Nginx 服务器开启路由转发功能,客户端和 tomcat 服务器配置 IP 地址设置正确
1、配置 Nginx 服务 IP 地址和路由转发功能
1)Nginx 服务器生成网卡配置文件
2)配置内网网卡 IP 地址
3)配置外网网卡 IP 地址
4)重新启动服务查看 IP 地址
5)配置路由转发功能开启路由功能
2、第一台 tomcat 服务器配置 IP 地址
1)第一台 tomcat 服务器配置 IP 地址
2)重新启动网卡服务查看配置的网关
3、第二台 tomcat 服务器配置 IP 地址
1)修改网卡置文件
2)重启网卡服务查看配置的网关
4、客户端配置 IP 地址和 DNS
1)客户端配置 IP 地址和 DNS
2)查看配置的 IP 地址
二、安装 tomcat 服务器配置网站
1、安装第一台 tomcat 服务器
1)切换到程序光盘
2)挂载程序光盘到/mnt
3)解压 tomcat 移动 tomcat 安装位置
2、配置第一台 tomcat 服务器
1)创建网站服务器根目录设置网站主页
2)修改 tomcat 主配置文件加载网站根目录
3)启动 tomcat 服务查看服务运行状态
3、安装第二台 tomcat 服务器
1)切换到程序光盘
2)挂载程序光盘到/mnt
3)解压 tomcat 移动 tomcat 安装位置
4、配置第二台 tomcat 服务器
1)创建网站服务器根目录设置网站主页
2)修改 tomcat 主配置文件加载网站根目录
3)启动 tomcat 服务查看服务运行状态
三、安装 Nginx 代理和负载均衡功能配置 DNS 服务器域名解析,客户端使用域名 www.nlb.com 负载均衡访问网站
1、安装 Nginx 反向代理依赖软件和 DNS 服务
1)切换到系统光盘
2)挂载系统盘到/mnt 目录
3)删除系统自带 yum 源配置本地 yum 源
4)安装依赖程序
5)创建管理 nginx 服务用户
2、配置 Nginx 代理服务器
1) 切换到程序光盘
2)挂载程序光盘到/mnt 目录
3)配置 nginx
4)编译安装 Nginx
5)优化 Nginx 服务命令
3、修改 Nginx 主配置配置支持负载均衡群集
1)修改 Nginx 主配置文件
2)检查 Nginx 主配置文件是否错误
3)启动服务查看端口
4、配置 DNS 服务器
1)修改 DNS 服务器主配置文件检查是否错误
2)配置 DNS 服务于数据库文件
3)启动服务设置开机自动启动
5、客户端访问验证
1)客户端第一次访问网站服务器
2)客户端第二次访问网站服务器
🙏作者水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!