Jenkins配置代理节点时遇到的坑和解决办法

需求:服务器太满了,需要找个比较空闲的机器分担一下,看上了同网络的某开会用的笔记本,把这个本本利用起来能跑一个算一个。

但配置起来并不容易,遇到的问题有些网上也几乎找不到答案。这里记录一下能救一个是一个:

一、mvn不是内部或外部命令:

一直以为代理节点就是提供一个算力,没想到所有的配置都要重新弄一遍(除了不用搭建Jenkins)。Jenkins主节点理论上就是发命令到代理节点上,命令里面如何有配置参数什么的,都会优先使用主节点上的配置,所以很容易命令就跑不下去了,这里有两个解决办法:

1、安装和配置完全弄成跟主节点的一模一样,配置里面的路径、参数名等都弄成一模一样。当然这个是比较傻的解决方案。

2、利用节点的特殊配置,在下面这里找到:

可以配置节点特殊的路径,或者环境变量等。

二、Agent无法连接到主机:

一开始用“中文”来给节点命名,怎么都连不上,后来改成英文就可以了。

三、通过Send files or execute commands over SSH插件发送文件到远程服务器且执行命令时报错:ERROR: Exception when publishing, exception message [argument "outputFile" is null]

并且Agent的运行日志里会打印:

Exception when publishing, exception message [argument "outputFile" is null]

原因是我之前手贱在system的全局配置里面勾选了下面这个(Avoid sending files that have not changed):

去掉勾选就没问题了。

猜测可能是环境和路径不一致,导致先去匹配文件是否有被修改过时出错。不过不管怎样,这个配置会导致节点失败是怎么都想不到的。

四、SonarQube Scanner executable was not found for Local SonarQube

如果用maven配合sonarQube,在mvn中使用sonar:sonar参数它会自己安装sonar的插件,不需要安装SonarQube Scanner也是可以运行的。

但如果针对非JAVA,比如前端、c++等,那还是需要Scanner(但不需要SonarQube平台)。跟主节点一样,解压SonarQube Scanner并且配置环境变量即可。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jenkins节点的工作目录与Jenkins配置页面中的节点工作目录不一致可能是由于以下原因之一: 1. 配置不一致:请确保您在Jenkins配置页面中正确设置了节点的工作目录。在Jenkins主页,点击"节点"(Nodes)链接,找到对应节点并点击节点名称进入配置页面。在配置页面中,找到"Remote root directory"(远程根目录)或类似的选项,并确保设置的路径与您期望的工作目录路径一致。 2. 节点重启或重新连接:如果您在更改节点的工作目录后,节点已经重启或重新连接到Jenkins主服务器,那么配置页面上显示的工作目录可能会与实际工作目录不一致。这是因为Jenkins会在节点重新连接使用先前保存的配置信息。您可以尝试通过在节点配置页面中重新保存配置解决此问题。 3. 节点权限问题:请确保Jenkins主服务器对节点的工作目录具有适当的权限。如果节点工作目录位于其他机器上的共享文件系统上,确保Jenkins用户具有访问该文件系统的权限。 4. 多个节点配置问题:如果您有多个节点,并且发现它们的工作目录不一致,可能是由于每个节点都有自己的独立配置。请检查每个节点配置页面,确保它们的工作目录设置正确。 如果以上解决方法无法解决问题,请提供更多的详细信息,例如节点工作目录的实际路径,Jenkins版本以及任何相关的错误日志信息,以便更好地帮助您解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值