自学内容网 自学内容网

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路径包含代码文件
在这里插入图片描述

总结:

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


原文地址:https://blog.csdn.net/weixin_41238626/article/details/137828742

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!