当前位置: 首页 > news >正文

LVS负载均衡

目录

案例实施

检查JDK是否安装

安装配置tomcat

tomcat配置相关说明

tomcat住配置文件说明

Tomcat Server的组成部分说明

建立jave的web站点

nginx+tomcat 负载均衡,动静分离群集

tomcat2 server配置

nginx服务器配置


案例实施

关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

               在安装tomat之前必须安装JDK

               JDK的全称是Java Development Kit,是Sun公司免费提供的Java语言的软件
开发工具包,其中包含Java虚拟机(JVM)。编写好的Java源程序经过编译可形成
Java字节码,只要安装了JDK,就可以利用JVM解释这些字节码文件,从而保证了
Java的跨平台性。在平台兼容性方面,JDK 作为解释字节码文件并据此调用操作系统API实现对应功Java虚拟机,与操作系统类型和平台位数密切相关,因此存在不同类型的版本,而
Tomcat也具有上述特征,默认情况下JDK已经安装,所以需要预先下载Tomcat,本
章中所使用的Tomcat软件的源码包为apache-tomcat-9.0.8.taar.gz

检查JDK是否安装

[root@localhost tomcat9]# java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

安装配置tomcat

解压移动目录


[root@localhost ~]# tar xf apache-tomcat-9.0.8.tar.gz
[root@localhost ~]# mv apache-tomcat-9.0.8/ /usr/local/tomcat9

                 启动tomcat

[root@localhost tomcat9]# /usr/local/tomcat9/bin/startup. sh
Using CATALINA_BASE:
/usr/local/tomcat9.
/usr/local/tomcat9.
Using CATALINA_HOME:
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:
/usr
Using
CLASSPATH:
/usr/local/tomcat9/bin/bootstrap. jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Tomcat started.

                 查看相关端口号

[root@localhost ^]# netstat -anpt | grep 8080
tcp6 0 0 :::8080 :::* LISTEN 2809/java

tomcat配置相关说明

[root@localhost 11 /usr/local/tomcat9
总计112
drwxr-x--- 2 root root
4096 4月14日 18:22 bin
4096 4月14日 18:58 conf
drwx------ 3 root root
4096 4月14日 18:22 lib
drwxr-x--- 2 root root
57092 2018年4月28日 LICENSE
-rw-r---- 1 root root
4096 4月14日 18:24 logs
drwxr-x--- 2 root root
1804 2018年4月28日 NOTICE
root root
-rw-r----- 1 root root
6852 2018年4月28日RELEASE-NOTES
16246 2018年4月28日 RUNNING.txt
-rw-r----- 1
root root
4096 4月14日 18:22 temp
drwxr-x--- 2 root root
4096 2018年4月28日 webapps
drwxr-x--- 7 root root
drwxr-x--- 3 root root
4096 4月14日 18:24 work

 主要目录说明

|--bin/:存放Windows或Linux平台上启动和关闭Tomcat的脚本文件。
--conf/:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和
web. xml。
|---1ib/:存放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管理用户配置文件(Tomcat安装后提供一个manager-gui的管理界面,通过配置文件可以开启访问)web.xml: Tomcat,server-mapping,filter,MIME等相关配置

tomcat主配置文件说明

server.xml为Tomcat的主要配置文件,通过配置该文件,可以修改Tomcat的
启动端口、网站目录、虚拟主机、开启https等重要功能。
整个server.xml由以下结构构成:<Server>、<Service>、<Connector/><Engine>
<Host>、<Context>、</Context>、</Host>、</Engine>、</Service>和</Server>
以下是默认安装后server.xml文件的部分内容,其中く!T
-->内的内容是注释信
息,黑色斜体部分是需要注意和需要经常更改的部分。

Tomcat Server的组成部分说明

Tomcat Server 由 Server、Service、Connector、Engine、Flost和Context组成。
ServerServer 元素代表了整个 Catalina的servlet容器。
(2) ServiceService是这样一个集合:它由一个或者多个Connector,以及一个Engine(负责处理所有Connector所获得的客户请求)组成。(3) Connector
Connector在某个指定端口上侦听客户请求,并将获得的请求交给Engine来处
理,从Engine处获得回应并返回客户。Tomcat有两个典型的Connector,一个直接侦听来自browser的http请求,
个侦听来自其他WebServer的请求。
CoyoteHttp/1.1 Connector在端口8080处侦听来自客户browser的http请
求。
CoyoteJK2 Connector在端口8009处侦听来自其他 WebSServer(Apache)的
servlet/jsp代理请求。

建立jave的web站点

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

[root@localhost ^]# mkdir -pv /web/web/webappl
mkdir: created directory "/web"
mkdir: created directorr "/web/webappl"

 在webappl 目录下建立一个index.jsp的测试页面。

[root@localhost ^]# vim /web/webappl/index.jsp
\%@page language="java" import="java.util.*" pageEncoding="UTF-8"%> <html>
<head>
<title>JSP testl page</title> </head>
<body>
<%out.println("动态页面1,http://www.testl.com");%></body
<body>
<div>静态页面的图片1</div><br><imgsrc="logo.jpg
</body>
</html>

(3)修改Tomcat的server.xml文件。
定义一个虚拟主机,并将网站文件路径指向已经建立的/web/web/weebappl,在host段增加
context

[root@localhost `]# vim /usr/local/tomcat9/conf/server. xml
<Context docBase="/web/webapp1" path="" reloadable="false"></Context>

关闭tomcat重新启动

[root@localhost ^]# /usr/local/tomcat9/bin/slhutdown. sh
[root@localhost ^]# /usr/local/tomcat9/bin/startup. sh

nginx+tomcat 负载均衡,动静分离群集

通常情况下,一台Tomcat站点由于可能出现单点故障及无法应付过多客户复杂多
样的请求等问题,不能单独应用于生产环境下,所以需要一一套更可靠的解决方案来完
善Web站点架构。
Nginx是一款非常优秀的http服务器软件,它能够支持高达!50000个并发连接
数的响应,拥有强大的静态资源处理能力,运行稳定,并且内存、CPU等系统资源消耗
非常低。目前很多大型网站都应用Nginx服务器作为后端端网站程序的反向代理及负
载均衡器,来提升整个站点的负载并发能力。
Nginx是一个非常强大的静态web服务,Tomcat处理动态请求效率不高,而一般
网站大多数的内容都是静态文件(如图片、html、css、js等),经过Nginx前端的
反向代理加速和过滤,后端Tomcat处理请求的压力便可大大调减少,只需负责处理动
态内容就可以了。在性能与稳定性的权衡下,使用Nginx+Tomoat搭配便可让它们在
各自擅长的领域大展拳脚。

tomcat2 server配置

Tomcat2 server配置方法基本同Tomcat1,其中包括:
(1)关闭防火墙。
确认是否安装JDK,JAVA版本与Tomcatlserver保持一致。
(3)安装配置Tomcat,版本与Tomcatlserver保持一致。
(4)创建/web/webappl目录,修改Tomcat配置文件server.xml,将网站文件目录更
改到/web/webapp1/路径下。
(5)在/web/webappl/路径下建立 index.jsp,为了区别将测试页面index.jsp的内

[root@localhost ^]# vim /web/webappl/index.jsp
\%@page language="java" import="java.util.*" pageEncoding="UTF-8"%><html>
<head>
<title>JSP test2 page</title> </head>
<body>
<% out.println("动态页面2,http://www.test2.com")
;%></body>
<body>
<div>动态页面的图片2</div><br><imgsrc=1ogo.jpg
</body>
</html>

启动tomcat浏览器访问tomact2server测试http://172.16.173:8080 

nginx服务器配置

在Nginx服务器192.168.10.103上安装 Nginx,反向代理到两两个Tomcat站点,
并实现负载均衡。

关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

                 安装相关软件包

[root@localhost `]# dnf install -y gcc make pcre-devel zlib-devel openssl-devel
perl-ExtUtils-MakeMaker

解压并安装nginx

[root@nodel ^]# useradd -M -s /sbin/nologin nginx
[root@localhost ^]# tar zxf nginx-1.26.3.tar.gz
[root@localhost ^]# cd nginx-1.26.3
[root@localhost nginx-1.26.3]# ./configure-prefix=/usr/local/nginx
--user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module
--with-pcre
[root@localhost nginx-1.26.3]# make & make install

配置nginx。conf

[root@localhost ^]# vim /usr/local/nginx/conf/ngitnx. conflocation ~ .*jsp$ {proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Client-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://tomcat_server;}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {root /usr/local/nginx/html/img;expires 30d;}

 nginx准备配置文件

[rootenginx ^]# mkdir /usr/local/nginx/html/img//创建静态文件目录
[root@nginx ^]#cp /root/logo.jpg /usr/local/nginx/html/im2

测试nginx是否配置文件是否错误

[root@localhost^]# /usr/local/nginx/sbin/nginx -t

启动nginx服务

[root@localhost~]#/usr/local/nginx/sbin/nginx -c 
/usr/local/nginx/conf/nginx.conf

查看nginx服务

[root@localhost ~]# ps aux | grep nginx
[root@localhost ~]# netstat -anpt | grep nginx

在Web应用架构中,Tomcat作为Java应用服务器,擅长处理动态请求与业
务逻辑,但在处理静态资源(如图片、CSS、JS文件)时效故率相对较低,且可能
占用服务器宝贵的计算资源。而Nginx作为高性能的HTTP和反句代理服务器,
在静态资源处理方面表现卓越,能够快速响应并缓存静态内容,咸轻后端服务器
的压力。通过将Nginx与Tomcat结合,实现动静分离架林沟,即Nginx负责处理
静态资源请求,Tomcat专注于处理动态请求,两者通过高效协作不仅提升了整体
系统的响应速度和吞吐量,还增强了系统的可扩展性和稳定性,是现代Web应用
架构优化的重要实践。

http://www.lqws.cn/news/97399.html

相关文章:

  • 【小红书】API接口,获取笔记核心数据
  • 《汇编语言》第14章 端口
  • 集成学习之Bagging,Boosting,随机森林
  • H.264编码
  • CSS基础2
  • 2025 年人脸识别技术应用备案政策已落地
  • SuperMap GIS基础产品FAQ集锦(20250603)
  • 【Linux基础知识系列】第八篇-基本网络配置
  • 大数据-277 Spark MLib - 基础介绍 机器学习算法 Gradient Boosting GBDT算法原理 高效实现
  • 数字商城小程序源码,开启便捷电商新体验
  • 大数据-276 Spark MLib - 基础介绍 机器学习算法 Bagging和Boosting区别 GBDT梯度提升树
  • 【后端架构师的发展路线】
  • Elasticsearch + Milvus 构建高效知识库问答系统《一》
  • Java高级 | (二十二)快速应用开发框架——Spring Boot
  • 小白的进阶之路系列之十二----人工智能从初步到精通pytorch综合运用的讲解第五部分
  • OpenCV CUDA模块图像处理------图像融合函数blendLinear()
  • Attention Is All You Need (Transformer) 以及Transformer pytorch实现
  • 【JavaWeb】SpringBoot原理
  • SpringBoot 自定义注解实现限流
  • 【Vmware】虚拟机安装、镜像安装、Nat网络模式、本地VM8、ssh链接保姆篇(图文教程)
  • 优化 Spring Boot API 性能:利用 GZIP 压缩处理大型有效载荷
  • 托福39-1 Early Writing Systems感悟
  • Kotlin List 操作全面指南
  • RabbitMQ 监控与调优实战指南(二)
  • JavaScript性能优化实战大纲
  • Neovim - 打造一款属于自己的编辑器(一)
  • 提取 PDF 文件中的文字以及图片中的文字
  • HALCON 深度学习训练 3D 图像的几种方式优缺点
  • 论文中pdf图片文件太大怎么办
  • 关于FPGA软核的仿真(一)