gitlab runner特定runner vs共享runner vs组runner

xoefb8l8  于 2023-06-04  发布在  Git
关注(0)|答案(3)|浏览(718)

作为系统管理员,我使用gitlab作为git服务器,使用一些docker服务器作为部署服务器。我们在gitlab上有很多项目,现在我决定使用gitlab runner作为一个简单的CI/CD来自动部署我们的项目。
现在我被下面的一些跑步者的概念搞混了:

  • 特定运行程序vs共享运行程序
  • 共享runnervs组runner

那么现在,用哪一个呢?

vlju58qv

vlju58qv1#

共享流道对于多个项目之间具有类似要求的作业非常有用。与其让多个Runner为多个项目空闲,不如让一个或少量Runner处理多个项目。这使得维护和更新它们更容易。共享Runners使用公平使用队列处理作业。与使用FIFO队列的特定Runner相比,这可以防止项目创建数百个作业的情况,这些作业可能导致占用所有可用的共享Runner资源。特定流道对于具有特殊要求的作业或具有特定需求的项目非常有用。如果作业有某些要求,您可以设置特定的Runner,同时不必为所有Runner执行此操作。例如,如果您想要部署某个项目,您可以设置特定的Runner,使其具有相应的凭据。标签的使用在这种情况下可能是有用的。特定Runner使用FIFO队列处理作业。当您在一个组下有多个项目并且希望所有项目都可以访问一组Runners时,Group Runners非常有用。组运行器使用FIFO队列处理作业。

cigdeys3

cigdeys32#

我可能很晚才回答这个问题,但我想分享我对GitLab提供的Runners的看法,它可以运行我们的CI/CD管道作业。
当前GitLab版本-14.0

  • GitLab Runners是与GitLab CI/CD管道一起运行的应用程序,用于运行我们的作业。我们有三个类别的GitLab运行者-*

| 类型|适用范围|用途|
| - -----|- -----|- -----|
| 共享跑步者|全局级别-GitLab示例中所有组、子组和项目均可使用|如果GitLab示例中的所有组和项目都有类似的需求,我们更喜欢共享运行器|
| 团体跑者|集团级-集团内特定集团、子集团、项目可用|如果希望组中的所有项目都可以访问一组流道,请使用“组流道”。组运行者使用先进先出(FIFO)队列处理作业。|
| 特定跑步者|项目级别-可用于特定项目|如果要将流道用于特定项目,请使用“特定流道”。例如,当您有:* * 具有特定要求的作业,例如需要凭据的部署作业 * 有大量CI活动的项目,可以从与其他跑步者的分离中受益 *。|
我希望我能帮助你消除你的疑虑。你可以在Gitlab runner文档中阅读更多关于所有这些runner及其配置的信息。

kx7yvsdv

kx7yvsdv3#

GitLab 13.5(2020年10月)添加了一个功能,该功能还说明了共享运行器的用途:

查看群组时开启示例级共享运行器

GitLab SaaS包括Linux和Windows运行器,它们是易于使用的代理,可以运行GitLab CI/CD管道作业。这些runner在www.example.com UI中显示GitLab.com为“shared runners”,默认情况下是启用的,可以为每个项目禁用。
但是,有些组织要求CI/CD作业只能在自我管理的运行器上运行,因此在每个项目上禁用示例级共享运行器会导致不必要的管理开销。
现在,管理员可以在组级别启用或禁用共享跑步者。管理员还可以允许组覆盖全局设置,并在逐个项目的基础上使用共享运行器。

参见文档和Issue
关于团队跑步者:
参见GitLab 14.10(2022年4月)

扩展组跑者视图

群组跑步者现在以展开视图显示,您可以更轻松地管理与命名空间关联的跑步者
要查看新UI,请在左侧栏选择【CI/CD】。此视图包括与组和子组相关联的联机、脱机和过时运行者的数量。

参见文档和Issue
相对于:

GitLab Runner 14.10

GitLab Runner是一个轻量级、高度可扩展的代理,它可以运行构建作业并将结果发送回GitLab示例

GitLab Runner与GitLab CI/CD结合使用,后者是GitLab中包含的开源持续集成服务。

新增功能:

所有更改的列表都在GitLab Runner CHANGELOG中。
参见Documentation
GitLab 15.3(2022年8月)带来了:

改进了群组跑步者的细节和编辑

如果您是组所有者,当您查看跑步者的详细信息时,重新设计的详细信息页面具有改进的布局。
流道的元数据显示得更紧凑,您可以从新视图中编辑流道。
这些变化有助于使管理跑步者的体验更轻松、更高效。

参见文档和Issue
使用GitLab 16.0(2023年5月),您可以轻松地:

以用户身份创建群组运行者

以用户身份在管理区创建示例运行器

以用户身份在管理区创建示例运行器

在这个新的工作流中,向GitLab组添加新的运行器需要授权用户在GitLab UI中创建运行器并包含必要的配置元数据。
使用这种方法,现在可以轻松地跟踪运行程序到用户,这将帮助管理员解决构建问题或响应安全事件。
参见文档和:

相关问题