Jenkins集群的搭建首先基于单台Jenkins搭建并且可以部署项目的基础上,搭建详细过程可以参考:Jenkins - 单机和集群搭建、基于git分支部署spring boot项目(脚本、docker发布)、gitlab钩子部署【图文详解】

刚开始自己的理解是搭建Jenkins集群,肯定是需要在其他服务器上也部署 jenkins.war 包,并且将两者进行关联。其实Jenkins从节点不需要搭建服务,只是需要满足下面两个条件:

1、jdk、git、maven环境一致

符合Jenkins执行环境,包括Jenkins 系统配置上的相关配置,并且最好与Jenkins的 master节点一样的配置和路径等,否则执行的时候会遇到很多问题,如下:

1)安装jdk,最好配置环境变量(安装过程省略);

2)Jenkins的配置git地址与安装地址一致:可以使用 yum install git安装,以及查看 whereis git 应该是 /usr/bin/git

3)maven安装,并且保证与设置的 setting.xml地址一致

如下(保证一致性):

如果两者不一致,可以会引发需要git 客户端去拉去代码时发现 git不存在,如:java.io.IOException: Cannot run program "/usr/bin/git" (in directory "/home/kevin/workspace/kevin-demo"): error=2, No such file or directory 

2、需要满足ssh从master到slave节点

此时分为两种方式,直接使用用户名密码方式和使用秘钥方式

1)、用户名密码SSH

2)、秘钥方式SSH

在master节点执行 ssh-keygen 命令生成公钥和私钥,所有从节点都可以使用:

使用 ssh-copy-id 命令发送密钥到【所有】Slave主机,需要填写Slave主机登录密码 

最后都在提示可以使用 ssh命令试一下,那就试一下吧

配置ssh的秘钥信息,也可以在该处点击添加,如下:

配置从节点信息和使用从节点发布 

在Jenkins web页面配置Node节点,进入Jenkins管理页面,点击节点管理

说明:新版本的 并没有 Launch slave agents via SSH选项,就还是只能选择 Launch agents via SSH,只是此时下面选择:Non verifying Verification Strategy【不使用策略验证】

创建成功后会在slave的服务器上,对应配置的地址下面创建 workspace目录,如下:

在每个任务job中配置: 

此时执行任务:

 Over。。。。。。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐