当前位置: 首页 > news >正文

jenkins服务启动-排错

在这里插入图片描述
服务状态为active (exited)
且进程不在

查看/etc/rc.d/init.d/jenkins配置 获取配置参数

[root@fy-jenkins-prod jenkins]# cat /etc/rc.d/init.d/jenkins | grep -v '#'JENKINS_WAR="/usr/lib/jenkins/jenkins.war"
test -r "$JENKINS_WAR" || { echo "$JENKINS_WAR not installed";if [ "$1" = "stop" ]; then exit 0;else exit 5; fi; }JENKINS_CONFIG=/etc/sysconfig/jenkins
test -e "$JENKINS_CONFIG" || { echo "$JENKINS_CONFIG not existing";if [ "$1" = "stop" ]; then exit 0;else exit 6; fi; }
test -r "$JENKINS_CONFIG" || { echo "$JENKINS_CONFIG not readable. Perhaps you forgot 'sudo'?";if [ "$1" = "stop" ]; then exit 0;else exit 6; fi; }JENKINS_PID_FILE="/var/run/jenkins.pid"
JENKINS_LOCKFILE="/var/lock/subsys/jenkins". /etc/init.d/functions[ -f "$JENKINS_CONFIG" ] && . "$JENKINS_CONFIG"[ -n "$JENKINS_HOME" ] || { echo "JENKINS_HOME not configured in $JENKINS_CONFIG";if [ "$1" = "stop" ]; then exit 0;else exit 6; fi; }
[ -d "$JENKINS_HOME" ] || { echo "JENKINS_HOME directory does not exist: $JENKINS_HOME";if [ "$1" = "stop" ]; then exit 0;else exit 1; fi; }candidates="
/usr/java/jdk1.8.0_221/bin/java
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-11.0/bin/java
/usr/lib/jvm/jre-11.0/bin/java
/usr/lib/jvm/java-11-openjdk-amd64
/usr/bin/java
"
for candidate in $candidates
do[ -x "$JENKINS_JAVA_CMD" ] && breakJENKINS_JAVA_CMD="$candidate"
donePARAMS="--logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war"
[ -n "$JENKINS_PORT" ] && PARAMS="$PARAMS --httpPort=$JENKINS_PORT"
[ -n "$JENKINS_LISTEN_ADDRESS" ] && PARAMS="$PARAMS --httpListenAddress=$JENKINS_LISTEN_ADDRESS"
[ -n "$JENKINS_HTTPS_PORT" ] && PARAMS="$PARAMS --httpsPort=$JENKINS_HTTPS_PORT"
[ -n "$JENKINS_HTTPS_KEYSTORE" ] && PARAMS="$PARAMS --httpsKeyStore='$JENKINS_HTTPS_KEYSTORE'"
[ -n "$JENKINS_HTTPS_KEYSTORE_PASSWORD" ] && PARAMS="$PARAMS --httpsKeyStorePassword='$JENKINS_HTTPS_KEYSTORE_PASSWORD'"
[ -n "$JENKINS_HTTPS_LISTEN_ADDRESS" ] && PARAMS="$PARAMS --httpsListenAddress=$JENKINS_HTTPS_LISTEN_ADDRESS"
[ -n "$JENKINS_HTTP2_PORT" ] && PARAMS="$PARAMS --http2Port=$JENKINS_HTTP2_PORT"
[ -n "$JENKINS_HTTP2_LISTEN_ADDRESS" ] && PARAMS="$PARAMS --http2ListenAddress=$JENKINS_HTTP2_LISTEN_ADDRESS"
[ -n "$JENKINS_DEBUG_LEVEL" ] && PARAMS="$PARAMS --debug=$JENKINS_DEBUG_LEVEL"
[ -n "$JENKINS_HANDLER_STARTUP" ] && PARAMS="$PARAMS --handlerCountStartup=$JENKINS_HANDLER_STARTUP"
[ -n "$JENKINS_HANDLER_MAX" ] && PARAMS="$PARAMS --handlerCountMax=$JENKINS_HANDLER_MAX"
[ -n "$JENKINS_HANDLER_IDLE" ] && PARAMS="$PARAMS --handlerCountMaxIdle=$JENKINS_HANDLER_IDLE"
[ -n "$JENKINS_EXTRA_LIB_FOLDER" ] && PARAMS="$PARAMS --extraLibFolder='$JENKINS_EXTRA_LIB_FOLDER'"
[ -n "$JENKINS_ARGS" ] && PARAMS="$PARAMS $JENKINS_ARGS"if [ "$JENKINS_ENABLE_ACCESS_LOG" = "yes" ]; thenPARAMS="$PARAMS --accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file=/var/log/jenkins/access_log"
fiRETVAL=0case "$1" instart)echo -n "Starting Jenkins "eval "daemonize -u \"$JENKINS_USER\" -p \"$JENKINS_PID_FILE\" \"$JENKINS_JAVA_CMD\" $JENKINS_JAVA_OPTIONS \"-DJENKINS_HOME=$JENKINS_HOME\" -jar \"$JENKINS_WAR\" $PARAMS"RETVAL=$?if [ $RETVAL = 0 ]; thensuccessMY_SESSION_ID=`/bin/ps h -o sess -p $$`/bin/ps hww -u "$JENKINS_USER" -o sess,ppid,pid,cmd | \while read sess ppid pid cmd; do[ "$ppid" = 1 ] || continueecho "$cmd" | grep $JENKINS_WAR > /dev/null[ $? = 0 ] || continueecho $pid > "$JENKINS_PID_FILE"donetouch $JENKINS_LOCKFILEelsefailurefiecho;;stop)echo -n "Shutting down Jenkins "killproc jenkinsrm -f $JENKINS_LOCKFILERETVAL=$?echo;;try-restart|condrestart)if test "$1" = "condrestart"; thenecho "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}"fi$0 statusif test $? = 0; then$0 restartelsefi;;restart)$0 stop$0 start;;force-reload)echo -n "Reload service Jenkins "$0 try-restart;;reload)$0 restart;;status)status jenkinsRETVAL=$?;;probe)test "$JENKINS_CONFIG" -nt "$JENKINS_PID_FILE" && echo reload;;*)echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"exit 1;;
esac
exit $RETVAL

获取里面的参数

[root@fy-jenkins-prod jenkins]# cat /etc/rc.d/init.d/jenkins | grep -v '#'JENKINS_WAR="/usr/lib/jenkins/jenkins.war"
test -r "$JENKINS_WAR" || { echo "$JENKINS_WAR not installed";if [ "$1" = "stop" ]; then exit 0;else exit 5; fi; }JENKINS_CONFIG=/etc/sysconfig/jenkins
test -e "$JENKINS_CONFIG" || { echo "$JENKINS_CONFIG not existing";if [ "$1" = "stop" ]; then exit 0;else exit 6; fi; }
test -r "$JENKINS_CONFIG" || { echo "$JENKINS_CONFIG not readable. Perhaps you forgot 'sudo'?";if [ "$1" = "stop" ]; then exit 0;else exit 6; fi; }JENKINS_PID_FILE="/var/run/jenkins.pid"
JENKINS_LOCKFILE="/var/lock/subsys/jenkins". /etc/init.d/functions[ -f "$JENKINS_CONFIG" ] && . "$JENKINS_CONFIG"[ -n "$JENKINS_HOME" ] || { echo "JENKINS_HOME not configured in $JENKINS_CONFIG";if [ "$1" = "stop" ]; then exit 0;else exit 6; fi; }
[ -d "$JENKINS_HOME" ] || { echo "JENKINS_HOME directory does not exist: $JENKINS_HOME";if [ "$1" = "stop" ]; then exit 0;else exit 1; fi; }candidates="
/usr/java/jdk1.8.0_221/bin/java
/etc/alternatives/java
/usr/lib/jvm/java-1.8.0/bin/java
/usr/lib/jvm/jre-1.8.0/bin/java
/usr/lib/jvm/java-11.0/bin/java
/usr/lib/jvm/jre-11.0/bin/java
/usr/lib/jvm/java-11-openjdk-amd64
/usr/bin/java
"
for candidate in $candidates
do[ -x "$JENKINS_JAVA_CMD" ] && breakJENKINS_JAVA_CMD="$candidate"
donePARAMS="--logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war"
[ -n "$JENKINS_PORT" ] && PARAMS="$PARAMS --httpPort=$JENKINS_PORT"
[ -n "$JENKINS_LISTEN_ADDRESS" ] && PARAMS="$PARAMS --httpListenAddress=$JENKINS_LISTEN_ADDRESS"
[ -n "$JENKINS_HTTPS_PORT" ] && PARAMS="$PARAMS --httpsPort=$JENKINS_HTTPS_PORT"
[ -n "$JENKINS_HTTPS_KEYSTORE" ] && PARAMS="$PARAMS --httpsKeyStore='$JENKINS_HTTPS_KEYSTORE'"
[ -n "$JENKINS_HTTPS_KEYSTORE_PASSWORD" ] && PARAMS="$PARAMS --httpsKeyStorePassword='$JENKINS_HTTPS_KEYSTORE_PASSWORD'"
[ -n "$JENKINS_HTTPS_LISTEN_ADDRESS" ] && PARAMS="$PARAMS --httpsListenAddress=$JENKINS_HTTPS_LISTEN_ADDRESS"
[ -n "$JENKINS_HTTP2_PORT" ] && PARAMS="$PARAMS --http2Port=$JENKINS_HTTP2_PORT"
[ -n "$JENKINS_HTTP2_LISTEN_ADDRESS" ] && PARAMS="$PARAMS --http2ListenAddress=$JENKINS_HTTP2_LISTEN_ADDRESS"
[ -n "$JENKINS_DEBUG_LEVEL" ] && PARAMS="$PARAMS --debug=$JENKINS_DEBUG_LEVEL"
[ -n "$JENKINS_HANDLER_STARTUP" ] && PARAMS="$PARAMS --handlerCountStartup=$JENKINS_HANDLER_STARTUP"
[ -n "$JENKINS_HANDLER_MAX" ] && PARAMS="$PARAMS --handlerCountMax=$JENKINS_HANDLER_MAX"
[ -n "$JENKINS_HANDLER_IDLE" ] && PARAMS="$PARAMS --handlerCountMaxIdle=$JENKINS_HANDLER_IDLE"
[ -n "$JENKINS_EXTRA_LIB_FOLDER" ] && PARAMS="$PARAMS --extraLibFolder='$JENKINS_EXTRA_LIB_FOLDER'"
[ -n "$JENKINS_ARGS" ] && PARAMS="$PARAMS $JENKINS_ARGS"if [ "$JENKINS_ENABLE_ACCESS_LOG" = "yes" ]; thenPARAMS="$PARAMS --accessLoggerClassName=winstone.accesslog.SimpleAccessLogger --simpleAccessLogger.format=combined --simpleAccessLogger.file=/var/log/jenkins/access_log"
fiRETVAL=0case "$1" instart)echo "JENKINS_USER: $JENKINS_USER" >> /tmp/param.txtecho "JENKINS_PID_FILE: $JENKINS_PID_FILE" >> /tmp/param.txtecho "JENKINS_JAVA_CMD: $JENKINS_JAVA_CMD" >> /tmp/param.txtecho "JENKINS_JAVA_OPTIONS: $JENKINS_JAVA_OPTIONS" >> /tmp/param.txtecho "JENKINS_HOME: $JENKINS_HOME" >> /tmp/param.txtecho "JENKINS_WAR: $JENKINS_WAR" >> /tmp/param.txtecho "PARAMS: $PARAMS" >> /tmp/param.txtecho -n "Starting Jenkins "eval "daemonize -u \"$JENKINS_USER\" -p \"$JENKINS_PID_FILE\" \"$JENKINS_JAVA_CMD\" $JENKINS_JAVA_OPTIONS \"-DJENKINS_HOME=$JENKINS_HOME\" -jar \"$JENKINS_WAR\" $PARAMS"RETVAL=$?if [ $RETVAL = 0 ]; thensuccessMY_SESSION_ID=`/bin/ps h -o sess -p $$`/bin/ps hww -u "$JENKINS_USER" -o sess,ppid,pid,cmd | \while read sess ppid pid cmd; do[ "$ppid" = 1 ] || continueecho "$cmd" | grep $JENKINS_WAR > /dev/null[ $? = 0 ] || continueecho $pid > "$JENKINS_PID_FILE"donetouch $JENKINS_LOCKFILEelsefailurefiecho;;stop)echo -n "Shutting down Jenkins "killproc jenkinsrm -f $JENKINS_LOCKFILERETVAL=$?echo;;try-restart|condrestart)if test "$1" = "condrestart"; thenecho "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}"fi$0 statusif test $? = 0; then$0 restartelsefi;;restart)$0 stop$0 start;;force-reload)echo -n "Reload service Jenkins "$0 try-restart;;reload)$0 restart;;status)status jenkinsRETVAL=$?;;probe)test "$JENKINS_CONFIG" -nt "$JENKINS_PID_FILE" && echo reload;;*)echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"exit 1;;
esac
exit $RETVAL

使用手动命令执行

[root@fy-jenkins-prod jenkins]# cat /tmp/param.txt 
JENKINS_USER: root
JENKINS_PID_FILE: /var/run/jenkins.pid
JENKINS_JAVA_CMD: /usr/java/jdk1.8.0_221/bin/java
JENKINS_JAVA_OPTIONS: -Djava.awt.headless=true -Xms8g -Xmx8g -Xmn1g
JENKINS_HOME: /data/jenkins20221130
JENKINS_WAR: /usr/lib/jenkins/jenkins.war
PARAMS: --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --httpPort=9998 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20#上面是从脚本中获取的参数,后面使用之后将脚本中输出命令注释掉
#小技巧将jenkins中的命令提问给deepseek,再将参数提供,让它生成下面的命令sudo -u root /usr/java/jdk1.8.0_221/bin/java -Djava.awt.headless=true -Xms8g -Xmx8g -Xmn1g -DJENKINS_HOME=/data/jenkins20221130 -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --httpPort=9998 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20

在这里插入图片描述

发现内存不足,改为4g,正常

sudo -u root /usr/java/jdk1.8.0_221/bin/java -Djava.awt.headless=true -Xms4g -Xmx4g -Xmn1g -DJENKINS_HOME=/data/jenkins20221130 -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --httpPort=9998 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20

修改 /etc/rc.d/init.d/jenkins文件配置的/etc/sysconfig/jenkins配置文件,将Java启动参数的8g改为4g
在这里插入图片描述
在这里插入图片描述

systemctl daemon-reload 
systemctl restart jenkins
systemctl status jenkins

在这里插入图片描述

http://www.lryc.cn/news/537705.html

相关文章:

  • CF 144A.Arrival of the General(Java实现)
  • SAP-ABAP:SAP中REPORT程序和online程序的区别对比
  • Java发展史
  • vue3--SVG图标的封装与使用
  • Datawhale Ollama教程笔记3
  • 学习数据结构(10)栈和队列下+二叉树(堆)上
  • 洛谷 P3660 USACO17FEB Why Did the Cow Cross the Road III 题解
  • 【数据结构】(9) 优先级队列(堆)
  • 如何提升爬虫获取数据的准确性?
  • Obsidian及Zotero常用的插件
  • 闲鱼IP属地是通过电话号码吗?
  • C#多线程异步连接MySQL与SQLserver数据库
  • 51单片机-数码管
  • C#学习之S参数读取(s2p文件)
  • Spring Boot “约定大于配置”
  • 传输层协议TCP ( 下 )
  • NLP 八股 DAY1:BERT
  • 演示synchronized锁机制用法的简单Demo
  • Datawhale 数学建模导论二 笔记1
  • 差分解方程
  • EasyExcel 复杂填充
  • ESP32通过MQTT连接阿里云平台实现消息发布与订阅
  • NVIDIA Jetson Orin Nano 刷机过程
  • C#学习之数据转换
  • typecho快速发布文章
  • 深度学习R4周:LSTM-火灾温度预测
  • 探索Java中的集合类_特性与使用场景
  • 自动化遇到的问题记录(遇到问题就更)
  • 【云安全】云原生- K8S kubeconfig 文件泄露
  • 【愚公系列】《Python网络爬虫从入门到精通》008-正则表达式基础