云客户?
免费开始>
在MyJFrog >中升级
云有什么新>





概述

节点池提供一种方便的方法对构建节点进行逻辑分组在JFrog管道环境中。这使您能够在不同的节点上同时运行步骤。


管理员可以创建任意数量的节点池。对于SaaS部署,命名为default-dynamic-nodepool默认可用。对于内部部署,至少有一个节点池是添加并指定为默认节点池,并为在所选项目中执行的管道分配至少一个构建节点。

节点池必须被指定为包含以下类型之一的构建节点:

  • 动态节点-构建节点,由云或管道按需上下旋转Kubernetes服务。这可以帮助扩展运营,并通过不产生运行空闲节点的云服务费用来帮助管理成本。
  • 静态节点—构建通过固定IP地址持久可用的节点(虚拟机)。
    有关可以分配给JFrog pipeline的静态节点的最低要求以及如何添加静态节点的信息,请参见管理管道静态节点
页面内容




管理动态节点池

动态节点池从云或Kubernetes服务按需上下旋转构建节点。创建动态节点池时,必须配置并提供管理集成以下云或Kubernetes服务之一:

动态节点为当一个步骤被触发时提供,然后在预设的空闲时间后缓存或销毁(如果在该间隔内没有新的步骤被触发)。当在云服务上使用时,t他可以通过不产生运行空闲节点的费用来帮助管理成本。

以下操作只能由管理员用户配置pipes动态节点池运行。

添加动态节点池

若要为按需构建节点创建新的动态节点池,请转到管理|管道|节点池,点击添加节点池,然后选择动态

当选择用户定义集成时,SaaS用户可以创建自定义动态节点并自定义所有相关设置。用户可以选择任何云提供商,不受机器类型、地区等设置的限制。


不需要的字段可以留空。例如,您可能不希望将字段设置为限制节点数量、磁盘使用率或超时时间。完成后,单击保存节点池

一般设置
的名字

节点池名称由字母和数字组成。

在指定节点池中添加节点池时项目,默认为名称以项目密钥作为前缀。保存成功后,节点池名称不可编辑。

“默认节点池”
选中时,将该节点池设置为所选工程中所有管道的默认节点池。所有没有显式定义使用哪个节点池的步骤都将在默认节点池的节点上运行。
选择集成/选择生成映像
集成
从可用的中创建或选择管理集成对于下列情况之一云或Kubernetes服务
构建图像

构建平面图像亮点:

  • 从可用的构建映像中进行选择。例如,AWS上的Amazon Machine Image (AMI)。
  • 点击添加构建映像e添加自己的自定义虚拟机映像。有关更多信息,请参见创建自定义虚拟机镜像
附加的设置
机器类型
从服务的可用机器(实例)类型中选择。例如:c4。在AWS上很大。
取机类型

单击,可从云提供商获取所选地区/区域的所有支持的机器类型(除了机器类型的静态列表)。该按钮仅在选择用户定义的集成和有效区域(在某些情况下)时可用。

节点的限制
该节点池可按需创建的最大节点数。
磁盘大小

可选的。配置节点动态磁盘大小。

最低限额为:

  • AWS (Windows): 120gb
  • Azure (Windows): 128gb
  • 其他:60gb

  • 此选项仅适用于管道内部版本。
  • 如果未指定磁盘大小,节点将默认使用映像的磁盘大小。

超时

连接超时的秒数。缺省值是3600秒。

有关更多信息,请参见设置步骤超时时间

节点空闲时间间隔
一个节点在被销毁之前可以空闲的分钟数。
不安全的Docker注册表
逗号分隔的允许的列表不安全的docker注册表
Kubernetes设置(见在Kubernetes上创建动态节点有关配置程序)
存储类

存储类可从服务中使用。

运行Kubectl获得存储类列出集群中的存储类。

CPU

CPU限制资源环境下每一个豆荚。

标签

可选标签节点选择器

内存

内存限制资源环境下每一个豆荚。

名称空间

名称空间为节点。

AWS的设置(见AWS密钥集成有关配置要求)
SSH密钥对

云服务的SSH加密接入密钥。项目名称在AWS上创建SSH密钥对

安全组ID
创建的所有节点的可选安全组ID。
子网Id
可选VPC子网ID
GCP的设置(见谷歌云集成有关配置要求)

在宿主GCP区域内

网络标签

可选网络标签(文本属性)

子网的名字
可选子网名称
分配公网IP
选中后,将创建具有公共IP地址的节点
Azure的设置(见Azure密钥集成有关配置要求)
订阅ID
唯一标识您的GUID订阅使用Azure服务
子网的名字
Vnet子网名称
联接的名字
Azure虚拟网络名称(例如,myVirtualNetwork
资源组名称
资源组名称(例如:myResourceGroup
安全组名称
可选网卡网络安全组
SSH公钥
Linux虚拟机的SSH公钥
管理员用户名
RDP用户名(仅限Windows节点,可选)
管理员密码
RDP的密码(仅限Windows节点,可选)
启用非root用户运行的节点

选中时,命名为pipelinesRootless将自动创建,节点池中的所有节点将使用该非root用户。

限制

以非root用户运行节点有一定的限制。有关更多信息,请参见以非根用户初始化节点

缓存设置

启用缓存
选中时,启用节点缓存
重置缓存

选择重置缓存的间隔类型:星期几按天数分类

仅当启用节点缓存时可用。

为该节点池分配管道
任何管道源

选中后,从任何管道源加载的管道都可以使用该节点池。

取消选择此选项将节点池的使用限制为一组管道源

节点持续时间

触发一个步骤时,将启动一个动态节点来执行该步骤。步骤完成后,该节点可以执行后续步骤,直到终止为止。

如果未启用节点缓存,在节点第一次启动后,Pipelines将在每个节点空闲间隔检查节点。如果节点处于空闲状态,则pipes终止该节点。这确保以有效的方式管理构建基础设施,以帮助您控制计算成本。

动态节点缓存

启用节点缓存后,可以避免重复耗时的过程(例如安装或加载大量依赖项数据),从而加快构建的执行速度。该特性仅支持动态节点池。

当为动态节点池启用节点缓存时,pipes会在执行步骤后暂停节点,而不是在指定的空闲时间后终止节点。当执行下一步时,暂停的节点将重新启动,保留作为前一步一部分安装的任何Docker映像或依赖项。这大大加快了将抽取或构建Docker映像作为工作流程一部分的构建。

此外,该节点可以更快地执行作业,因为从暂停状态重新启动节点要比配置新节点快得多。因此,如果您的构建只需要执行几分钟,则可以节省每次构建的节点配置时间,这将迅速增加。


管理静态节点池

静态节点池是持久可用的构建节点(虚拟机)的集合。静态节点使您能够在自己的基础设施上执行管道步骤。有关更多信息,请参见管理管道静态节点

以下操作只能由管理员用户命令,配置pipes静态节点池。

有关故障排除节点初始化问题的信息,请参见故障处理—节点初始化


添加静态节点池

若要创建静态构建节点的新节点池,请转到管理|管道|节点池,点击添加节点池,然后选择静态

不需要的字段可以留空。例如,您可能不希望将字段设置为限制节点数量、磁盘使用率或超时时间。完成后,单击保存节点池

一般设置
的名字
节点池名称由字母和数字组成。
“默认节点池”
选中,表示将该节点池设置为所有管路的默认节点池。所有没有显式定义使用哪个节点池的步骤都将在默认节点池的节点上运行。
附加的设置
体系结构

目前仅限于x86_64

操作系统

从所选体系结构支持的操作系统列表中选择。有关支持的操作系统和体系结构组合的列表,请参阅运行时的图片

运行时版本

将用于运行管道步骤的默认运行时映像。选择一个特定的运行时,以确保构建节点具有语言/服务/ cli等所需的版本。要了解更多信息,请参见管理运行时

节点的限制
限制节点池的最大节点数量。
最大磁盘使用率
限制最大磁盘使用率。超过这个最大值的构建节点将被标记为失败。
超时

管道步骤超时的最大时间(以秒为单位)。当您的步骤没有指定任何超时时,将使用此超时。缺省值为3600秒。

有关更多信息,请参见设置步骤超时时间

不安全的Docker注册表
逗号分隔的允许的列表不安全的docker注册表
启用非root用户运行的节点

选择以启用以非root用户运行节点。

确保中提到的先决条件以非根用户初始化静态节点页可以作为非根用户运行生成节点。

限制

以非root用户运行节点有一定的限制。有关更多信息,请参见以非根用户初始化节点

enforceNonRootNodes全局设置

管道管理员可以使用enforceNonRootNodes系统级设置,强制只使用那些配置了非root的节点池。当这个全局设置设置为真正的,优先于用户界面中配置的非root用户。注意,目前只有Ubuntu 18和Ubuntu 20支持这个功能。

根据管道安装的类型,将enforceNonRootNodesSetting可配置如下:

  • 公共图:如果安装正在使用公共图表,请更改其中的设置tvalues.yml文件。
  • 码头工人:如果使用Docker进行安装,则更改运行时配置章节。管道系统YAML
为该节点池分配管道
任何管道源

选中后,从任何管道源加载的管道都可以使用该节点池。

取消选择此选项将节点池的使用限制为一组管道源


一旦创建了静态节点池,就可以添加静态节点


管理所有节点池

以下操作只能由管理员用户配置pipes节点池(静态和动态)以供运行。

限制节点池使用

如果一个节点池在一个Project中,它可能被分配给一个或多个环境,并且与该节点池共享至少一个环境的管道源中的管道可以使用该节点池。缺省情况下,节点池处于DEV环境。

不在项目中的节点池对不在项目中的管道源中的管道可用。此外,还可以规定进一步的限制,以限制使用特定的管道源和已经给出的用户权限使用这些管道资源。

在增加或修改节点池时,可设置该限制。

  1. 为该节点池分配管道,取消选中的选项任何管道源
  2. 在显示的界面中,从可用的管道源列表中进行选择,并将行(通过单击-拖动或箭头按钮)移动到包含的管道源列表中。


  3. 完成后,单击保存节点池


查看可用节点池

浏览已添加且可用的节点池列表,管理|管道|节点池应用|管道|节点池

非管理员用户将只显示他们被允许使用的节点池。


超过最大限额

节点池中节点数量超过最大规格时,将在节点池中以感叹号提示最大限制列。

节点发放状态

在“节点池”列表视图中,可以查看到提供状态列以颜色表示每个节点的供应状态。每种颜色表示节点生命周期中的一个阶段。

颜色 提供状态 描述

不提供 该节点未被请求发放。

等待 当一个节点被供应时,它首先进入等待状态。这意味着云提供商正在初始化节点和/或尚未将状态报告给Pipelines。

处理
  • 云提供商将节点的状态报告给管道,管道正在设置代理。
  • 节点正在运行构建。

成功 节点成功初始化,正在等待管道构建。

失败

节点故障。这通常是由内存不足问题引起的。但是,可能还有其他一些原因,这些原因反映在节点控制台中。

停止 删除节点时,首先停止其供应,然后删除节点。

缓存

该节点已停止且未运行,但实际实例仍然可用,可以立即使用。

必须启用缓存用于缓存一个节点。

查看节点池详细信息

在节点池列表中,单击节点池名称,可查看节点池的详细信息。


修改/移除节点池

云只:默认节点池default-dynamic-nodepool由JFrog和c某些设置,如机器类型,不能修改

修改节点池设置。

  1. 查看节点池如上所示。
  2. 点击编辑
    不可更改的设置有灰色区域。


  3. 修改完成后,单击保存节点池


删除节点池。

  1. 查看节点池如上所示。
  2. 点击删除
  3. 单击确认要删除确认

跨项目共享节点池

项目管理员可以跨多个项目共享节点池,以允许多个项目中的成员使用它们。共享节点池的一个经典用例是在运行管道时需要共享计算资源2022世界杯阿根廷预选赛赛程多个项目。一个节点池可以与单个项目共享,也可以跨多个项目共享。节点池共享完成后,添加到目标工程中,并显示在节点池界面。

共享节点池规则和指引

  • 创建节点池后,节点池才可以被共享。
  • 节点池必须具有全局唯一的名称,才允许共享。
  • 只有共享节点池的所有者可以删除共享节点池。

共享节点池。

  1. 选择相关的项目,并在政府模块,转到管道|节点池。
  2. 悬停在待共享的节点池上方,单击待共享的节点池分享图标。


  3. 您可以共享所选择的集成:
    • 在所有项目中,通过选择与所有项目自动共享字段。
    • 仅与特定项目,通过从项目列表中选择项目名称。

  4. 点击保存
  • 没有标签
版权所有©2022 JFrog Ltd.