首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Jenkins作业传递后,工作节点上的进程不会终止

是因为Jenkins的分布式架构设计。在Jenkins中,作业可以通过分布式构建的方式在多个工作节点上执行,这样可以提高作业的并发性和效率。

当一个作业在Jenkins中被触发后,Jenkins会根据配置的分布式构建策略选择一个可用的工作节点来执行作业。一旦作业被分配到工作节点上,Jenkins会在该节点上启动一个进程来执行作业的任务。

在任务执行期间,Jenkins会监控任务的状态并实时更新到控制台输出。一旦任务完成,Jenkins会将执行结果返回给主节点,并根据配置的后续操作进行处理,比如发送通知、触发其他作业等。

然而,工作节点上的进程不会立即终止是因为Jenkins默认采用了持久化的方式来管理工作节点。这意味着工作节点上的进程会保持运行状态,以便下次有作业需要执行时可以快速启动。这样可以减少每次作业执行时的启动时间,提高整体的执行效率。

对于这种情况,可以通过以下方式来解决:

  1. 手动终止进程:在Jenkins的管理界面中,可以手动终止工作节点上的进程。这样可以立即停止当前正在执行的作业,并释放节点资源。
  2. 调整节点配置:可以通过调整节点配置来控制进程的生命周期。比如设置节点的最大空闲时间,超过该时间后自动终止进程。这样可以避免节点资源被长时间占用。
  3. 使用云计算资源管理工具:结合云计算资源管理工具,如Kubernetes、Docker等,可以更灵活地管理工作节点的生命周期。这些工具可以根据实际需求自动创建、销毁工作节点,确保资源的高效利用。

总结起来,Jenkins作业传递后,工作节点上的进程不会终止是因为Jenkins的分布式架构设计,为了提高作业的并发性和效率,工作节点上的进程会保持运行状态。可以通过手动终止进程、调整节点配置或使用云计算资源管理工具来解决这个问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用 Kubernetes 模糊测试

为了确保我对最新和最棒构建进行模糊测试,我创建了一个 Jenkins 作业来定期从主分支中提取和构建radare2 bin,然后发布工件。...但是,这不是生产工作负载,也不是生产应用程序,所以让我们看看通过让几个实例在少数节点运行来扩展模糊应用程序可能最糟糕*方法。这就是 Kubernetes 发挥作用地方。...下图显示了在二进制文件运行和搅动 pod。 有趣和不那么有趣崩溃 在让愚蠢模糊器在二进制语料库运行几个小时,产生了许多崩溃。然而,大多数人实际是自我影响。...起初,我尝试部署 100 个 pod,但发生情况是底层节点资源耗尽导致进程死亡,并且该工具将二进制文件保存为崩溃,而实际它只是内存不足。所以是的,确实发生了崩溃,但它主要是自我强加。...在将工作负载调整为更合理 30 个 pod ,生成了更多文件,但同样,并非所有文件都导致崩溃。

1.6K20

slurm--大型集群管理指南

计时器 EioTimeout配置参数控制当用户应用程序终止时,srun命令将等待多长时间来关闭用于在用户应用程序和srun之间传递数据TCP/IP连接。默认值是60秒。...MinJobAge指定了Slurm控制守护程序在清除前保留已终止作业最小秒数。在这个时间之后,关于终止作业信息只能通过会计记录获得。...这样做目的是为了确定一个计算节点何时发生故障,从而不应该被分配工作。较长时间间隔可以减少计算节点系统噪音(我们确实在整个集群中同步这些请求,但对应用程序会有一些影响)。...计算节点各个slurmd守护进程只有在启动时或作业尾声完成时才会向slurmctld守护进程发起消息。...当一个分配了大量节点作业完成,会导致这些节点slurmd守护进程同时向slurmctld守护进程发送非常多消息。

2K20
  • 通过Jenkins Pipeline实现自动化部署

    因为我们自动化系统有个小集群,每次agent更新版本都要在这些集群中所有机器重新部署,我想每次在每台机器操作步骤都差不多,于是决定通过Jenkins Pipeline和Supervisor方式来自动化部署和管理这个工具...而Supervisor可以在机器出现断电重启或者agent进程意外挂掉情况下自动拉起,可以参考我之前写一篇文章《自动化测试之进程管理》。...在 Stage 块内进行作业 Pipeline 内任何非安装作业都应该在某一个 Stage 块内执行。...在节点内执行实际作业 Pipeline 里实质性作业都应该发生在一个 Node 块内。 因为在默认情况下,Jenkinsfile 脚本本身在 Jenkins 主机上运行。...在任何实质性作业过程中,例如从 Git 服务器克隆代码或编译项目,都应该利用 Jenkins 分布式构建能力,在代理节点中运行。

    1K30

    解决 Jenkins 性能缓慢问题

    因此,主节点构建数量会显着影响资源使用。在主节点保持较少构建将为代理节点留出足够 CPU 和内存来安排和触发作业。 您可以在工作中使用“限制项目可以运行位置”选项。...虽然 Jenkins 仍将在主节点运行轻量级执行器,但您重量级执行器将在代理节点运行。 将主节点视为 Jenkins 大脑。与代理不同,主节点不能被清除或替换。...2.3 不要过渡 Jenkins节点插件安装 DevOps 专业人员经常跨多个团队和项目工作,以完成与 CI/CD 相关任务。...使用具有通用性代理也是一个好主意;一个代理应该运行多个不同作业并最大限度地利用资源。 2.5 删除构建历史 一段时间Jenkins 构建可能会堆积起来,磁盘消耗可能会失控。...与其让旧版本累积并消耗文件系统,开发人员可以启用Discard Old Builds并在 Jenkins 作业完成享受自动资源使用清理。

    4.3K20

    Jenkins Pipeline+SonarQube+Python集成钉钉群消息自动通知(webhook版)

    然后,将恢复 Jenkins 作业,并采取适当措施(不仅将作业标记为失败,而且还可以发送通知)。 由于自 SonarQube 6.2 引入 webhook 功能,所有这些现在都可以实现。...我们可以利用Jenkins Pipeline 功能,该功能允许在不占用执行程序情况下执行作业逻辑某些部分。 让我们来看看它是怎么实现。...准备工作 Jenkins、SonarQube 服务已经搭建完成 Jenkins 安装 sonar插件 SonarQubeScannerforJenkins 版本:Jenkins 2.164.3,SonarQube...所以当分析完成,由 SonarQube 主动通知 Jenkins。...在 Jenkins 全局配置中配置连接详细信息将自动传递到扫描器。 如果你 credentialId 不想使用全局配置中定义那个,则可以覆盖。

    4.3K30

    写个简单项目自动部署脚本

    ,我们可以模仿jenkins工作流程并且做一些简化: 从git拉取项目代码到服务器 使用maven命令进行编译打包,打成可执行jar 使用命令或者其他工具启动java服务(java -jar,docker...等等) 这样原本在jenkins执行工作,转移到了服务器本机执行了。...# 休眠10s,等待进程终止 sleep 10 #把maven编译打包最新jar包拷贝到工作目录 cp target/springboot-demo-$1.jar $WORK_DIR #再次检查进程是否终止...,并发送kill执行进行终止服务进程,并且休眠10s,给服务进程足够时间处理剩余事情 从项目目录target文件夹拷贝可执行jar到项目工作目录 再次检查服务进程是否已经终止,如果没有终止则强行终止...(理论10s可以正常终止,休眠时间可按需调整) 通过nohup java -jar命令后台运行服务,启动成功打印启动成功日志 执行start.sh脚本打包部署: sh start.sh dev 通过脚本输入日志可以看到服务已经打包部署成功了

    29710

    使用 Docker 部署 Jenkins 代理(主从)控制服务器

    我们不会在这篇文章中讨论 CI-CD 介绍性概念,也不会浪费时间展示 Jenkins 安装步骤。如果您是 Jenkins 新手,可以查看官方安装文档以开始使用 Jenkins。...如果我们在控制器节点做太多工作(或它崩溃),整个应用程序可能变得不可用。因此,我们希望 master 尽可能可用。这可以通过将工作委托给代理节点(从节点)来完成。...这种架构另一个优点是我们只能在控制器节点安装最少工具集,而我们可以在代理节点安装较重工具(作业需要)。这使控制器保持轻量级,还允许我们根据应执行它们代理来组织我们作业。... > 添加“系统”范围凭据以启用 SSH 到 Jenkins Agent 系统凭证与全局凭证 系统:仅在 Jenkins 服务器可用(jenkins 作业不可见) 全局:可在任何地方访问,包括...现在,我们代理应该被控制器发现,我们可以开始将我们工作委托给代理。

    53520

    操作系统复习笔记——第三章 进程

    进程可看做是正在执行程序。进程需要一定资源(如CPU时间、内存、文件和I/O设备)来完成其任务。这些资源在创建进程或执行进程时被分配。 进程是大多数系统中工作单元。...虽然从传统意义讲,进程运行时只包含一个控制线程,但目前大多数现代操作系统支持多线程进程。...为了达到此目的,进程调度选择一个可用进程(可能从多个可用进程集合中选择)到CPU执行。单处理器系统从不会有超过一个进程在运行。如果有多个进程,那么余下则需要等待CPU空闲并重新调度。...该队列通常用链表来实现,其头节点指向链表第一个和最后一个PCB块指针。每个PCB包括一个指向就绪队列下一个PCB指针域。...否则,用户可以任意终止彼此作业。 父进程终止其子进程原因有很多,如: 子进程使用了超过它所分配一些资源。

    96010

    2021年排名前85DevOps面试问答

    Git获取 Git拉 Git提取仅从远程存储库下载新数据 Git pull使用来自远程服务器最新更改来更新当前HEAD分支 不会将任何新数据集成到您工作文件中 下载新数据并将其与当前工作文件集成...您可以创建一个新分支,并在该分支构建新功能。 默认情况下,您始终在master分支上工作 分支圆圈代表分支各种提交 完成所有更改,可以将其与master分支合并 ? 24....您还可以复制作业目录以克隆或复制作业或重命名目录。 34.如何将Jenkins从一台服务器复制到另一台服务器? ? 通过复制相应作业目录,将作业从一个Jenkins安装移至另一安装。...Docker群初始化--advertise-addr 在管理器节点创建群集,就可以将工作节点添加到群集中。 将节点初始化为管理器,它将立即创建令牌。...为了创建工作程序节点,应在工作程序节点主机上执行以下命令(令牌)。

    6.8K30

    如何在CentOS 7设置Jenkins以进行持续开发集成

    让我们首先将Jenkins WAR文件下载到服务器并运行它,没有多余装饰,以确保基本工作正常,没有麻烦。 Jenkin's mirror可以找到Jenkins在任何时候最新版本。...simple值表示一个指令中提到进程ExecStart将是正在创建服务主要进程。实际,这type是不必要,正如simple在未指定类型时所假设那样,但为了清楚起见,我们将其保留。...User指定哪个用户可以控制此进程,而Restart用于指示在这种情况下,如果进程终止但退出代码意味着错误,则将重新启动服务。这对于在意外崩溃情况下保持服务连续性非常有用。...这将带您进入包含许多自定义选项页面。您可能还会注意到顶部警报:不安全Jenkins允许网络任何人代表您启动进程。**考虑至少启用身份验证以阻止滥用。...在这里,您可以看到有关该项目的信息,包括其建立历史记录,但由于这是一个全新项目,目前不会有任何此类信息。 单击左侧“ 立即构建”以开始构建。您将立即看到构建历史记录更改以指示它正在工作

    1.6K10

    systemctl命令

    .: 取消命令行由数字作业ID指定一个或多个作业,如果未指定作业ID,请取消所有挂起作业。...,但是将终止所有进程,并且将所有文件系统卸载或以只读方式装载,然后立即关闭电源,如果两次指定--force,将立即执行该操作,而不会终止任何进程或卸载任何文件系统,这可能会导致数据丢失。...,但是将终止所有进程,并且将所有文件系统卸载或以只读方式装载,然后立即重新引导,如果两次指定--force,将立即执行该操作,而不会终止任何进程或卸载任何文件系统,这可能会导致数据丢失,如果给出了可选参数...ExecStartPost: 指定在启动执行ExecStart命令收尾工作,也可以有多个。...ExecStop: 停止服务所需要执行主要命令。 ExecStopPost: 指定在ExecStop命令执行收尾工作,也可以有多个。

    1.6K20

    Kubernetes 1.28:Sidecar 容器、Job和Proxy新功能

    这意味着边车容器可能会在主容器完成之前被杀死,或者它们可能会在搞乱工作后继续存活。 现在,您可以将 init 容器 restartPolicy 字段设置为“始终”。...一旦所有常规容器完成,边车容器将被终止。 这确保了边车容器不会阻止主容器完成后作业完成。...此功能为作业用户带来了一些惊喜,例如确保 sidecar 不会阻止作业完成。 作业可重试和不可重试 Pod 故障以及索引作业每个索引退避限制增强功能将为处理作业故障提供更精细粒度。...有些失败是暂时或预期,以不同方式处理它们可以防止整个作业失败。 最后,作业控制器中完全终止允许重新创建 Pod 为处理已完成作业提供了更多控制选项。 这可以帮助避免一些边缘情况和竞争条件。...尤其: 一旦节点终止,kube-proxy 不会立即终止所有连接,而是让它们正常终止

    90941

    Sendible如何从Jenkins迁移到Argo

    同样,Jenkins 运行作业(job)自然方法是将所有需要容器部署到一个 pod 中。这意味着在运行开始时启动所有需要容器,直到运行结束时才释放它们。...由于所有内容都在一个 pod 中,而 pod 不能跨越多个节点,因此如何使用节点来适应工作负载存在限制。...事实,我们在维护成本损失时间和金钱比我们能节省要多。 还有其他成本方面的考虑。...一个使用良好 Jenkins 控制器可能会消耗大量系统资源,前面提到“每个作业一个 pod”问题意味着你可能需要提供大型服务器。...希望下面这个简短列表可以帮助那些踏上类似旅程的人: 忘掉“Jenkins 式” 如果你多年来一直使用 Jenkins Pipelines,那么你可能不会自然地想到云原生流水线解决方案。

    1.7K30

    slurm--cgoup v2插件

    由于层次结构已经创建,slurmd重启只是终止了slurmd进程,然后启动了一个新进程,但它会尝试将新进程直接放在特定组树根部。...满足这些要求,Slurm应该可以正常工作。 cgroup/v2概述 我们将简单介绍一下这个插件工作流程。 slurmd启动 新系统:slurmd被启动。...它将立即初始化作业和步骤cgroup目录,并将自己移入其中,根据需要设置subtree_controllers。 终止和清理 当一个作业结束时,slurmstepd将负责删除所有创建目录。...slurmstepd.scope目录不会被Slurm删除或停止,"slurmstepd infinity "进程不会被Slurm杀死。...正因为如此,有可能在不同节点用不同cgroup插件运行同一个作业。配置是在每个节点cgroup.conf中完成

    1.9K10

    读书 | Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL

    驱动器节点: 作用: 执行程序中main()方法进程,一旦终止,Spark应用也终止了。...在这些步骤中,包含了多个task(任务),这些task被打包送到集群中,就可以进行分布式运算了,是不是像流水线上工人呢~ 为执行器节点调度任务: Driver启动,必须在各执行器进程间协调各个任务...执行器进程启动后会在Driver注册自己节点,这样Driver就有所有执行器节点完整记录了。每个执行器节点代表一个能够处理任务和存储RDD数据进程。...每个应用在每个工作节点最多拥有一个执行器进程。因此这个这个能够控制     执行器节点占用工作节点多少内存。默认值是1G。...一台运行了多个执行器进程机器可以动态共享CPU资源 粗粒度模式:Spark为每个执行器分配固定数量CPU数目,并且在应用结束前不会释放该资源,即使执行器进程当前没有运行任务(多浪费啊 = =)。

    1.2K60

    危险: 持续集成系统保护不好有多糟糕?|入侵系统完整过程 | 检查版本更新 | 禁止匿名用户

    重要是要注意,使用execute方法,所有命令都作为Java进程进程运行(WindowsJava.exe和/ usr / bin / java(在Ubuntu)。...在此示例中,攻击者利用以下Groovy脚本利用内置Java方法获取这些文件: ? 使用上面的Groovy脚本,攻击者能够检索每个文件而不会产生潜在恶意子进程。...在这种情况下,不需要用户进行身份验证即可配置/创建作业。 ? 有了作业创建访问权限,攻击者可以在Jenkins服务器创建本地作业,并使用它执行命令,然后在控制台输出中查看结果。...要在具有作业创建访问权限Jenkins服务器执行命令,请创建具有给定项目名称Freestyle项目。 ? 创建,可以在Freestyle项目中配置各种选项。...他们可以创建建筑或安排工作吗? 经过身份验证用户具有什么权限? 这包括脚本控制台访问吗? 他们可以查看凭证或构建历史吗? 他们可以创建建筑或安排工作吗?

    2.1K20

    第6章 Jenkins系统权限划分与授权管理

    安装插件最好重启一下Jenkins。 ? 重启我们进入系统管理> 未分类, 找到Manage and Assign Roles。...1.1.3 Node Roles 代理节点权限也是可以按照Item Roles通过正则表达式配置,不过一般我们都会在流水线指定好相关agent名称或者标签不会进行权限控制,当然如果你需要对代理节点配置进行权限控制...我们先来测试作业管理员,这里我们勾选是itemadmin。 ? 保存配置,尝试使用此用户登录系统。经过验证是可以对作业进行增删改查完全控制,但是对于系统设置、节点都不能操作。...这时候,我们在改用户权限基础加上Item Roles test, 然后再进行测试。 ? 进入系统,只能对当前项目组项目进行构建。 ?...我们可以使用此插件接口进行授权。我们用Jenkins来操作Jenkins。创建一个Jenkins作业,然后使用此作业授权。

    6.6K40

    Hadoop on Yarn 各组件详细原理

    运行在独立节点ResourceManager和NodeManager一起组成了yarn核心,构建了整个平台。...与其他组建协作包括:接收ApplicationMaster资源请求,每个节点NodeManager从ResourceManager中获取指令,管理单个节点可用资源。...代理令牌,代理令牌是Kerberos认证客户端一种特殊对象,能够第一次安全与ResourceManager通信并传递给它自己额非认证进程。   ...2、Administration Service   既然Client Service是负责处理一般用户应用程序提交或终止,为了确保管理员请求不会被一般用户请求饿死,提供了搞优先级操作命令,这里就多分离出了一个接口供管理员使用...三、节点和ResourceManager 通信   下列是ResourceManager组件和运行在集群节点NodeManager进行通信。

    82710

    Jenkins教程

    节点工作是处理: 调度构建作业。 将构建分派给实际执行节点。 监视从节点(可能根据需要使它们联机和脱机)。 记录并显示构建结果。 Jenkins 节点也可以直接执行构建作业。...Jenkins节点节点是在远程计算机上运行 Java 可执行文件。以下是 Jenkins节点特点: 接收来自 Jenkins 主接点请求。 从节点可以在各种操作系统运行。...从节点工作就是按照命令执行,包括执行主节点分配构建作业。 您可以将项目配置为始终在特定节点或特定类型节点运行,或者仅让 Jenkins 选择下一个可用节点。...多配置作业: “多配置项目”(也称为“矩阵项目”)允许您在不同环境运行相同构建作业。它用于在不同环境、不同数据库甚至不同构建机器测试应用程序。...Jenkins 理解 Maven pom 文件和项目结构,并且可以使用从 pom 文件中收集信息来减少设置项目所需工作

    1.6K20

    CI&CD夺命十三剑5-Jenkins分布式环境搭建及多节点运行

    Master节点Jenkins核心是Master节点,包含Jenkins核心功能和管理界面,并与所有Slave节点通信,调度和分配作业。...主要作业配置信息,如构建工作流程、触发器和构建器、节点和视图信息,以及连接外部系统应用程序都存储在Jenkins Master节点中。...Agent节点:也称slave节点,是通过Jenkins Agent(代理)连接到Master节点计算机,它们执行来自Master节点作业并将结果返回给Master节点。...控制台输出日志: 原本在master节点运行时生成工作目录路径: 转到slave从节点运行时生成工作目录路径: 经过一番排查,终于找到了原因: 此项目原本是在主节点运行,我在主节点配置这个任务时...workspace,当从节点首次构建项目时,也会生成一个workspace目录,并在这个workspace目录下创建以项目名称“开普勒-前端”为名字工作目录,最后叠加在一起,从节点该项目真正工作目录就是

    1.7K21
    领券