2017-04-17 59 views
0

幾個月前,我在CENTOS 6.8服務器上安裝了Jenkins v.2.6,並且自上週以來所有工作都按預期工作,只是停止工作。詹金斯不工作,無法登錄,卡住然後超時

如果我去http://mydomain:8081,登錄頁面不會再加載,並給我HTTP 503錯誤HTTP錯誤:503訪問/登錄問題。原因:服務不可用。

我檢查端口8081,它仍在監聽,檢查Jenkins服務的狀態,它使用指定的PID#正常運行。

我沒有檢查Jenkins日誌,看到下面的消息,我不知道如何修復它,試着在Jenkins配置文件中添加--prefix/Jenkins作爲參數和127.0.0.1,就像其他線程建議的一樣,但沒有一個工作。

即使重新啓動服務器,仍然無法正常工作。

任何人都可以幫忙嗎?

感謝,

詹金斯日誌文件

Running from: /usr/lib/jenkins/jenkins.war 
    Apr 17, 2017 3:10:21 PM Main deleteWinstoneTempContents 
    WARNING: Failed to delete the temporary Winstone file /tmp/winstone/jenkins.war 
    Apr 17, 2017 3:10:22 PM org.eclipse.jetty.util.log.JavaUtilLog info 
    INFO: Logging initialized @1304ms 
    Apr 17, 2017 3:10:22 PM winstone.Logger logInternal 
    INFO: Beginning extraction from war file 
    Apr 17, 2017 3:10:22 PM org.eclipse.jetty.util.log.JavaUtilLog warn 
    WARNING: Empty contextPath 
    Apr 17, 2017 3:10:22 PM org.eclipse.jetty.util.log.JavaUtilLog info 
    INFO: jetty-9.2.z-SNAPSHOT 
    Apr 17, 2017 3:10:24 PM org.eclipse.jetty.util.log.JavaUtilLog info 
    INFO: NO JSP Support for /, did not find org.eclipse.jetty.jsp.JettyJspServlet 
    Apr 17, 2017 3:10:25 PM org.eclipse.jetty.util.log.JavaUtilLog warn 
    WARNING: Failed startup of context [email protected]{/,file:/var/cache/jenkins/war/,STARTING}{/var/cache/jenkins/war} 
    java.lang.reflect.InvocationTargetException 
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
      at java.lang.reflect.Method.invoke(Method.java:606) 
      at org.eclipse.jetty.webapp.IterativeDescriptorProcessor.visit(IterativeDescriptorProcessor.java:85) 
      at org.eclipse.jetty.webapp.IterativeDescriptorProcessor.process(IterativeDescriptorProcessor.java:72) 
      at org.eclipse.jetty.webapp.MetaData.resolve(MetaData.java:408) 
      at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1340) 
      at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:741) 
      at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:505) 
      at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
      at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132) 
      at org.eclipse.jetty.server.Server.start(Server.java:387) 
      at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:114) 
      at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:61) 
      at org.eclipse.jetty.server.Server.doStart(Server.java:354) 
      at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) 
      at winstone.Launcher.<init>(Launcher.java:152) 
      at winstone.Launcher.main(Launcher.java:352) 
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
      at java.lang.reflect.Method.invoke(Method.java:606) 
      at Main._main(Main.java:264) 
      at Main.main(Main.java:112) 
    Caused by: java.lang.UnsupportedClassVersionError: jenkins/util/SystemProperties : Unsupported major.minor version 52.0 
      at java.lang.ClassLoader.defineClass1(Native Method) 
      at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
      at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
      at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 
      at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
      at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
      at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
      at java.security.AccessController.doPrivileged(Native Method) 
      at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
      at org.eclipse.jetty.webapp.WebAppClassLoader.findClass(WebAppClassLoader.java:510) 
      at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:441) 
      at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:403) 
      at org.eclipse.jetty.server.handler.ContextHandler.loadClass(ContextHandler.java:1583) 
      at org.eclipse.jetty.webapp.StandardDescriptorProcessor.visitListener(StandardDescriptorProcessor.java:1956) 
      ... 25 more 

    Apr 17, 2017 3:10:25 PM org.eclipse.jetty.util.log.JavaUtilLog info 
    INFO: Started [email protected]{HTTP/1.1}{0.0.0.0:8081} 
    Apr 17, 2017 3:10:25 PM org.eclipse.jetty.util.log.JavaUtilLog info 

安裝JDK 1.8的所有工作正常後幾個小時,所有突然我得到了超時沒有任何HTTP錯誤消息這一次。

我再次檢查了JENKINS日誌,這是它這次顯示的內容。

Running from: /usr/lib/jenkins/jenkins.war 
Apr 18, 2017 8:53:27 PM Main deleteWinstoneTempContents 
WARNING: Failed to delete the temporary Winstone file /tmp/winstone/jenkins.war 
Apr 18, 2017 8:53:27 PM org.eclipse.jetty.util.log.JavaUtilLog info 
INFO: Logging initialized @861ms 
Apr 18, 2017 8:53:27 PM winstone.Logger logInternal 
INFO: Beginning extraction from war file 
Apr 18, 2017 8:53:27 PM org.eclipse.jetty.util.log.JavaUtilLog warn 
WARNING: Empty contextPath 
Apr 18, 2017 8:53:27 PM org.eclipse.jetty.util.log.JavaUtilLog info 
INFO: jetty-9.2.z-SNAPSHOT 
Apr 18, 2017 8:53:28 PM org.eclipse.jetty.util.log.JavaUtilLog info 
INFO: NO JSP Support for /, did not find org.eclipse.jetty.jsp.JettyJspServlet 
Jenkins home directory: /data/jenkins found at: SystemProperties.getProperty("JENKINS_HOME") 
Apr 18, 2017 8:53:29 PM org.eclipse.jetty.util.log.JavaUtilLog info 
INFO: Started [email protected]{/,file:/var/cache/jenkins/war/,AVAILABLE}{/var/cache/jenkins/war} 
Apr 18, 2017 8:53:29 PM org.eclipse.jetty.util.log.JavaUtilLog info 
INFO: Started [email protected]{HTTP/1.1}{0.0.0.0:8081} 
Apr 18, 2017 8:53:29 PM org.eclipse.jetty.util.log.JavaUtilLog info 
INFO: Started @2826ms 
Apr 18, 2017 8:53:29 PM winstone.Logger logInternal 
INFO: Winstone Servlet Engine v2.0 running: controlPort=disabled 
Apr 18, 2017 8:53:30 PM jenkins.InitReactorRunner$1 onAttained 
INFO: Started initialization 
Apr 18, 2017 8:53:30 PM jenkins.InitReactorRunner$1 onAttained 
INFO: Listed all plugins 
Apr 18, 2017 8:53:30 PM jenkins.bouncycastle.api.SecurityProviderInitializer addSecurityProvider 
INFO: Initializing Bouncy Castle security provider. 
Apr 18, 2017 8:53:30 PM jenkins.bouncycastle.api.SecurityProviderInitializer addSecurityProvider 
INFO: Bouncy Castle security provider initialized. 
Apr 18, 2017 8:53:38 PM jenkins.InitReactorRunner$1 onAttained 
INFO: Prepared all plugins 
Apr 18, 2017 8:53:38 PM jenkins.InitReactorRunner$1 onAttained 
INFO: Started all plugins 
Apr 18, 2017 8:53:40 PM hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1 error 
INFO: Failed to instantiate optional component hudson.plugins.build_timeout.operations.AbortAndRestartOperation$DescriptorImpl; skipping 
Apr 18, 2017 8:53:40 PM org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl <init> 
WARNING: Docker URL is not set, docker client won't be initialized 
Apr 18, 2017 8:53:41 PM jenkins.InitReactorRunner$1 onAttained 
INFO: Augmented all extensions 
Apr 18, 2017 8:53:42 PM jenkins.InitReactorRunner$1 onAttained 
INFO: Loaded all jobs 
Apr 18, 2017 8:53:42 PM hudson.model.AsyncPeriodicWork$1 run 
INFO: Started Download metadata 

任何人都可以幫助我嗎?正如我所說的,在將JDK升級到1.8並且在幾個小時內創建了10多個版本之後,它就可以工作,然後再次停止工作。

謝謝,

+0

https://issues.jenkins-ci.org/browse/JENKINS-43492。這似乎是一個實時問題。檢查最後2條評論 - 看起來應該已經修復(或即將推出)。 – Aaron

+0

'UnsupportedClassVersionError'幾乎肯定意味着安裝的二進制文件與Java VM的版本不匹配。所以請確保您安裝了正確的Java版本。 –

+0

正如我所說,謝謝,我已經這麼做了,除非它自動更新到新版本,並且需要更新版本的VM?它現在在java版本「1.7.0_51」上。我如何檢查Jenkins版本? –

回答

2

java類文件的裝置的52.0版,即Java源代碼被編譯爲jre8並且具有與jre8執行。

在這裏,類文件版本和theire等價的Java版本:

  • 爪哇SE 9 = 53(0x35十六進制)
  • 爪哇SE 8 = 52(0x34十六進制)
  • 爪哇SE 7 = 51 (0x33十六進制)
  • 爪哇SE 6.0 = 50(0x32十六進制)
  • 爪哇SE 5.0 = 49(十六進制0X31)
  • JDK 1.4 = 48(十六進制的0x30)

這意味着您必須升級jvm或者必須降級jenkins版本。當您在網頁瀏覽器中打開它時,您可以在jenkins安裝的角落看到jenkins版本。

下面是升級的官方博客帖子:https://jenkins.io/blog/2017/01/17/Jenkins-is-upgrading-to-Java-8/

由於Java 7並沒有因爲2015年4月得到任何公開更新,最好的辦法是給你的JVM升級到8。

+0

謝謝安裝java 1.8後,所有工作幾個小時,並創建幾個內置的,然後突然,不再工作,這次只是保持超時,並沒有HTTP錯誤消息了。任何人都可以幫助並理解爲什麼? –

1

對我來說,解決辦法是:

  • 安裝Java8:sudo apt install oracle-java8-jdk/stable
  • 設置Java8作爲默認的java:sudo update-alternatives --config java
  • 重啓詹金斯:sudo systemctl restart jenkins

在此之後我沒有詹金斯有任何問題。