supervisor快速实践
安装jdk及supervisor
yum install java-1.8.0-openjdk -y yum install supervisor -y
创建supervisor.sock
touch /var/run/supervisor.sock chmod 777 /var/run/supervisor.sock实践一个java项目
准备好一个jar包,并在supervisor主配置文件里添加服务所需的环境配置(其他配置适当的进行调整,此处就不一一展示了)
vim /etc/supervisord.conf .............. [supervisord] environment=PATH=/usr/local/jdk/default/bin:%(ENV_PATH)s,ILOG_BOOTSTRAP_SERVERS='bootstrap.servers="kafka-log-srv01.xxxx.net:9092,kafka-log-srv02.xxxx.net:9092,kafka-log-srv03.xxxx.net:9092"',EUREKA_USER=xxxx,EUREKA_PASSWORD=xxxx,EUREKA_SERVER_ADDRESS=eureka.ms.xxxx.com,GIT_URL='git@gitlab.xxxx.com:root/prodconfig-company-k8s.git',SEARCH_PATHS='base,ai,team*',GIT_USER='xxxx',GIT_PASSWORD='xxxx',MQ_URL='amqp://xxxx:5672',MQ_USER='xxxx',MQ_PASSWORD='xxxx',CONFIG_SERVER_ADDRESS='config.ms.xxxx.com',CONFIG_SERVER_PORT='80',CONFIG_SERVER_USER='xxxx',CONFIG_SERVER_PASSWORD='xxxx' ...............
添加服务的配置文件
#cat /etc/supervisord.d/market.ini
[program:market-interface-service]
command=nohup java -jar -XX:+HeapDumponOutOfMemoryError -XX:+PrintGCDetails -XX:-OmitStackTraceInFastThrow -Xms512m -Xmx512m market-1.0-SNAPSHOT.jar --spring.cloud.config.uri='http://${CONFIG_SERVER_ADDRESS}:${CONFIG_SERVER_PORT}' --spring.cloud.config.username='${CONFIG_SERVER_USER}' --spring.cloud.config.password='${CONFIG_SERVER_PASSWORD}' --spring.cloud.config.fail-fast=true
directory=/data
autostary=true
autorestart=true
startretries=10
exitcodes=0
stopsignal=KILL
stopwaitsecs=10
redirect_stderr=true
user=root
stdout_logfile=/data/market-service-file.log
设置supervisor开机启动
systemctl enable supervisord
启动被supervisor托管的服务
supervisorctl start market-interface-service
查看服务运行情况,如下表示ok
[root@VM_0_49_centos ~]# ps -ef |grep market
root 17218 3251 3 18:07 ? 00:01:49 java -jar -XX:+HeapDumponOutOfMemoryError -XX:+PrintGCDetails -XX:-OmitStackTraceInFastThrow -Xms512m -Xmx512m market-1.0-SNAPSHOT.jar --spring.cloud.config.uri=http://${CONFIG_SERVER_ADDRESS}:${CONFIG_SERVER_PORT} --spring.cloud.config.username=${CONFIG_SERVER_USER} --spring.cloud.config.password=${CONFIG_SERVER_PASSWORD} --spring.cloud.config.fail-fast=true



