shell脚本部署tomcat 单机多实例

首先安装tomcat 我写了一个脚本 可能不是很完善
#!/bin/bash
#解压压缩包 先判断是否存在
install_tomcat() {
ls -la /opt/tomcat1/ | grep -w ‘apache-tomcat-8.5.35’
if [ $? -eq 0 ]; then
echo “已存在”
else
tar -zxf tar -zxf apache-tomcat-8.5.35.tar.gz -C /opt/tomcat1/
fi
}
#修改配置文件
tomcat2_update() {
sed -i ‘22c/’ /opt/tomcat2/apache-tomcat-8.5.35/conf/server.xml
sed -i ‘69c/<Connector port=“8081” protocol=“HTTP/1.1”’ /opt/tomcat2/apache-tomcat-8.5.35/conf/server.xml
sed -i ‘116c/’ /opt/tomcat2/apache-tomcat-8.5.35/conf/server.xml
}
tomcat3_update() {
sed -i ‘22c/’ /opt/tomcat3/apache-tomcat-8.5.35/conf/server.xml
sed -i ‘69c/<Connector port=“8082” protocol=“HTTP/1.1”’ /opt/tomcat3/apache-tomcat-8.5.35/conf/server.xml
sed -i ‘116c/’ /opt/tomcat3/apache-tomcat-8.5.35/conf/server.xml
}
#安装java环境
rpm -ivh jdk-8u131-linux-x64_.rpm
#先判断安装包是否存在
ls -la /root/ | grep -w ‘apache-tomcat-8.5.35.tar.gz’
if [ $? -eq 0 ]; then
echo “压缩包已存在”

else
echo “压缩包不存在 请确保ansible已分发tomcat的压缩包”
break
fi

#解压缩包 首先创建一个可以存放解压出来的目录
ls -la /opt/ | grep -w ‘tomcat1’
if [ $? -eq 0 ]; then
echo “此文件夹已存在”
#开始判断解压出来的文件是否存在
install_tomcat
else
mkdir /opt/tomcat1
install_tomcat
fi
#判断是否可以访问页面
IP=/sbin/ifconfig -a | awk '{print $2}'| sed -n '2p' #首先获取IP地址
curl_code=curl -I -m 10 -o /dev/null -s -w %{http_code} http://${IP}:8080
if [ $curl_code -eq 200 ];then
echo “可以正常访问”
else
echo “页面不可以正常访问”
fi

#单机多实例
ls -la /opt | grep -w ‘tomcat2’
if [ $? -eq 0 ]; then
echo “文件已存在”
tomcat2_update
else
cd /opt/ && cp -rf tomcat1 tomcat2
tomcat2_update
fi
ls -la /opt | grep -w ‘tomcat3’
if [ $? -eq 0 ]; then
echo “文件已存在”
tomcat3_update

else
cd /opt/ && cp -rf tomcat1 tomcat3
echo “已创建”
tomcat3_update
fi

注意:以上脚本没有修改端口的功能 可以先手动修改一下

托管给supervisor

首先安装
yum -y install supervisor
写一个命令 只是托管三个tomcat
vim /etc/supervisord.d/tomcat.ini
[program:tomcat1]
command=//opt/tomcat1/apache-tomcat-8.5.35/bin/catalina.sh run

[program:tomcat2]
command=//opt/tomcat3/apache-tomcat-8.5.35/bin/catalina.sh run

[program:tomcat3]
command=//opt/tomcat3/apache-tomcat-8.5.35/bin/catalina.sh run

查看端口是否都启动了
在这里插入图片描述
测试用的 查看返回的状态码是否是200
curl -I -m 10 -o /dev/null -s -w %{http_code} http://10.0.0.42:8081

先为成功的人工作,再与成功的人合作,最后是让成功的人为你工作。

发布了15 篇原创文章 · 获赞 4 · 访问量 371

猜你喜欢

转载自blog.csdn.net/weixin_46571884/article/details/105237801