supervisor集群管理(单机多实例)

1.supervisor简介

Supervisor(http://supervisord.org/)是一个 C/S 模型的程序,Python开发的一个client(supervisorctl)/server(supervisord)服务,是Linux/Unix系统下的一个进程管理工具,不支持Windows系统。它可以很方便的监听、启动、停止、重启一个或多个进程。用Supervisor管理的进程,当一个进程意外被杀死,supervisort监听到进程死后,会自动将它重新拉起,很方便的做到进程自动恢复的功能,不再需要自己写shell脚本来控制。

2.适合采用的场景

在服务器众多时,项目以tomcat为主,而且服务起上tomcat的节点比较多,此时通过脚本管理就比较棘手。就需要一个统一的进程管理项目,因此选用supervisor来进行管理。

3.下面进行安装部署

安装之前首先需要你的环境中是带有python环境

python -V	#检测 具体的python版本信息

检测如果有python然后进行接下来的步骤:
1.安装主题:supervisor

yum -y install supervisor	#使用yum进行安装

2.今天的主题是通过supervisor进行tomcat单机多实例下面开始部署tomcat
1.配置安装jdk环境(上传已经准备好的jdk-tar包)

tar -zxf jdk-8u60-linux-x64.tar.gz -C /usr/local/	#解压(zxf)jdk包到指定(-C)路径
chown -R root.root /usr/local/jdk1.8.0_60	#修改它的属组
cat>>/etc/profile<<\EOF		#添加变量到/etc/profile
###jdk环境###
export JAVA_HOME=/usr/local/jdk1.8.0_60
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar
EOF
source /etc/profile	#生效刚才所写的环境变量
java -version		#查看刚才安装jdk版本

2.下面进行安装tomcat

tar zxf apache-tomcat-8.5.35.tar.gz	#解压提前 准备好的 tomcat包
mkdir /opt/app01	#创建一个存放tomcat项目的地方
cp -a apache-tomcat-8.5.35/* /opt/app01/	# 通过cp 拷贝把刚才解压好的包 移动过去
cd /opt/app01
ll	#查看 这个目录下 文件(夹)
#切到刚才cp的位置,里面有三个文件是必有的bin-conf-lib,反过来就也有一些是没有必要存在的 比如 LICENSE ....等 这个我们可以选择删除 也可以保留

这是启动tomcat

./bin/startup.sh

这是停止tomcat

./bin/shutdown.sh

如果想监测是否正常启动:

ps -ef | grep java

下面配置supervisor的文件

cat /etc/supervisord.d/app01.ini
#[program:app01]
#command=/opt/app01/bin/catalina.sh run
#environment=JAVA_HOME="/usr/local/jdk1.8.0_60",JAVA_BIN="/usr/local/jdk1.8.0_60/bin"
#directory=/opt/app01/bin/
#numprocs=1
#user = root
#autostart = true
#autorestart=true
#startsecs = 5

配置好以后重启supervisor:

systemctl restart supervisord.service	#重启服务
ps -ef | grep java	#这个时候去查看tomcat就会被带起来

下面开始实现单机多实例

1.cp 一份 之前做的第一项目

cp -a /opt/app01 /opt/app02
vim /opt/app02/conf/server.xml	
#修改三个配置 分别修改 Server port 两个 Connector port
#<Server port="18005" shutdown="SHUTDOWN">
#<Connector port="18080" protocol="HTTP/1.1"
#<Connector port="18009" protocol="AJP/1.3" redirectPort="8443" />

2.修改好以后可以启动服务去测试一下刚才弄的那个小项目

/opt/app02/bin/startup.sh
#访问时候加上你修改的新端口号	--- ip+端口号

在这里插入图片描述
3.下面将新项目添加到supervisor服务

vim /etc/supervisord.d/app02.ini
#[program:app02]
#command=/opt/app02/bin/catalina.sh run
#environment=JAVA_HOME="/usr/local/jdk1.8.0_60",JAVA_BIN="/usr/local/jdk1.8.0_60/bin"
#directory=/opt/app02/bin/
#numprocs=1
#user = root
#autostart = true
#autorestart=true
#startsecs = 5

添加完并查看状态

supervisorctl update

常用supervisorctl命令

supervisorctl status 	#查看状态
supervisorctl stop tomcat 	#停止
supervisorctl start tomcat		#启动
supervisorctl restart tomcat	#重启
supervisorctl reread
supervisorctl update
发布了12 篇原创文章 · 获赞 0 · 访问量 204

猜你喜欢

转载自blog.csdn.net/weixin_44696896/article/details/105645798