由于我已經通過 yum update jenkins 在 CentOS7 上安裝了 jenkins 2.319.1,我遇到了問題,我可以通過 sudo systemctl start jenkins 將 jenkins 作為服務啟動。然后 jenkins 將啟動一個我可以通過瀏覽器訪問它.. 但是,如果我嘗試通過 sudo systemctl status jenkins 獲取服務的狀態。
我先得到:
PROD [root@abmrndplje001 grafra1969]$ systemctl status jenkins
● jenkins.service - LSB: Jenkins Automation Server
Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
Drop-In: /etc/systemd/system/jenkins.service.d
└─00-proxy.conf
Active: activating (start) since Wed 2021-12-15 19:42:42 CET; 1min 54s ago
Docs: man:systemd-sysv-generator(8)
Control: 969 (jenkins)
CGroup: /system.slice/jenkins.service
├─ 969 /bin/sh /etc/rc.d/init.d/jenkins start
├─1004 runuser -s /bin/bash jenkins -c ulimit -S -c 0 >/dev/null 2>&1 ; /etc/alternatives/java ...
├─1035 bash -c ulimit -S -c 0 >/dev/null 2>&1 ; /etc/alternatives/java -Djava.awt.headless=true...
└─1041 /etc/alternatives/java -Djava.awt.headless=true -Xmx8g -XX:MaxPermSize=1024m -DJENKINS_H...
Dec 15 19:42:42 abmrndplje001.pass-consulting.com systemd[1]: Starting LSB: Jenkins Automation Server...
Dec 15 19:42:42 abmrndplje001.pass-consulting.com runuser[1004]: pam_unix(runuser:session): session open...0)
Dec 15 19:42:42 abmrndplje001.pass-consulting.com jenkins[969]: Starting Jenkins OpenJDK 64-Bit Server V....0
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: An illegal reflective access op...ed
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: Illegal reflective access by co...n)
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: Please consider reporting this ...$2
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: Use --illegal-access=warn to en...ns
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: All illegal access operations w...se
Hint: Some lines were ellipsized, use -l to show in full.
PROD [root@abmrndplje001 grafra1969]$
大約 5 分鐘后。狀態從激活變為失敗,并給出超時原因。然而,這些行程仍在運行,jenkins 正在運行,可以通過瀏覽器訪問。
PROD [root@abmrndplje001 grafra1969]$ systemctl status jenkins -l
● jenkins.service - LSB: Jenkins Automation Server
Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
Drop-In: /etc/systemd/system/jenkins.service.d
└─00-proxy.conf
Active: failed (Result: timeout) since Wed 2021-12-15 19:47:42 CET; 5min ago
Docs: man:systemd-sysv-generator(8)
Process: 969 ExecStart=/etc/rc.d/init.d/jenkins start (code=killed, signal=TERM)
CGroup: /system.slice/jenkins.service
├─1004 runuser -s /bin/bash jenkins -c ulimit -S -c 0 >/dev/null 2>&1 ; /etc/alternatives/java -Dj ava.awt.headless=true -Xmx8g -XX:MaxPermSize=1024m -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenk ins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --ht tpListenAddress=localhost --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
├─1035 bash -c ulimit -S -c 0 >/dev/null 2>&1 ; /etc/alternatives/java -Djava.awt.headless=true -X mx8g -XX:MaxPermSize=1024m -DJENKINS_HOME=/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/l og/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --httpListenAddress=localhos t --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=20
└─1041 /etc/alternatives/java -Djava.awt.headless=true -Xmx8g -XX:MaxPermSize=1024m -DJENKINS_HOME =/var/lib/jenkins -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cac he/jenkins/war --daemon --httpPort=8080 --httpListenAddress=localhost --debug=5 --handlerCountMax=100 --handl erCountMaxIdle=20
Dec 15 19:42:42 abmrndplje001.pass-consulting.com jenkins[969]: Starting Jenkins OpenJDK 64-Bit Server VM war ning: Ignoring option MaxPermSize; support was removed in 8.0
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: An illegal reflective access operati on has occurred
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: Illegal reflective access by com.goo gle.inject.internal.cglib.core.$ReflectUtils$2 (file:/var/cache/jenkins/war/WEB-INF/lib/guice-4.0.jar) to met hod java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: Please consider reporting this to th e maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$2
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
Dec 15 19:42:55 abmrndplje001.pass-consulting.com jenkins[969]: WARNING: All illegal access operations will b e denied in a future release
Dec 15 19:47:42 abmrndplje001.pass-consulting.com systemd[1]: jenkins.service start operation timed out. Term inating.
Dec 15 19:47:42 abmrndplje001.pass-consulting.com systemd[1]: Failed to start LSB: Jenkins Automation Server.
Dec 15 19:47:42 abmrndplje001.pass-consulting.com systemd[1]: Unit jenkins.service entered failed state.
Dec 15 19:47:42 abmrndplje001.pass-consulting.com systemd[1]: jenkins.service failed.
如何正確啟動服務?
我剛剛發現在不同的 CentOS7 服務器上運行相同的 jenkins 版本并且服務狀態為 active。
到目前為止我看到的唯一區別是作業版本沒有使用 runuser 作為第一個命令
[root@jenkins2-rnd grafra1969]# systemctl status jenkins
● jenkins.service - LSB: Jenkins Automation Server
Loaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor preset: disabled)
Active: active (running) since Thu 2021-12-16 15:57:56 CET; 18min ago
Docs: man:systemd-sysv-generator(8)
Process: 4436 ExecStop=/etc/rc.d/init.d/jenkins stop (code=exited, status=0/SUCCESS)
Process: 4448 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/jenkins.service
├─ 1883 ssh-agent
├─ 3329 ssh-agent
├─ 4452 /etc/alternatives/java -Djava.awt.headless=true -Dhudson.plugins.active_directory.ActiveDirectorySecurityRealm.forceLdaps=f...
├─ 5150 ssh-agent
├─ 8365 ssh-agent
├─12083 sh -c ({ while [ -d '/var/lib/jenkins/workspace/Pam4Web_master@tmp/durable-8b6bf811' -a \! -f '/var/lib/jenkins/workspace/P...
├─12084 sh -c ({ while [ -d '/var/lib/jenkins/workspace/Pam4Web_master@tmp/durable-8b6bf811' -a \! -f '/var/lib/jenkins/workspace/P...
├─12085 sh -xe /var/lib/jenkins/workspace/Pam4Web_master@tmp/durable-8b6bf811/script.sh
├─12088 /usr/lib/jvm/java-11-openjdk/bin/java -classpath /var/lib/jenkins/tools/hudson.tasks.Maven_MavenInstallation/Maven-3.6/boot...
├─12969 sleep 3
├─13279 ssh-agent
├─14595 ssh-agent
├─15882 ssh-agent
└─17056 ssh-agent
uj5u.com熱心網友回復:
我遇到了完全相同的問題并修復了它。問題來自您的 /etc/init.d/jenkins。您可能對其進行了修改,并且更新程序(rhel7 上的 yum)無法替換它。這個“舊檔案”與新版本的 jenkins 不太兼容。這就是 systemctl 命令無法正常作業的原因。
uj5u.com熱心網友回復:
我仍然不明白究竟需要做什么來解決這個問題:
“我遇到了完全相同的問題并修復了它。問題來自您的 /etc/init.d/jenkins。您可能對其進行了修改,并且更新程序(rhel7 上的 yum)無法替換它。這個‘舊檔案’與新版本的 jenkins 不太兼容。這就是 systemctl 命令無法正常作業的原因。
有人可以幫忙嗎?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/390036.html
