目录
一、部署tomcat
vm2:
dnf install -y java-1.8.0-openjdk.x86_64
tar xf apache-tomcat-7.0.37.tar.gz -C /usr/local/
cd /usr/local/
ln -s apache-tomcat-7.0.37/ tomcat
cd tomcat/
启动服务
bin/startup.sh #开启服务
bin/shutdown.sh #关闭服务
vm3上也要部署tomcat,步骤一致,以此类推
二、nginx整合tomcat
vm1:
vim /usr/local/nginx/conf/nginx.conf
upstream tomcat {
sticky;
server 192.168.189.112:8080;
server 192.168.189.113:8080;
}
location ~ \.jsp$ {
proxy_pass http://tomcat;
}
重启nginx服务
在vm2和vm3上拷贝测试页面
test.jpg(自己制作)
cd /usr/local/tomcat/webapps/ROOT/
测试:http://192.168.189.111/test.jsp
停止vm2上的tomcat服务
nginx对后端tomcat具有健康检测功能,自动切到vm3上的tomcat服务,但是在vm2上提交的session信息全部丢失
三、tomcat整合memcached
tomcat服务通过msm模块把session信息交叉存储到memcached上
下载memcached
dnf install -y memcached
systemctl enable --now memcached
netstat -antlp|grep :11211
导入jar包:
unzip jar.zip
cd jar
cp * /usr/local/tomcat/lib/
cd /usr/local/tomcat/conf
配置文件:
vim /usr/local/tomcat/conf/context.xml
vm3中failoverNodes 改为n2
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:192.168.189.112:11211,n2:192.168.189.113:11211"
failoverNodes="n1"
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
重启tomcat
bin/shutdown.sh
bin/startup.sh
查看日志
cat logs/catalina.out
vm3 上的配置依次类推
测试:http://192.168.189.111/test.jsp
关闭vm3上的tomcat服务后会自动切换到vm2
关闭vm2上的memcached服务后,会自动切换到vm3上的memcached服务