supervisor管理单机多实例Tomcat
操作目的:用supervisor工具管理tomcat服务
配置环境,安装服务,以及多实例
脚本编辑:
1 #!/bin/bash 2 systemctl stop firewalld 3 setenforce 0 4 echo "==========安装更新========" 5 yum -y install epel-release 6 yum -y install supervisor 7 echo "=======初始化tomcat=======" 8 touch /etc/supervisord.d/tomcat.ini 9 echo > /etc/supervisord.d/tomcat.ini 10 echo "=======配置jdk环境========" 11 java -version > /dev/null 12 if [ $? -ne 0 ]; then 13 cd /opt/ 14 rpm -ivh jdk-8u131-linux-x64_.rpm 15 fi 16 echo "=====tomcat单机多实例=====" 17 mkdir /opt/tomcat 18 for i in `seq 1 3` 19 do 20 t8009=`expr 8009 + $i` 21 t8005=`expr 8005 + $i` 22 t8080=`expr 8080 + $i` 23 mkdir /opt/tomcat/tomcat$i 24 cd /opt/ 25 tar -zxvf /opt/apache-tomcat-8.5.35.tar.gz 26 mv /opt/apache-tomcat-8.5.35 /opt/tomcat/tomcat$i/apache-tomcat-8.5.35 27 cd /opt/tomcat/tomcat$i/apache-tomcat-8.5.35/conf 28 sed -i "s#8009#$t8009#g" server.xml 29 sed -i "s#8005#$t8005#g" server.xml 30 sed -i "s#8080#$t8080#g" server.xml 31 cat >>/etc/supervisord.d/tomcat.ini<<EOF 32 [program:tomcat$i] 33 command=/opt/tomcat/tomcat$i/apache-tomcat-8.5.35/bin/catalina.sh run 34 EOF 35 done 36 supervisord -n
脚本执行后是supervisor的前台执行方式
也可以使用系统的后台开启方式
1 systemctl start supervisord
步骤完成后修改supervisor的配置文件,打开端口
1 [inet_http_server] ; inet (TCP) server disabled by default 2 port=127.0.0.1:9001 ; (ip_address:port specifier, *:port for all iface) 3 username=user ; (default is no username (open server)) 4 password=123 ; (default is no password (open server))
这里需要注意的是port的端口设置,由于127是回环地址,需要改为自己生产环境的ip地址
yum安装的supervisor工具直接系统启动服务即可,查看状态为running正常状态
完成后进入服务里面可以看到开启的tomcat
通过help可以发现里面还可以进行开启关闭以及重启等服务
下面就是访问网页管理端
http://localhost:9001
可见通过页面的点击可以实现不同tomcat的管理
日志如下
Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting
解决方法:
find / -name supervisor.sock
unlink /name/supervisor.sock