2

我正在使用 Jenkins 进行 CI,
我听说我应该有一个专用的服务器和从属服务器分别用于运行 Jenkins 和构建任务 -
这是真的吗?

我可以理解这一点,因为服务器可能不够强大,无法处理服务器本身和运行构建任务,
但是有任何明确的技术原因吗?

4

2 回答 2

5

最佳实践是为 Jenkins-Server配备一台单独
的机器, 并且根本不将其用于构建

这与 CPU 功率或内存资源无关 -

  • 构建机器应该有一个预定义的配置
    而 Jenkins 不应该是其中的一部分。
    (Jenkins 的要求甚至可能与构建机器的要求相冲突)

  • 您应该能够启动/克隆/升级/恢复/丢弃构建机器
    ,而不会对 Jenkins 产生任何影响。

当然,如果您的资源有限,您可以选择一台机器,
但如果您对构建自动化很认真 - Jenkins 应该有自己的服务器。

于 2012-12-19T10:40:22.493 回答
2

您可能不需要专用硬件/VM 来运行 Jenkins 服务器,因为实际的 Jenkins 进程(没有运行构建)使用的资源非常少。但这一切都取决于你想用你的 Jenkins 设置完成什么。

您想跨多个平台为多个项目运行连续构建吗?那么使用master和slave是唯一的方法。另一方面,如果您只为几个项目运行相当简单的构建,那么您只需要一台机器来运行构建和 Jenkins 进程。

您可以将 Jenkins 配置为同时运行多个构建,因此如果您有一台四核机器,您可以安全地运行 2 个构建,并且在分析资源使用情况后可能会运行第三个构建。

在我的最后一次演出中,我使用了一台 8GB RAM 的四核机器来运行:

  • Jenkins 运行 Selenium 构建
  • 带有 Windows XP 的 VirtualBox 虚拟机
  • Tomcat 的两个实例,每个实例都部署了两个应用程序。

而且这台机器还有更多的余地。

于 2012-12-19T03:07:25.170 回答