Jenkins配置windows/linux从节点

背景:

环境:jenkins环境(Ubuntu)
节点机器:Linux、Windows

前置条件:

节点机器:安装java、allure、python

1 Linux节点管理机器添加

1.1 系统管理->节点列表->New Node

在这里插入图片描述

1.2 节点配置

名称:可以任意起,我一般都用节点IP来
远程工作目录:一般为root,也可以是其他的目录
在这里插入图片描述

1.3 启动方式

启动方式:linux下启动方式选择Launch agents via SSH
Credentials:选择账号密码,可以点击下面的添加按钮添加节点机器的账号密码
在这里插入图片描述

1.4 节点属性

工具添加git:一般linux下的git都在/usr/bin/git
工具添加allue commandline:如果没有这个选项。点击全局工具管理,点击Allure Commandline 安装即可
在这里插入图片描述

1.5 配置allure commandline

这个路径就是你linux节点下的allure的安装目录,这里需要填写实际路径,而不是软链接(这里有个坑,后面我再说明)
在这里插入图片描述

1.6 环境变量

我一般这样配置

/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/opt/satools:/root/bin:/bin

在这里插入图片描述

1.7 配置job绑定节点机器

选择job-点击配置-选择项限制项目运行节点-选择我们刚刚添加的节点机器

在这里插入图片描述

1.8 配置构建后的操作

添加allure-report,这里如果没有,需要去插件管理里安装allure的插件(在插件管理搜索Allure Jenkins Plugin)如下图
在这里插入图片描述

在这里插入图片描述
注意:这里的allure_report是你脚本pytest运行的时候生成的路径,我脚本中配置的是allure_report,所以这里我填的allure_report

1.9 尝试构建:

点击立即构建
在这里插入图片描述
如果构建日志这样则代表成功
在这里插入图片描述
并且节点机器本地会生成一个代码路径
我的是 :/root/workspace/job_test/

2 遇到问题

如上的步骤都配置好之后,点击立即构建报如下错误
在这里插入图片描述
原因是1.5步骤我之前配置的allure的路径是:/usr/bin/allure, 这个实际是软链接,我们需要填的是allure真实安装的路径,可通过 readlink -f /usr/bin/allure获取真实的路径来填写,再次构建即可成功啦。

3 windows节点配置

3.1 添加节点,还是和linux一样

3.2 节点配置

名称:windows的IP
配置远程工作目录,这是Jenkins在从节点上创建工作空间的位置。
在这里插入图片描述

3.3 启动方式:

选择一种适合你的Windows环境的启动方式。常用的有以下几种:
Launch agent via Java Web Start:使用JNLP方式连接slave。
Launch agent by connecting it to the master:适用于Windows服务的方式。
Launch agent via execution of command on the master:通过主节点上执行的命令来启动代理。
使用SSH方式启动:Windows通常不用这种方式。
根据你选择的启动方式,按照提示配置需要的信息。我这里使用JNLP方式,则需要下载agent.jar并在Windows机器上运行Java Web Start命令:

java -jar agent.jar -jnlpUrl http://JENKINS_URL/computer/SLAVE_NAME/slave-agent.jnlp -secret YOUR_SECRET_KEY

这一步jenkins上会有配置的步骤提示你操作,打开windows powershell配置即可,如下提示即代表链接成功
在这里插入图片描述

在这里插入图片描述

3.4 工具列表

这里欸之allure的安装位置,需要填写的是bin目录的上一层级目录
在这里插入图片描述

3.5 启动节点:

根据你的配置方式启动从节点,一旦从节点启动并连接到主节点,你应该可以在Jenkins的“管理节点和云”页面上看到它的状态为“在线”。
在这里插入图片描述

4 遇到问题:

如果遇到如下提示404 Not Found
在这里插入图片描述

这里一定要在全局安全配置里打开代理并指定端口50000
在 Jenkins 的全局安全配置中指定 “TCP port for inbound agents” 为 50000(或任何其他指定端口)是为了允许 Jenkins 从节点(也称作代理节点或 slave 节点)使用 JNLP(Java Network Launch Protocol)来与主节点进行通信。该设置定义了用于监听从节点连接的端口。
JNLP 从节点需要通过这个端口与 Jenkins 主节点建立连接。如果没有为 “TCP port for inbound agents” 设置一个合适的端口号,远程代理无法知道应该连接到主节点的哪个端口,这可能导致连接问题。
在这里插入图片描述

4.1 测试构建

还是和linux一样,将job绑定节点,点击构建,如下提示即可
在这里插入图片描述
然后windows本地查看会生成workspace路径包含代码文件
在这里插入图片描述

总结:

以上就是本人在配置从节点的过程中遇到的一些问题,希望对大家有帮助。

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

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

相关文章

【MySQL】MySQL锁(二)表锁与行锁测试

MySQL锁(二)表锁与行锁测试 上篇文章我们简单的了解了一大堆锁相关的概念,然后只是简单的演示了一下 InnoDB 和 MyISAM 之间 表锁 与 行锁 的差别。相信大家还是意犹未尽的,今天我们就来用代码说话,实际地操作一下&…

ES链接报connection reset by peer

这里写自定义目录标题 ES链接报connection reset by peer解决方法主要是删除node.lock文件重启es服务问题解决 ES链接报connection reset by peer 问题描述服务端报错connection reset by peer 在服务器上去curl返回的也是connection reset by peer 链接重置,说明e…

「GO基础」文件名规范、关键字与标识符

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

一键升级 package.json 下所有依赖的版本

命令: npx npm-check-updates -u这个命令会生成一个新的package.json文件,其中包含了所有依赖项的最新版本。然后,你可以运行npm install来安装这些更新后的依赖项。 请注意,在更新依赖项之前,最好备份你的项目&…

元数据管理Atlas

文章目录 一、Atlas概述1、Atlas入门2、Atlas架构原理 二、Atlas安装1、安装环境准备1.1 安装Solr-7.7.31.2 Atlas2.1.0安装 2、Atlas配置2.1 Atlas集成Hbase2.2 Atlas集成Solr2.3 Atlas集成Kafka2.4 Atlas Server配置2.5 Kerberos相关配置2.6 Atlas集成Hive 3、Atlas启动 三、…

ARM的学习

键控灯 mykey.h #ifndef __MYKEY_H__ #define __MYKEY_H__ #include "stm32mp1xx_gpio.h" #include "stm32mp1xx_gic.h" #include "stm32mp1xx_rcc.h" #include "stm32mp1xx_exti.h" void key1_int_config(); void key2_int_config(…

用海外云手机高效率运营TikTok!

很多做国外社媒运营的公司,想要快速引流,往往一个账号是不够的,多数都是矩阵养号的方式,运营多个TikToK、Facebook、Instagram等账号,慢慢沉淀流量变现,而他们都在用海外云手机这款工具! 海外云…

使用EasyExcel和POI操作Excel实现文件上传和下载

使用easyExcel实现文件读写 实现流程 1.导入依赖 2.定义数据模型 3.定义监听器 4.读取或写入数据 5.释放资源 实现 导入依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.3</…

知识管理系统(KMS):一文扫盲,能和chatGPT相融吗?

一、什么是KMS&#xff0c;有什么作用 KMS&#xff08;Knowledge Management System&#xff09;知识管理系统是一种用于组织、存储、共享和利用知识的软件系统或平台。它旨在帮助组织有效地管理和利用内部和外部的知识资源&#xff0c;以支持决策、创新和持续学习。 KMS知识管…

华为云CodeArts IDE For Python 快速使用指南

CodeArts IDE 带有 Python 扩展&#xff0c;为 Python 语言提供了广泛的支持。Python 扩展可以利用 CodeArts IDE 的代码补全、验证、调试和单元测试等特性&#xff0c;与多种 Python 解释器协同工作&#xff0c;轻松切换包括虚拟环境和 conda 环境的 Python 环境。本文简要概述…

数据治理——元数据管理实施步骤

一、元数据管理概述 1.1 数据管理面临的问题 数据治理的概念是对数据数据管理的管理&#xff0c;在数据管理的过程中遇到的问题有&#xff1a; 1.1.1 数据不可理解 海量数据&#xff0c;标准不统一&#xff0c;各系统、各部门对统一指标和概念的解释不一致&#xff0c;统计口…

python机器学习库中Scikit-learn和TensorFlow如何选择?

在Python机器学习库中&#xff0c;Scikit-learn和TensorFlow是两个非常流行的选择&#xff0c;但它们各自有不同的特点和适用场景。以下是根据搜索结果的一些考虑因素&#xff0c;帮助你做出选择&#xff1a; 1. 项目需求&#xff1a; 如果你的项目主要涉及传统的机器学习算…

OpenCV基本图像处理操作(三)——图像轮廓

轮廓 cv2.findContours(img,mode,method) mode:轮廓检索模式 RETR_EXTERNAL &#xff1a;只检索最外面的轮廓&#xff1b;RETR_LIST&#xff1a;检索所有的轮廓&#xff0c;并将其保存到一条链表当中&#xff1b;RETR_CCOMP&#xff1a;检索所有的轮廓&#xff0c;并将他们组…

魔方网表 存在 mailupdate.jsp接口 任意文件上传漏洞

声明&#xff1a; 本文仅用于技术交流&#xff0c;请勿用于非法用途 由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;文章作者不为此承担任何责任。 简介 魔方网表mailupdate.jsp接口存在任意文件上传漏洞 …

数据仓库—维度建模—事实表设计

事实表 事实表是数据仓库中的核心表,用于记录与业务过程相关的事实信息,是进行数据分析和挖掘的主要数据来源。 在ER模型中抽象出了有实体、关系、属性三种类别,在现实世界中,每一个操作型事件,基本都是发生在实体之间的,伴随着这种操作事件的发生,会产生可度量的值,…

ChatGPT深度科研应用、数据分析及机器学习、AI绘图与高效论文撰写教程

原文链接&#xff1a;ChatGPT深度科研应用、数据分析及机器学习、AI绘图与高效论文撰写https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247601506&idx2&sn5dae3fdc3e188e81b8a6142c5ab8c994&chksmfa820c85cdf58593356482880998fc6eb98e6889b261bf621e1d…

Git 实用技巧2——新建空白分支 | 重命名分支 | 回退到历史 commit

git version 2.39.2.windows 1. 新建空白分支 参考&#xff1a;Git - git-switch Documentation: https://git-scm.com/docs/git-switch/zh_HANS-CN 使用 --orphan 参数&#xff0c;创建一条不基于任何现有提交的空白分支。其初始提交&#xff08;即 HEAD&#xff09;不指向任…

箭头函数多个函数体

当箭头函数需要多个语句组成函数体时&#xff0c;需要使用花括号 {} 将多个语句包裹起来&#xff0c;并且需要显式地使用 return 关键字返回值。下面是一个包含多个函数体语句的箭头函数示例&#xff1a;‘ var greet name > { var greeting "Hello, "; …

了解在 Docker 和 Kubernetes 中运行Go程序的影响

根据 2021 年对 Go 开发人员的调查,使用 Go 编写服务是最常见的用途。同时,Kubernetes 是部署这些服务的最广泛使用的平台。了解在 Docker 和 Kubernets 中运行 Go 的含义非常重要,可防止出现 CPU 节流等常见情况。 GOMAXPROCS 变量定义了负责同时执行用户级代码的操作系统线…

python生成二维码

要在Python中生成二维码&#xff0c;可以使用第三方库qrcode。首先&#xff0c;确保已经安装了qrcode库&#xff1a; pip install qrcode然后&#xff0c;使用以下代码生成二维码&#xff1a; import qrcodedata "https://mp.csdn.net/mp_blog/creation/editor?spm100…