Kubernetes Jenkins 插件 - 从属设备始终离线

2024-07-03

我正在尝试使用 Jenkins/Kubernetes 插件与 Jenkins 协调 docker 从属服务器。

我正在使用这个插件:https://github.com/jenkinsci/kubernetes-plugin https://github.com/jenkinsci/kubernetes-plugin

我的问题是所有从站都离线,因此作业无法执行:

我已经使用 minikube 在我的本地机器上以及我们的操作组托管的 K8 集群上尝试过此操作。我尝试过 Jenkins 1.9 和 Jenkins 2。我总是得到相同的结果。截图来自Jenkins 1.642.4,K8 v1.2.0

这是我的配置...请注意,当我单击“测试连接”时,我获得了成功。另请注意,我不需要任何凭据(这是我能看到的与记录示例的唯一区别)。

Jenkins 日志反复显示以下内容:

    Waiting for slave to connect (11/100): docker-6b55f1b7fafce
Jul 20, 2016 5:01:06 PM INFO org.csanchez.jenkins.plugins.kubernetes.KubernetesCloud$ProvisioningCallback call
Waiting for slave to connect (12/100): docker-6b55f1b7fafce
Jul 20, 2016 5:01:07 PM INFO org.csanchez.jenkins.plugins.kubernetes.KubernetesCloud$ProvisioningCallback call
Waiting for slave to connect (13/100): docker-6b55f1b7fafce
Jul 20, 2016 5:01:08 PM INFO org.csanchez.jenkins.plugins.kubernetes.KubernetesCloud$ProvisioningCallback call

当我跑步时kubectl get events我看到这个:

24s         24s        1         docker-6b3c2ff27dad3   Pod                                Normal    Scheduled           {default-scheduler }      Successfully assigned docker-6b3c2ff27dad3 to 96.xxx.xx.159
24s         23s        2         docker-6b3c2ff27dad3   Pod                                Warning   MissingClusterDNS   {kubelet 96.xxx.xx.159}   kubelet does not have ClusterDNS IP configured and cannot create Pod using "ClusterFirst" policy. Falling back to DNSDefault policy.
23s         23s        1         docker-6b3c2ff27dad3   Pod       spec.containers{slave}   Normal    Pulled              {kubelet 96.xxx.xx.159}   Container image "jenkinsci/jnlp-slave" already present on machine
23s         23s        1         docker-6b3c2ff27dad3   Pod       spec.containers{slave}   Normal    Created             {kubelet 96.xxx.xx.159}   Created container with docker id 82fcf1bd0328
23s         23s        1         docker-6b3c2ff27dad3   Pod       spec.containers{slave}   Normal    Started             {kubelet 96.xxx.xx.159}   Started container with docker id 82fcf1bd0328

有任何想法吗?

更新:csanchez 建议的更多日志信息

 ➜  docker git:(master) ✗ kubectl get pods --namespace default -o wide
NAME                   READY     STATUS    RESTARTS   AGE       NODE
docker-6bb647254a2a4   1/1       Running   0          1m        96.x.x.159

➜  docker git:(master) ✗ kubectl log docker-6bafbac10b392

    Jul 20, 2016 6:45:10 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Connecting to 96.x.x.159:50000 (retrying:10)
java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)

我得看看这个端口 50000 是用来做什么的?


我只是想对新手的上述答案添加更多解释。

在暴露jenkins UI的同时,还需要暴露内部端口50000 这是一个用于 jenkins 部署的简单服务:

apiVersion: v1
kind: Service
metadata:
  name: jenkins
  namespace: jenkins
spec:
  type: NodePort
  ports:
    - port: 8080
      name: "http"
      nodePort: 30000
      targetPort: 8080
    - port: 50000
      name: "slave"
      nodePort: 30010
      targetPort: 50000
  selector:
    app: jenkins

对于 Jenkins UI 的外部访问,nodePort正在上面的配置中使用。我将端口 8080 暴露给 nodePort 30000(jenkins UI 现在将在 node_ip:30000 处可用),并将 pod 端口 50000 暴露给 nodeport 30010。

创建 svc 后:

$ kubectl get svc -n jenkins
NAME      CLUSTER-IP    EXTERNAL-IP   PORT(S)                          AGE
jenkins   10.233.5.94   <nodes>       8080:30000/TCP,50000:30010/TCP   23m

Now add jenkins_ip:30010 as Jenkins Tunnel.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kubernetes Jenkins 插件 - 从属设备始终离线 的相关文章

随机推荐

  • 帮助将 Reflector 解构转化为可编译代码

    所以我正在 Reflector ing 一些框架 2 0 代码并最终得到以下解构 fixed void voidRef3 void someMember 这不会编译 因为 The right hand side of a fixed sta
  • 帮助将 Reflector 解构转化为可编译代码

    所以我正在 Reflector ing 一些框架 2 0 代码并最终得到以下解构 fixed void voidRef3 void someMember 这不会编译 因为 The right hand side of a fixed sta
  • 带参数的 Rails link_to 远程

    我想使用链接触发模型的远程操作 基本上 这个链接所需要做的就是触发一个带有一个参数的方法 这是我的代码 link to Move Up reorder collection folder path collection folder reo
  • 带参数的 Rails link_to 远程

    我想使用链接触发模型的远程操作 基本上 这个链接所需要做的就是触发一个带有一个参数的方法 这是我的代码 link to Move Up reorder collection folder path collection folder reo
  • 如何转义字符串以在 Boost Regex 中使用

    我刚刚开始了解正则表达式 并且正在使用 Boost Regex 库 我需要使用包含特定 URL 的正则表达式 但它令人窒息 因为显然 URL 中存在为正则表达式保留的字符 需要转义 Boost 库中是否有任何函数或方法可以转义此类用途的字符
  • 如何转义字符串以在 Boost Regex 中使用

    我刚刚开始了解正则表达式 并且正在使用 Boost Regex 库 我需要使用包含特定 URL 的正则表达式 但它令人窒息 因为显然 URL 中存在为正则表达式保留的字符 需要转义 Boost 库中是否有任何函数或方法可以转义此类用途的字符
  • 如何限制对 MySQL 中用户定义函数的访问

    我是 MySQL 新手 我在我的一台服务器上运行了 Nessus 扫描 并遇到了一个安全发现 其中有一个解决方法来限制对用户定义函数的访问 有人能帮助我吗 Update 解决方法是限制访问以在服务器上创建用户定义的函数 这应该有效 你可以在
  • 如何限制对 MySQL 中用户定义函数的访问

    我是 MySQL 新手 我在我的一台服务器上运行了 Nessus 扫描 并遇到了一个安全发现 其中有一个解决方法来限制对用户定义函数的访问 有人能帮助我吗 Update 解决方法是限制访问以在服务器上创建用户定义的函数 这应该有效 你可以在
  • 如何将微秒转换为时间戳?

    我从未加密的 DAT 文件中获取了这段内容 Code 00 e1 27 17 6f e6 69 c0 换算成十进制为 63 374 851 375 000 000 该数字的单位是微秒 而这个巨大的数字无法绕过 1st January 197
  • 如何将微秒转换为时间戳?

    我从未加密的 DAT 文件中获取了这段内容 Code 00 e1 27 17 6f e6 69 c0 换算成十进制为 63 374 851 375 000 000 该数字的单位是微秒 而这个巨大的数字无法绕过 1st January 197
  • jQPlot - 删除垂直网格线

    我使用 jqPlot 作为我的图表框架 并且我的应用程序中有许多图表 主要是折线图和堆积条形图 我现在要求仅在这些图表上显示水平网格线 并且在 jqPlot 中看不到任何选项来执行此操作 有一个showGridline选项 但这会完全禁用网
  • jQPlot - 删除垂直网格线

    我使用 jqPlot 作为我的图表框架 并且我的应用程序中有许多图表 主要是折线图和堆积条形图 我现在要求仅在这些图表上显示水平网格线 并且在 jqPlot 中看不到任何选项来执行此操作 有一个showGridline选项 但这会完全禁用网
  • XML解析:编码utf-8 & UTF-8

    我正在尝试解析其中的值 其xml编码是这样的 当我试图get response在 logcat 中抛出消息 如图所示 11 19 17 25 13 350 W System err 3360 This is not valid URL 11
  • XML解析:编码utf-8 & UTF-8

    我正在尝试解析其中的值 其xml编码是这样的 当我试图get response在 logcat 中抛出消息 如图所示 11 19 17 25 13 350 W System err 3360 This is not valid URL 11
  • Nodejs、expressjs - 如何提供延迟响应

    我正在构建一个网络服务 我使用nodejs phantomjs 和expressjs 我正在学习这三个 我想在处理完客户的查询后向客户提供延迟响应 例如 我正在处理来自客户端的某些输入 然后 我想在后端处理数据 这平均需要大约 10 秒 然
  • Nodejs、expressjs - 如何提供延迟响应

    我正在构建一个网络服务 我使用nodejs phantomjs 和expressjs 我正在学习这三个 我想在处理完客户的查询后向客户提供延迟响应 例如 我正在处理来自客户端的某些输入 然后 我想在后端处理数据 这平均需要大约 10 秒 然
  • 如何在 Azure Web 作业中实例化 OWIN IDataProtectionProvider?

    我需要一个实例IDataProtectionProvider使用身份框架生成电子邮件确认令牌UserManager在 Azure Web 作业工作线程中 var confirmToken await UserManager Generate
  • 如何在 Azure Web 作业中实例化 OWIN IDataProtectionProvider?

    我需要一个实例IDataProtectionProvider使用身份框架生成电子邮件确认令牌UserManager在 Azure Web 作业工作线程中 var confirmToken await UserManager Generate
  • Kubernetes Jenkins 插件 - 从属设备始终离线

    我正在尝试使用 Jenkins Kubernetes 插件与 Jenkins 协调 docker 从属服务器 我正在使用这个插件 https github com jenkinsci kubernetes plugin https gith
  • Kubernetes Jenkins 插件 - 从属设备始终离线

    我正在尝试使用 Jenkins Kubernetes 插件与 Jenkins 协调 docker 从属服务器 我正在使用这个插件 https github com jenkinsci kubernetes plugin https gith