jenkins配置如下:

在Jenkins上添加了两个节点(Slave Node),且为这两个节点设置了一个相同的标签"windows"。创建了一个新Job – "test-windows",选择的是”构建一个自由风格的软件项目”。并且为了使多个slave并行构建,我选择了"只允许绑定到这台机器的job”,在"Label Expression"中选择了"windows"。

然而这种方式并不能实现多个slave并行操作。网上90%说的都不靠谱。

在我使用的过程中,使用了label 去管理多个 Slave,给一个项目的构建指定了这个 label,会发现这个项目的多次构建,都使用同一个 Slave,并没有使用 label 里的其它 Slave去构建。

查了很多资料才发现原来从 jenkins 的调度算法使用了一致性的哈希算法,jenkins根据添加的信息评测出优先级列表,选择优先级最高的Slave去构建,当最优slave不满足条件或者没有可用的 execut时,才会选用下一个slave。

查了很多资料发现构造多配置项目可以选择构建时的slave。这样可以实现多slave并行构建。

multi configuration project比起构建自由风格的软件项目多个Configuration Matrix,在这里可以选择多个slave。这里选择lable的话,还是会使用默认算法从lable中选择最优slave进行构建。

配置完成后再构建时,会同时在多个slave上进行并行构建

禁止在master上运行job或和业务相关的操作

将 [executors] 设置为0e

jenkins多个slave遇到的坑的更多相关文章

  1. Jenkins 为Jenkins添加Windows Slave远程执行python项目脚本

    为Jenkins添加Windows Slave远程执行python项目脚本   by:授客 QQ:1033553122 测试环境 JAVA JDK 1.7.0_13 (jdk-7u13-windows ...

  2. Jenkins的Windows Slave的配置

    原文:http://www.cnblogs.com/itech/archive/2011/11/09/2243025.html 参考: https://wiki.jenkins-ci.org/disp ...

  3. Jenkins搭建Windows slave 环境

      因为之前的接口测试平台是在windows上,后来换了linux,花了半天时间也没有成功,就想着建立一个windows的节点曲线救国   创建WindowsSlave 首先要保证windows和sl ...

  4. Jenkins设置Master/Slave

    说明:通过master/slave模式,可以在master节点上统一管理其他slave节点. 下面说明一步步实现master/slave模式. 第一步:以管理员登录jenkins.点击"系统 ...

  5. jenkins+github持续集成中的坑

    1.前言 刚开始开发自己的独立博客的时候,每次发布都要手动打包,上传服务器,杀tomcat进程,重启,来回这么重复性工作,很快就有点不耐烦了.如果能自动化的东西,就绝不要手动了,所以自己搭建了个持续集 ...

  6. Gitlab Jenkins WebHook 持续集成配置踩坑记

    Jenkins相关介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 目的 配置Gitla ...

  7. jenkins的Master/Slave模式

    一. Master/Slave模式 分担jenkins服务器的压力,任务分配到其它执行机来执行 Master:Jenkins服务器 Slave:执行机(奴隶机).执行Master分配的任务,并返回任务 ...

  8. Kubernetes Jenkins动态创建Slave

    目录 0.前言 1.Jenkins部署 2.配置jenkins动态slave 3.dubbo服务构建 3.1.制作dubbo镜像底包 3.2.制作slave基础镜像 3.2.1.Maven镜像 3.2 ...

  9. Jenkins的Windows Slave分布式构建和部署

    1.新建的Slave:系统管理-->管理节点-->新建节点 远程工作目录 即是 节点服务器 站点文件存放目录 在配置节点时 启动方法 配置的选项中的 Launch agent via Ja ...

随机推荐

  1. node基础 npm、module、exports、require

    module 模块.包:可以认为是一个代码包,package,提供特定的功能(暴露给外界接口,让外界调用) exports 输出.导出:导出模块中的各种类型的变量,以及各种方法,导出之后,才可以被外界 ...

  2. FICO基础知识(四)

    What is the organizational structure for CO? Operating Concern 经营组织 Controlling Area 成本控制范围 Profit c ...

  3. git 快捷键

    实际上就是弄了个别名 $ git config --global alias.st status $ git config --global alias.ci commit $ git config ...

  4. gitlab搭建与配置说明

    1. 概述 Gitlab分为社区版和企业版,此次安装的是社区版(gitlab-ce). 2. 准备 本次使用系统为Ubuntu16.04. 3. 安装 添加GitLab仓库,并安装到服务器上(将git ...

  5. python之tkinter使用-二级菜单

    # 菜单功能说明:二级菜单 import tkinter as tk from tkinter import messagebox root = tk.Tk() root.title('菜单选择') ...

  6. Lucene最重要的功能是对一段话的分析

    Lucene最重要的功能是对一段话的分析

  7. oftype 指的是集合的类型

  8. 一本通1536数星星 Stars

    1536:[例 2]数星星 Stars 时间限制: 256 ms         内存限制: 65536 KB [题目描述] 原题来自:Ural 1028 天空中有一些星星,这些星星都在不同的位置,每 ...

  9. 信息安全与Linux系统

    相信很多小伙伴都看过黑客帝国里面的那些由代码组成的神奇界面,也有很多人也向往着有一天能做一个黑客,当然不是为了做坏事,只是想和电影里面的黑客一样拉风,我就是这么其中一个(假如有一天能实现这个愿望我想我 ...

  10. 使用libcurl 发送post请求

    SendHttpPost(string& strUrl, string& strPost, string& strResponse, int nTimeOut) { CURLc ...