【云原生】企业级WEB应用服务器TOMCAT

一、实验环境

1、虚拟机版本

RHEL9.4

2、主机

主机名称 IP地址
tomcat 172.25.254.100
tomcat-node1 172.25.254.10
tomcat-node2 172.25.254.20

3、基础配置

三台主机的防火墙和 selinux 都永久关闭,网卡为 eth0,本地仓库已配置,开机自动挂载

4、nginx源码编译

在 tomcat(172.25.254.100)主机上进行 nginx1.26.1 版本的源码编译,具体实验步骤可以参考企业高性能web服务器上实验内容第一个实验进行操作。

源码编译后基础配置( tomcat 主机上):

(1)创建网页目录

(2)网页内容

(3)文件检测

(4)创建日志目录

(5)修改配置文件

(6)修改子配置文件

创建子配置文件目录:

复制代码
mkdir /usr/local/nginx/conf.d

创建子配置文件:

复制代码
vim /usr/local/nginx/conf.d/vhosts.conf

(7)本地解析文件

windows上的:

C:\Windows\System32\drivers\etc 下的 hosts 文件

tomcat 主机上的:

二、实验步骤

1、tomcat 的部署方法

注意:tomcat-node1 和 tomcat-node2两台主机都要进行相同操作,作者这里以 tomcat-node1 为演示。

1.1 安装 tomcat

(1)安装java环境

复制代码
yum install java-1.8.0-openjdk.x86_64 -y

(2)安装并启动 tomcat

先将作者放在文章顶部的资源下载解压后,再将 apache-tomcat-9.0.93.tar.gz 拖入主机中:

将 apache-tomcat-9.0.93.tar.gz 进行解压::

复制代码
tar zxf apache-tomcat-9.0.91.tar.gz -C /usr/local/

创建软链接:

复制代码
ln -s /usr/local/apache-tomcat-9.0.91/ /usr/local/tomcat

启动 Tomcat 服务器:

复制代码
/usr/local/tomcat/bin/startup.sh

(3)查看端口

复制代码
/usr/local/tomcat/bin/startup.sh

(4)访问tomcat

注意看访问地址,这里是要加端口号的

1.2 生成tomcat的启动文件

(1)生成tomcat的主配置文件

(2)创建 tomcat 用户

复制代码
useradd -s /sbin/nologin -M tomcat

(3)给权限

复制代码
chown -R tomcat.tomcat /usr/local/apache-tomcat-9.0.93/

(4) 生成启动文件

(5)重新加载 Systemd 配置

复制代码
systemctl daemon-reload

(6)开机自启

2、tomcat 的反向代理及负载均衡

(1)将作者放在文章顶部的资源中的 test.jsp 拖入 tomcat-node1 和 tomcat-node2 中:

(2)将文件 test.jsp 复制到 /usr/local/tomcat/webapps/ROOT 目录下(tomcat-node1 和 tomcat-node2 两台主机都需要操作):

复制代码
cp test.jsp /usr/local/tomcat/webapps/ROOT

(3)在tomcat主机中修改 nginx 子配置文件目录:

重启:

复制代码
nginx -s reload

(4)测试

刷新之后访问的主机依旧不变

3、tomcat 的 session 会话保持

在tomcat-node1 和 tomcat-node2两台主机都要进行相同操作,作者这里以 tomcat-node1 为演示:

(1)memcached的安装与启动

安装:

复制代码
yum install memcached -y

修改配置文件:

开机启动:

复制代码
systemctl enable --now memcached

查看:

(2)设置 session 共享服务器

下载相关jar包:

作者将jar.zip压缩包放置顶部,拖入主机中,并进行解压(也可以在官网上进行下载,下载链接:https://github.com/magro/memcached-session-manager/wiki/SetupAndConfiguration

进入 jar 目录,将所有文件拷贝至 /usr/local/tomcat/lib/

编辑 tomcat 配置文件:

复制代码
vim /usr/local/tomcat/conf/context.xml

注意配置文件这里 tomcat-node1 和 tomcat-node2 的是不一样的

tomcat-node1下的配置文件内容:

tomcat-node2下的配置文件内容:

(3)重启

复制代码
systemctl restart tomcat.service

(4)测试

两台主机的tomcat都开启,发现页面显示 tomcat-node1 主机的内容,添加内容提交后还是在 tomcat-node1 主机上:

关闭 tomcat-node1 主机,不刷新页面,继续添加内容,提交后发现原来的内容还在,但页面显示在 tomcat-node1 主机上:

今天的tomcat实验就到此结束啦!!!还想看更多精彩内容请给作者点点关注,打打赏钱,有钱的捧个钱场,没钱的捧个人场!!!

相关推荐
IT成长日记几秒前
【Docker基础】Docker数据持久化与卷(Volume)介绍
运维·docker·容器·数据持久化·volume·
热爱生活的猴子3 分钟前
阿里云服务器正确配置 Docker 国内镜像的方法
服务器·阿里云·docker
物联网老王2 小时前
Ubuntu Linux Cursor 安装与使用一
linux·运维·ubuntu
艾伦_耶格宇3 小时前
【ACP】阿里云云计算高级运维工程师--ACP
运维·阿里云·云计算
一位摩羯座DBA4 小时前
Redhat&Centos挂载镜像
linux·运维·centos
计算机毕设定制辅导-无忧学长4 小时前
西门子 PLC 与 Modbus 集成:S7-1500 RTU/TCP 配置指南(一)
服务器·数据库·tcp/ip
cui_win5 小时前
【网络】Linux 内核优化实战 - net.core.flow_limit_table_len
linux·运维·网络
风清再凯5 小时前
自动化工具ansible,以及playbook剧本
运维·自动化·ansible
深圳安锐科技有限公司5 小时前
深圳安锐科技发布国内首款4G 索力仪!让斜拉桥索力自动化监测更精准高效
运维·安全·自动化·自动化监测·人工监测·桥梁监测·索力监测
猫头虎6 小时前
猫头虎 AI工具分享:一个网页抓取、结构化数据提取、网页爬取、浏览器自动化操作工具:Hyperbrowser MCP
运维·人工智能·gpt·开源·自动化·文心一言·ai编程