单台Jenkins服务器可以满足企业测试环境及生产环境使用Jenkins自动部署+测试平台,如果每天更新发布多个WEB网站,Jenkins需要同时处理很多的任务。
基于Jenkins分布式,也即多Slave方式可以缓解Jenkins服务器的压力,Jenkins多实例架构如图22-28所示,可以在Windows、Linux、MAC等操作系统上执行Slave。
Jenkins多Slave原理是将原本在Jenkins Master端的构建项目分配给Slave端去执行,Jenkins Master分配任务时,Jenkins Master端通过SSH远程Slave,在Slave端启动slave.jar程序,通过Slave.jar实现对网站工程的构建编译以及自动部署。所以在Slave端服务器必须安装Java JDK环境来执行Master端分配的构建任务。配置多Slave服务器方法和步骤如下:
(1)在Slave服务器,创建远程执行Jenkins任务的用户,名称为jenkins,Jenkins工作目录/home/Jenkins,Jenkins Master免秘钥登录Slave服务器或者通过用户名和密码登录Slave;
(2)Slave服务器安装JAVA JDK版本,并将其软件路径加入系统环境变量。
Jenkins master端平台添加管理节点,系统管理à管理节点à新建节点à输入节点名称,分别如图所示:
(4)配置www_slave节点,指定其Jenkins编译工作目录,设置IP地址,Credentials Add添加登录Slave用户名和密码,如图所示:
(5)Jenkins Slave配置完毕,查看SLAVE状态如如图所示:
(6)单击www_slave节点,然后选择launch salve agent,单击测试Slave Agent是否正常工作,如图所示:
(7)出现如图所示,即证明Slave添加成功。
(8)如上配置完毕,Jenkins-master通过ssh方式来启动slave的slave.jar脚本,java –jar slave.jar,Slave等待master端的任务分配,单击www.jfedu.net,然后选择立即构建,如图所示:
(9)Jenkins+Slave配置完毕后,如果同时运行多个任务,会发现只会运行一个任务,另外的任务在等待,那需要怎么调整呢,需要配置JOB工程勾选“在必要的时候并发构建”即可,如图所示: