jenkins-node节点配置

一.简述:

 Jenkins有一个很强大的功能: 即:支持分布式构建(jenkins配置中叫节点(node),也被称为slave)。分布式构建通常是用来吸收额外的负载。通过动态添加额外的机器应对构建作业中的高峰期,或在特定操作系统或环境运行特定的构建作业。 这项功能在大中型企业(微服务化)环境中是很重要的。

二. 关于jenkins master/slave:

  分布(master/slave)式构建工作模式是: master负责处理调度构建作业,把构建通过定义的策略分发到slave节点进行执行。监视slave。并且记录和发布构建产物(即使在一个分布式架构中,master实例也是可以直接执行构建作业的),slave构建的结果和产物会同步到master。

  master/slave策略:  jenkins在配置管理slave节点时,我们可以针对不同的环境,选择不同的策略进行配置slave节点。通常情况下可以通过以下几种方式:

#master通过ssh启动slave节点。
#直接通过终端登录slave,命令行方式启动节点。
#支持windows。 

一个node的创建, 是很简单的(原生支持功能)。操作步骤:系统配置-->节点管理-->新增节点:

注: 上图中的jenkins master启动用户,需要和slave的root进行key 认证。 

配置简述:

#名字: 节点名称,建议规范化

#of executors: jenkins最大构建并发数。官方建议设置为cpu核数相等。

#标签(labels): 重要,用于对多节点分组,根据slave的标签和job的标签进行匹配,slave只构建特定的标签任务(如:按项目分(appserver),将slave标记为appserver,job也标记为appserver,这样的话你的Job就不会运行在除了appserver节点以外的其它节点上了),支持多个,用空格隔开。

#用法:两种策略(尽可能使用(默认),和只运行绑定的job),根据不同环境决定.

#启动方法(Launch method): 
   a). Launch slave agents via SSH:通过SSH通道连接节点(适用于Linux类系统,上图方式)
   b). Launch agent via execution of command on the Master:通过主节点的控制台连接节点(需要写script)
   c). Let Jenkins control this Windows slave as a Windows service:让Jenkins节点添加到Windows服务中(通常不用吧???)

#Availability: 
   a). Keep this slave on-line as much as possible:尽可能保持节点在线【推荐】
   b). Take this slave on-line according to a schedule:根据时间表在线(类似于Linux的定时任务)
   c). Take this slave on-line when in demand and off-line when idle:让Jenkins根据需求自动连接或者离线
     i). In demand delay:告诉Jenkins如果有Job需要在此节点构建,需要在任务队列等待多长时间才会进入任务状态进行构建
     ii). Idle delay:告诉Jenkins多少分钟内如果没有Job需要构建就离线

#Environment variables: 环境变量,构建中使用
#Tool Locations: 工具目录(用于替换系统设置的,如java版本,maven版本)

启动后,slave上应该有一个进程:

# ps -ef|grep jar
root      9602  8865  0 16:12 ?        00:00:00 bash -c cd "/home/jenkins_home" && java  -jar slave.jar

node也可以作为一个参数类型,被 “参数化构建过程”进行调用。 需要安装一个插件:Node and Label parameter plugin

安装后,在创建job时,可选:

Build with Parameters页面显示如下:

 可选择具体node进行构建。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/67410.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch的function_score与rescore的区别

文章目录 前言一、function_score二、rescore三、区别对比总结 前言 在 Elasticsearch 中,function_score 和 rescore 都是对查询结果进行评分调整的机制,但它们的用途、作用范围和执行阶段有所不同。 一、function_score rescore 是一个用于 查询后重…

Vscode——SSH连接不上的一种解决办法

一、完整报错: > @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ > IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! > Someone could be eavesdropping on you right now (man-in-the

20.<Spring图书管理系统①(登录+添加图书)>

PS:关于接口定义 接口定义,通常由服务器提供方来定义。 1.路径:自己定义 2.参数:根据需求考虑,我们这个接口功能完成需要哪些信息。 3.返回结果:考虑我们能为对方提供什么。站在对方角度考虑。 我们使用到的…

Springboot Redisson 分布式锁、缓存、消息队列、布隆过滤器

redisson-spring-boot-starter 是 Redisson 提供的 Spring Boot 集成包&#xff0c;旨在简化与 Redis 的交互&#xff0c;包括分布式锁、缓存、消息队列、布隆过滤器等功能的实现。 Maven 依赖 在 Spring Boot 项目中添加 redisson-spring-boot-starter 依赖&#xff1a; <…

Vue2+OpenLayers实现点位拖拽功能(提供Gitee源码)

目录 一、案例截图 二、安装OpenLayers库 三、代码实现 3.1、初始化变量 3.2、创建一个点 3.3、将点添加到地图上 3.4、实现点位拖拽 3.5、完整代码 四、Gitee源码 一、案例截图 可以随意拖拽点位到你想要的位置 二、安装OpenLayers库 npm install ol 三、代码实现…

计算机网络 (46)简单网络管理协议SNMP

前言 简单网络管理协议&#xff08;SNMP&#xff0c;Simple Network Management Protocol&#xff09;是一种用于在计算机网络中管理网络节点的标准协议。 一、概述 SNMP是基于TCP/IP五层协议中的应用层协议&#xff0c;它使网络管理员能够管理网络效能&#xff0c;发现并解决网…

掌握C语言内存布局:数据存储的智慧之旅

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 目录 引言正文一、数据类型介绍1.内置类型2.自定义…

MySQL NaviCat 安装及配置教程(Windows)【安装】

文章目录 一、 MySQL 下载 1. 官网下载2. 其它渠道 二、 MySQL 安装三、 MySQL 验证及配置四、 NaviCat 下载 1. 官网下载2. 其它渠道 五、 NaviCat 安装六、 NaviCat 逆向工程 软件 / 环境安装及配置目录 一、 MySQL 下载 1. 官网下载 安装地址&#xff1a;https://www.m…

BertTokenizerFast 和 BertTokenizer 的区别

BertTokenizerFast 和 BertTokenizer 都是用于对文本进行标记化的工具&#xff0c;主要用于处理和输入文本数据以供 BERT 模型使用。它们都属于 HuggingFace 的 transformers 库。 主要区别 底层实现&#xff1a; BertTokenizer: 这是一个使用纯 Python 实现的标记器&#xff…

dockerhub上一些镜像

K8s下网络排障工具 https://hub.docker.com/r/nicolaka/netshoot ex kubectl run tmp-shell --rm -i --tty --image nicolaka/netshoot -- /bin/bash # 主机的net ns下运行 kubectl run tmp-shell --rm -i --tty --overrides{"spec": {"hostNetwork": tru…

C语言结构体漫谈:从平凡中见不平凡

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 本文目录 引言正文《1》 结构体的两种声明一、结构…

用行动回应“实体清单”,智谱发布了一系列新模型

1月15日晚间&#xff0c;美国商务部工业和安全局&#xff08;BIS&#xff09;修订了《出口管制条例》&#xff08;EAR&#xff09;&#xff0c;以安全为由在实体清单中分两批增加了25个中国实体。 其中就包括智谱及其子公司&#xff0c;也是国内首家被美国列入实体清单的大模型…

vue3+vite+ts+router4+Pinia+Axios+sass 从0到1搭建

1、使用vite构建项目 npm create vitelatest 填写项目名的时候不能大写 2、跑起来之后配置下 import { defineConfig } from vite import vue from vitejs/plugin-vue import { resolve } from path // https://vite.dev/config/ export default defineConfig({plugins: [vue…

深度学习图像算法中的网络架构:Backbone、Neck 和 Head 详解

深度学习已经成为图像识别领域的核心技术&#xff0c;特别是在目标检测、图像分割等任务中&#xff0c;深度神经网络的应用取得了显著进展。在这些任务的网络架构中&#xff0c;通常可以分为三个主要部分&#xff1a;Backbone、Neck 和 Head。这些部分在整个网络中扮演着至关重…

iOS - 内存对齐

1. 基本的内存对齐 // 对象内存对齐 struct objc_object {// isa 指针 8 字节对齐isa_t isa __attribute__((aligned(8))); };// 定义对齐常量 #define WORD_MASK 7UL // 字对齐掩码 #define WORD_SHIFT 3UL // 字对齐位移 #define WORD_SIZE 8 …

信安大赛单机取证

22年国赛单机取证 Evidence4 先搜索Evidence 找到一个 Evidence4nsOh2.pngf5b9ce3e485314c23c40a89d994b2dc8 Evidence2 之后再一个个找 这个是压缩包格式的 导出来 伪加密 修复一下 Evidence2ZQOo2.jpg9e69763ec7dac69e2c5b07a5955a5868 Evidence3 png的文件 改个宽高 E…

jmeter事务控制器-勾选Generate Parent Sample

1、打开jmeter工具&#xff0c;添加线程组&#xff0c;添加逻辑控制器-事务控制器 2、在事务控制器&#xff0c;勾选Generate parent sample&#xff1a;生成父样本&#xff1b;说明勾选后&#xff0c;事务控制器会作为父节点&#xff0c;其下面的请求作为子节点 3、执行&#…

AOF日志:宕机了Redis如何避免数据丢失?

文章目录 AOF 日志是如何实现的&#xff1f;三种写回策略日志文件太大了怎么办&#xff1f;AOF 重写会阻塞吗?小结每课一问 更多redis相关知识 如果有人问你&#xff1a;“你会把 Redis 用在什么业务场景下&#xff1f;”我想你大概率会说&#xff1a;“我会把它当作缓存使用&…

个人vue3-学习笔记

声明:这只是我个人的学习笔记(黑马),供以后复习用 。一天学一点,随时学随时更新。明天会更好的! 这里只给代码,不给运行结果,看不出来代码的作用我也该进厂了。。。。。 Day1 使用create-vue创建项目。 1.检查版本。 node -v 2.创建项目 npm init vue@latest 可…

react 与 vue 的比较,以及如何选择?

区别 Vue 和 React 都是流行的前端 JavaScript 框架&#xff0c;用于构建用户界面和单页应用&#xff08;SPA&#xff09;&#xff0c;但它们在设计理念、API 设计、生态系统等方面存在一些区别&#xff1a; 核心理念 Vue&#xff1a; 渐进式框架&#xff1a;Vue 被设计为一…