2024最新 Jenkins + Docker实战教程(八)- Jenkins实现集群并发构建

在这里插入图片描述

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~
🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志
🎐 个人CSND主页——Micro麦可乐的博客
🐥《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程,入门到实战
🌺《RabbitMQ》本专栏主要介绍使用JAVA开发RabbitMQ的系列教程,从基础知识到项目实战
🌸《设计模式》专栏以实际的生活场景为案例进行讲解,让大家对设计模式有一个更清晰的理解
💕《Jenkins实战》专栏主要介绍Jenkins+Docker+Git+Maven的实战教程,让你快速掌握项目CI/CD,是2024年最新的实战教程
如果文章能够给大家带来一定的帮助!欢迎关注、评论互动~

2024最新 Jenkins + Docker实战教程(八)- Jenkins实现集群并发构建

  • 1、前言
  • 2、什么是Jenkins集群?
  • 3、配置Jenkins集群
    • 3.1 集群准备
    • 3.2 开始配置
    • 3.3 验证配置
  • 4、测试并发构建
  • 5、Jenkins集群的优势
  • 6、结语

1、前言

Hello小伙伴们,今天博主又抽空来更新Jenkins系列教程啦,在我们日常开发工作中,随着项目规模和复杂度的增加,单台Jenkins服务器往往难以满足高频次、大量构建任务的需求。通过实现Jenkins集群并发构建,可以显著提升构建效率和系统可靠性。本文将详细介绍如何配置Jenkins集群,实现并发构建。

2、什么是Jenkins集群?

Jenkins集群(Master-Slave架构)由一个主节点(Master)和多个从节点(Slave)组成。主节点负责管理任务调度、配置和监控,而从节点则实际执行构建任务。通过将构建任务分布到多个从节点上,可以实现并发构建,提高构建效率和系统的弹性。

3、配置Jenkins集群

3.1 集群准备

前面的章节,我们使用了一台Jenkins服务器 + 一台应用服务器来实现自动化构建部署,今天我们需要增加一台Jenkins从节点服务器,无论你是克隆之前的Jenkins服务器还是新创建服务器作为从节点,必须要求有JDK的环境

从节点服务器无需安装Jenkins服务,但是必须保证安装了JDK环境

以博主的Parallels Desktop为例,复制Jenkins服务器作为从节点
在这里插入图片描述

将主节点和从节点服务器依次启动,两台服务器分别如下:

主节点:192.168.1.20 - 具备Jenkins环境并启动
从节点:192.168.1.22 - 具备JDK环境

3.2 开始配置

打开Jenkins管理界面:在浏览器中访问http://<your_master_server>:8080
找到 配置 - 节点和云管理
在这里插入图片描述
添加新的节点,命名为jenkins-1
在这里插入图片描述
创建完成进入配置
在这里插入图片描述
配置启动方式,博主为了简化操作,直接选择SSH启动代理

启动方式目前有三种

  • 通过在控制器上执行命令启动代理
  • Launch agents via SSH(通过SSH启动代理)
  • 通过Java Web启动代理

在这里插入图片描述

3.3 验证配置

最后确认是否同步成功
在这里插入图片描述
登陆从节点服务器观察工作目录,会发现工作目录下多了两个文件
在这里插入图片描述

4、测试并发构建

配置完成后观察左下角 构建执行状 态栏
在这里插入图片描述

在本教程之前的章节中,我们已经配置了一个 jenkins-demo 的任务, 具体可以访问:

2024最新 Jenkins + Docker 实战教程(四) - 编写自己的Springboot项目实现自动化部署

进入我们的 jenkins-demo 任务,会发现当我们配置了集群后,会多了两个选项
在这里插入图片描述

  • 在必要时并发构建:系统会自动分配运行节点
  • 限制项目运行节点:通过直接设定的标签来指定某个任务固定运行在某个节点

我们就设定 jenkins-demo 固定运行在从节点执行
在这里插入图片描述
最后我们来进行测试,本系列教程我们一共设置了三个任务(日常开发中可能存在更多部署任务)
在这里插入图片描述
观察构建执行状态,如下图:
在这里插入图片描述

构建测试说明
由于 hello-worldjenkins-demo-ssh 我们并未配置节点,而 jenkins-demo 我们限制了从节点

  • 所以会看到上图中 hello-worldjenkins-demo-ssh 都默认在主节点执行, jenkins-demo 在我们的从节点执行

5、Jenkins集群的优势

从上述的教程案例中,我们不难发现使用Jenkins集群具备以下几种优势:

  • 提升构建速度: 通过并行执行多个构建任务,缩短整体构建时间。
  • 提高系统可靠性: 分散构建负载,避免单点故障。
  • 弹性扩展: 可以根据需求动态添加或移除从节点,灵活应对构建压力。
  • 环境隔离: 可以在不同从节点上配置不同的构建环境,满足多样化的构建需求。

6、结语

通过配置Jenkins集群并发构建,可以显著提升构建效率和系统可靠性。本文详细介绍了Jenkins集群的安装与配置方法,包括节点管理和并发构建的实现步骤。小伙伴们通过合理配置和维护Jenkins集群,可以进一步优化CI/CD流程,提高项目的交付质量和速度。希望篇教程能为您在实际项目中应用Jenkins集群提供有价值的参考。如您在操作过程中出现任何问题欢迎留言,博主将在第一时间给予解答!


在这里插入图片描述

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

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

相关文章

【Python Cookbook】S01E14 从字典中提取子集

目录 问题解决方案讨论 问题 如果我们想基于一个字典的子集创建另外一个字典&#xff0c;该如何做&#xff1f; 解决方案 利用 字典推导式 来解决问题&#xff1a; prices {ACME: 45.23,AAPL: 612.78,IBM: 205.55,HPQ: 37.20,FB: 10.75 }p1 {key:value for key, value in…

AI学习指南机器学习篇-逻辑回归损失函数和优化

AI学习指南机器学习篇-逻辑回归损失函数和优化 引言 在机器学习中&#xff0c;逻辑回归是一种常用的分类算法。在逻辑回归中&#xff0c;我们需要定义一个损失函数来衡量模型预测值与实际标签之间的误差&#xff0c;并且需要通过优化算法来最小化损失函数&#xff0c;从而得到…

群体优化算法----人工蜂群优化算法应用于路径规划(机器人避开平面障碍寻找最短路线)

介绍 人工蜂群优化算法&#xff08;Artificial Bee Colony Algorithm, ABC&#xff09;是由Dervis Karaboga在2005年提出的一种模拟蜜蜂觅食行为的优化算法。该算法基于蜜蜂群体的分工合作和信息交流机制&#xff0c;通过模拟蜜蜂寻找食物源的过程来解决优化问题。ABC算法因其…

netplan网络配置@ubuntu留档

ubuntu使用netplan进行网络配置&#xff0c;简单又方便。 配置的时候编辑/etc/netplan 目录里的文件即可&#xff0c;如00-installer-config.yaml文件。 固定ip配置 network:ethernets:enp0s5:dhcp4: noaddresses: [192.168.1.7/24]routes:- to: defaultvia: 192.168.1.1name…

手机和WINDOWS电脑蓝牙连接后怎样放歌,无法选择媒体音频 蓝牙媒体音频勾选不上

手机和电脑蓝牙连接后怎样放歌 要将手机通过蓝牙连接到电脑并播放音乐&#xff0c;可以按照以下步骤操作&#xff1a; 确保手机和电脑都支持蓝牙功能&#xff0c;并且蓝牙功能已经开启。 在电脑上&#xff0c;打开“设置”> “设备”> “蓝牙和其他设备”。 点击“添…

INT202 例题

算法复杂度 O(n)&#xff1a;表示算法的渐进上界。如果一个算法的运行时间是O(n)&#xff0c;那么它的运行时间最多与输入规模n成正比。换句话说&#xff0c;当输入规模n增加时&#xff0c;算法的运行时间不会超过某个常数倍的n。比如&#xff0c;如果一个算法的时间复杂度是O(…

打开常用C语言常用内存函数的大门 ——memcmp函数及其模拟实现(完结篇)

文章目录 1. 前言2. memcmp函数2.1 memcmp函数的原型2.2 memcmp的返回值2.2 memcmp的形参2.3 memcmp函数的使用 3. memcmp函数的模拟实现4. 总结 1. 前言 本文是C语言常用内存函数的最后一个函数 —— memcmp函数。 希望各位观众佬爷们能够学会并灵活的使用这四个常用的内存函…

平板显示LED背光芯片OC6700,输入3.6V~60V,升压型 LED 恒流驱动器

概述 OC6700是一款内置60V功率NMOS高效率、高精度的升压型大功率LED恒流驱动芯片。OC6700采用固定关断时间的控制方式&#xff0c;关断时间可通过外部电容进行调节&#xff0c;工作频率可根据用户要求而改变。OC6700通过调节外置的电流采样电阻&#xff0c;能控制高亮度LED灯的…

如何优化 Java 程序的性能?

优化 Java 程序的性能可以从多个方面入手&#xff0c;以下是一些常见的优化方法&#xff1a; 使用合适的数据结构&#xff1a;选择合适的数据结构可以提高程序的效率。例如&#xff0c;使用 HashMap 而不是 ArrayList 来存储大量的键值对数据。 减少对象的创建和销毁&#xff…

Kylin入门教程介绍

Kylin入门教程可以概括为以下几个主要步骤&#xff1a; 一、Apache Kylin简介 Apache Kylin是一个开源的分布式分析引擎&#xff0c;它提供Hadoop之上的SQL接口及多维分析&#xff08;OLAP&#xff09;能力&#xff0c;以支持超大规模数据。最初由eBay Inc.开发并贡献至开源社…

vue2组件封装+elementUI

1.VUE2图片上传封装 使用 <ImageUpload v-model"picUrl" :fileSize"0" getImg"getImg"></ImageUpload> 封装代码 <template><div class"component-upload-image"><el-uploadmultiple:action"uplo…

react 合成事件

React合成事件-CSDN博客 当然&#xff0c;很高兴为你解释React中的合成事件概念&#xff0c;非常适合React初学者理解。 想象一下&#xff0c;你正在组织一场派对&#xff0c;为了让派对顺利进行&#xff0c;你需要管理各种活动&#xff0c;比如游戏、音乐和食物分配。但是&a…

C语言之指针进阶(5),sizeof和strlen的数组计算以及指针运算笔试难题详解

目录 前言 一、sizeof和strlen 的区分比较 二、sizeof,strlen与数组的计算 三、指针运算&#xff0c;笔试难题解析 总结 前言 本文作为指针进阶的最后一篇文章&#xff0c;给大家带来了丰富的例题&#xff0c;这其中包括区分比较sizeof和strlen计算各种花样的数组指针表达式…

Redis的SDS数据结构解决C语言字符串缺陷

redis设计了SDS这一数据结构来表示字符串而不是使用c语言的字符串&#xff1a;字符数组 那么redis为什么要大费周章自己设计字符串呢&#xff1f; 答案是C语言字符串有缺陷 1.获取字符串长度&#xff0c;需要遍历字符数组&#xff0c;时间复杂度是O&#xff08;N&#xff09…

Springboot vue3 elementplus 景点评论数据分析与可视化系统源码

源码链接 系统演示:链接&#xff1a;https://pan.baidu.com/s/1J056R4rYji_mc4gwteZEzg?pwdnua4

关于Linux系统用户和用户组的使用

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

教程 | 在 Navicat 17 中管理连接

Navicat 17 提供了比以往更多的连接数据库实例的方式。除了传统的连接字符串方式以外&#xff0c;Navicat 17 还支持 URI 连接&#xff0c;无论身在何处&#xff0c;都可以轻松地通过 URI 访问对象。另外&#xff0c;还有一个新的管理连接功能&#xff0c;即允许你通过一个以用…

【LeetCode】39.组合总和

组合总和 题目描述&#xff1a; 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target &#xff0c;找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 &#xff0c;并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个…

高中数学:平面向量-常考题型汇总

一、数量积运算 例题1 解析 首先&#xff0c;为了化简运算过程&#xff0c;我们把OA、OB、OC向量记作a、b、c向量。 其次&#xff0c;充分利用已知条件&#xff0c;进行消元&#xff0c;两边平方&#xff0c;可以消除一个向量。 a → \mathop{a}\limits ^{\rightarrow} a→ *…

【简单探索微软Edge】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…