一、实验环境
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实验就到此结束啦!!!还想看更多精彩内容请给作者点点关注,打打赏钱,有钱的捧个钱场,没钱的捧个人场!!!