jenkins可以连接另外一台设备用于执行操作,用作备份提升安全性,负载均衡提升效率,以及跨平台工程的多版本编译。
我的jenkins主机是在windows中部署的,因此这里设置一台linuxslave用作编译通用库的linux版本。
在主机上添加slave的配置
首先是添加配置,这里要在主机中设置
- 前往设置->Manage Nodes and Clouds->新建节点 选择Permanent Agent
- 添加配置
名称 描述 标签都不影响slave的工作。根据自己的需要设置就可以了
远程工作目录即slave本机执行jenkins时的工作区路径。
用法 分别是尽量使用和只在被指定时使用也是根据需求来设置
Tool Locations 也是从机上对应工具的路径
启动方式 当前选择的是从机自己启动并向主机发起连接
- 添加从机
配置设置完成后,就需要从机自己通过指令连接主机了。
首先从机需要安装java。
然后点击上面的agent.jar下载anget.jar并放到从机中
然后执行指令,这样从机就会连接到主机中
从机连接 然后直接在主机中配置项目时选择限制运行节点, 节点选择
该项目就会在从机中执行了
迁移jenkins
迁移jenkins本身非常简单 只要在目的地部署jenkins并将原jenkins的home中的所有文件都拷贝过去,然后在设置中重置一下本机地址就行了
使用docker 命令
docker pull jenkins/jenkins:lts
//拉取jenkins镜像
docker run -p 8081:8080 --name jenkins -u root -v /c/jenkinshome:/var/jenkins_home -d jenkins/jenkins:lts
//绑定端口和原本的jenkinsHome路径 这样启动的jenkins所有内容都和以前一样
使用Docker Slave
docker run --name slavename --restart=always -v /c/opt:/opt/slave imagename:version /bin/bash -c "java -jar agent.jar -jnlpUrl http://XXX.XXX.XXX.XXX/computer/tetst/slave-agent.jnlp -secret XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -workDir `"/test`""
如果image中没有agent.jar则设置关联文件夹通过宿主机读取
如果有必要可以关联一下工作区目录
容器启动会自动执行后面的命令 这样可以保持slave自动连接主机
网友评论