【问题标题】:Jenkins-Worker: SSH or JNLP Connection?Jenkins-Worker:SSH 还是 JNLP 连接?
【发布时间】:2019-05-13 13:46:46
【问题描述】:

现在我发现了 2 个可能的解决方案来创建 Jenkins Slaves 或 Jenkins Workers:

  • 使用 SSH-Slave 插件
  • 使用 JNLP

我现在的问题:什么是更好/更稳定的解决方案?为什么?

我发现自己使用这两种解决方案都有一些利弊,但我不想影响讨论

【问题讨论】:

  • 我有同样的问题,我们正在使用 JNLP,它对丢包非常敏感,任何单个丢包都会破坏从属/主控之间的连接以及丢弃正在运行的作业

标签: jenkins ssh jenkins-plugins jnlp


【解决方案1】:
  • Java Web Start -- 底层的 Java 网络启动协议 (JNLP) 是 Windows 代理的推荐连接模式。 jenkins.wiki.io

  • SSH 推荐用于 Linux 代理

如果将两者都推荐用于不同的平台,则优点和缺点并不重要。

【讨论】:

  • 我不确定它是否完全依赖于平台。在 docker 上运行的 Linux 通常不会配置 SSH,因此在 Kubernetes 上使用 JNLP。我知道 I/O 上的 SSH 块和 JNLPv3 一样。不确定 JNLPv4 如何与 SSH 相抗衡,我认为这就是我们正在寻找的答案。
【解决方案2】:

我们只使用 SSH,主要是因为在公司环境中:

  • 请求在代理服务器上打开 JNLP 端口 (agent being the new name for slave in Jenkins)
  • 对其他服务器的任何查询都应使用经过身份验证的流程(例如带有密钥的 SSH,或帐户用户名/密码)

此外,我们可以在 Launch 方法配置中添加各种 JVM 选项来监控 GC 和其他内存参数。

【讨论】:

  • 我不确定这是否真的涵盖了每种方法的优缺点。
  • @Levi 我对 JNLP 的优点不太熟悉:我无权在企业环境中使用它。
猜你喜欢
  • 2019-03-02
  • 2021-04-15
  • 2016-12-08
  • 2018-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多