【问题标题】:How to setup Jenkins with HA?如何使用 HA 设置 Jenkins?
【发布时间】:2018-02-08 22:15:54
【问题描述】:

目前我们使用 Jenkins 作为我们的 CI 系统,并且有一个主服务器和一个从属服务器,由 Saltstack 在 Openstack 上提供。如果我们的 Jenkins 主服务器出现故障,我们需要创建一个新的主服务器,我们需要从旧主服务器中提取文件并将其放入新的服务器中,但这至少需要 30 分钟。

有什么方法可以设置 Jenkins 的高可用性?

我已经与Gearman Plugin 确认过,但是如果 Gearman 服务器由于某种原因出现故障,我们还需要为 Gearman 设置 HA。

还有其他方法可以为 Jenkins 设置高可用性吗?

【问题讨论】:

    标签: linux jenkins continuous-integration jenkins-plugins high-availability


    【解决方案1】:

    Jenkins 没有一个伟大的 HA 故事。使用开源版本可以做的最好的事情是将 $JENKINS_HOME 中的所有文件放在共享文件系统上,然后有一个冷备用主机,如果活动主机出现故障,您可以启动它。这会将您的故障转移时间缩短到主服务器重启所需的时间,通常只需几分钟。

    您还可以查看 CloudBees 的 Jenkins Enterprise 产品,其中包括 High Availability Plugin

    【讨论】:

    • cloudbees 高可用性插件也只是冷故障转移。在我看来,他们希望共享 NFS 挂载能够将单点故障更改为 NFS。
    【解决方案2】:

    我使用cluster from scratch doc 创建一个 Jenkins WAN-HA 主动/被动集群。见附件Architecture Diagram for Jenkins HA using pacemaker

    /etc/init.d/jenkins 需要转换为 ocf 代理脚本。目前,当pcmk-1 关闭时,我通过pcmk-2 服务器上的systemd 手动启动Jenkins。

    【讨论】:

    • 如果您将信息包含在答案中,那就太好了。
    • 嗨@JFMeier,我添加了对我从中学习起搏器的文档的参考。如果您的目标是 WAN 网络之间的故障转移,IP/主机名故障转移将需要使用类似 Big5 GTM 的解决方案。另请参阅图表,了解哪些路径需要驻留在共享 DRBD 网络驱动器上。
    猜你喜欢
    • 2015-01-05
    • 1970-01-01
    • 2014-08-02
    • 2020-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多