簡體   English   中英

Kubernetes插件容器無法連接回Jenkins

[英]Kubernetes plugin containers can't connect back to Jenkins

我有一個在AWS的同一網絡中運行的Jenkins和Kubernetes集群。 詹金斯有自己的實例。

我已經配置了Kubernetes插件,如下所示: 在此處輸入圖片說明

使用推薦的JNLP docker映像。 Jenkins JNLP端口配置為靜態5000

現在,當我開始工作時,它表明節點已脫機。 當我單擊脫機節點時,我得到以下信息:

在此處輸入圖片說明

這使我進入了k8集群。 運行docker ps顯示沒有容器正在運行。 然而:

在此處輸入圖片說明

從那里,我找到運行了哪些docker容器以及此后留下的日志:

在此處輸入圖片說明

我使用: https : //github.com/jenkinsci/docker-jnlp-slave作為圖像

https://github.com/jenkinsci/kubernetes-plugin

詹金斯版本: 2.27

k8: hyperkube:v1.4.3_coreos.0

Jenkins確實啟動了容器,我想它會運行並出錯,因為在容器運行期間沒有提供有效的參數? 我需要它是一個無需手動登錄到我的容器(Java客戶端)的過程。 我該如何實現?

更新

基於此答案: kubernetes從站無法注冊到jenkins主站

如果我登錄到容器並運行Jenkins在無法連接的主機下顯示的命令:

java -jar /usr/share/jenkins/slave.jar -jnlpUrl https://test.myhost.com/computer/jenkinsminions-10f0b7d49054ac/slave-agent.jnlp -secret 62637e83008f50eb94483ad609e9a2719d313fa56e640e4beca9eebeaf0b1af2

容器通過JNLP2連接,然后作業運行。

我試圖按照建議添加自變量,但是沒有運氣。 容器仍無法自動連接: 在此處輸入圖片說明

容器日志中是否有“根目錄不可寫”消息?

[...]
Exception in thread "main" java.lang.RuntimeException: Root directory not writable
    at hudson.remoting.FileSystemJarCache.<init>(FileSystemJarCache.java:44)
    at hudson.remoting.Engine.<init>(Engine.java:139)
    at hudson.remoting.jnlp.Main.createEngine(Main.java:164)
    at hudson.remoting.jnlp.Main.main(Main.java:148)
    at hudson.remoting.jnlp.Main._main(Main.java:144)
    at hudson.remoting.jnlp.Main.main(Main.java:110)

在這種情況下,您可能會遇到類似於this的問題。

PS:如果看不到日志,請嘗試刪除“分配偽偽”選項

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM