supervisor管理tomcat
操作目的:用supervisor工具管理tomcat服务

配置环境,安装服务,以及多实例
脚本编辑:
前提 机器的opt目录下必须有jdk-8u131-linux-x64_.rpm 以及apache-tomcat-8.5.35.tar.gz

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服务,或者可以使用脚本代替

完成后进入服务里面可以看到开启的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
supervisor管理tomcat的更多相关文章
- 使用supervisor管理tomcat,nginx等进程详解
1,介绍 官网:http://supervisord.org Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时 ...
- supervisor管理进程工具配置
Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统 ...
- 在Docker里使用(支持镜像继承的)supervisor管理进程(转)
这篇文章是受 dockboard 之托帮忙翻译的与 docker 有关的技术文章.译自 Using Supervisor with Docker to manage processes (suppor ...
- Supervisor 管理后台守护进程
Supervisor 管理后台守护进程 参考原文如下: http://codinn.com/people/brant/notes/110948/ 做了一些注释 +++++++++++引用开始+++++ ...
- 如何使用supervisor管理你的应用
1.前言 Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是UNIX-like系统下的一个进程管理工具,不支持Windo ...
- Supervisor管理进程
Supervisor管理进程 转载 2016年04月14日 18:26:45 标签: supervisord 28344 Supervisor重新加载配置启动新的进程 liaojie 发布于 1年前, ...
- 配置supervisor管理beego应用
一.golang.beego等环境安装与配置 二.supervisor安装 github项目地址:https://github.com/Supervisor/supervisor 克隆项目:git c ...
- Supervisor 管理进程,Cloud Insight 监控进程,完美!
Supervisor 是由 Python 语言编写.基于 linux 操作系统的一款服务器管理工具,用于监控服务器的运行,发现问题能立即自动预警及自动重启等. Cloud Insight 是一款次世代 ...
- supervisor管理进程 superlance对进程状态报警
supervisor介绍 首先,介绍一下supervisor.Supervisor(http://supervisord.org/)是用Python开发的一个client/server服务,是Linu ...
随机推荐
- 「2018-12-02模拟赛」T3 约束排列 解题报告
3.约束排列(place.pas/cpp/in/out) 问题描述: 给出 n 个互不相同的小写字母,表示出现的字符类型,以及 k 个约束关系: .....,表示 ai 必须出现在 bi 前面(ai, ...
- 删除centos自带的openjdk
[wj@master hadoop]$ rpm -qa | grep javajava-1.7.0-openjdk-1.7.0.191-2.6.15.5.el7.x86_64python-javapa ...
- Spring工程报错
错误日志: 2014-09-24 10:50:16 [org.springframework.context.support.FileSystemXmlApplicationContext]-[INF ...
- EntityFramework Core表名原理解析,让我来,揭开你神秘的面纱
前言 上一节我们针对最开始抛出的异常只是进行了浅尝辄止的解析,是不是有点意犹未尽的感觉,是的,我也有这种感觉,看到这里相信您和我会有一些疑惑,要是我们接下来通过注解.Fluent APi.DbSet分 ...
- a标签点击触发 layer open 只显示背景解决
问题:公司网站突然说有个查看信息的点击不好使了,有时候点击无反应,但是href执行了,有时候弹出只有背景,不显示内容.网上找了a标签的各种方法尝试后,均不能解决. 代码:类似如下,method()方法 ...
- 区间 dp
以一个经典题目引入到正题 : 有 n 堆石子 , 每两堆石子合并会花费一定的价值,所花费的价值即为 两堆石子上的价值和 , 问合并所有的石子后的最小花费 ? 思路分析 : 因为题干可以看成是对每个区间 ...
- 一文带你看清HTTP所有概念
上一篇文章我们大致讲解了一下 HTTP 的基本特征和使用,大家反响很不错,那么本篇文章我们就来深究一下 HTTP 的特性.我们接着上篇文章没有说完的 HTTP 标头继续来介绍(此篇文章会介绍所有标头的 ...
- restframewor 版本(version)
1.路由 a.一级路由 from django.contrib import admin from django.urls import path, include from api import u ...
- Linux下socket编程基本知识
本文档主要讲解了Linux下socket编程的一些基本知识,主要包括套接字和字节序的概念,以及一些常用的结构体和函数. 本文是在网易云课堂学习过程中的记录,这个老师讲得很不错,推荐大家围观. Linu ...
- 深入Node模块Buffer-学会操作二进制
Buffer 作为 nodejs 中重要的概念和功能,为开发者提供了操作二进制的能力.本文记录了几个问题,来加深对 Buffer 的理解和使用: 认识缓冲器 如何申请堆外内存 如何计算字节长度 如何计 ...