Jenkins 踩坑 (二) | 管理、配置、运行 Node 节点与 Slave 分布式运行
本文为霍格沃兹测试学院优秀学员 Jekins 学习踩坑笔记。测试开发技能进阶,文末加群。
1、总览
-
Jenkins
的任务可以分布在不同的节点上运行 -
节点上需要配置
Java
运行环境,Java_Version >1.5 -
节点支持
Windows
、Linux
、Mac
-
Jenkins
运行的主机在逻辑上是master
节点 -
master
节点的名字必须叫master
,而slave
节点的名字可以随便取。
2、配置远程节点
2.1 前提条件
-
配置远程节点,首先要保证有远程的节点,无论是虚拟机或者是实体机
-
新的节点要与 Jenkins Server 保持连接畅通
-
slave 支持远程运行,例如 ssh、jnlp
-
Jenkins 需要从 git 上获取项目,因此 slave 也需要与 git 建立联系
1)以 GitHub 账号为例,先创建公钥私钥,命令ssh-keygen -t rsa -C "xxxx@qq.com"
2)打开GitHub->setting->SSH and GPG keys
,新建一个SSH key
,输入公钥id_ras.pub
中的内容。
3)使用ssh git@github.com
尝试连接 GitHub,建立信任关系。
-
Java 环境 (我用的是jdk1.8)
-
maven 环境
2.2 登录方式
-
远程用户名密码
-
公钥私钥认证
2.3 配置位置
“系统管理” -> “管理节点”
3、节点创建
3.1 节点连接
1)在 master 机器上选择新建节点。
2)先以账号密码登录方式做演示:
3)保存后刷新状态,可以看到节点已经配置成功。
3.2 节点运行
1)在 job 中勾选"限制项目的运行节点",然后选择 slave 节点的标签保存。
2)构建后在控制台输出中就可以看到任务是由 slave 构建的。
4、闭坑
第一次连接slave时可能会连接失败,出现报错:
/var/jenkins_home/.ssh/known_hosts [SSH] No Known Hosts file was found at /var/jenkins_home/.ssh/known_hosts. Please ensure one is created at this path and that Jenkins can read it.
这是因为 master 和 slave 直接没有建立信任联系,解决方法如下:
1)在节点配饰的启动方式中,选择“手动信任”。
2)保存启动后会在web页面的左下方有个手动信任的选项
(这里忘记截图了,比较懒,就不重新设置演示了,知道这个方法就好~),点进去选择是
就 OK
了,这样就建立了信任联系,后面在启动时就畅通无阻了。
5、总结
-
Jenkins 节点配置方法
-
节点上配通 GitHub
-
节点上配通 Java 和 Maven
-
提速 - 替换 Maven 源
以上,欢迎大家一起交流探讨。
** 推荐学** ** 习**
测试开发从入门到高级实战 系统进阶必备,可能是 业界最具深度、最贴近大厂一线实践 的测试开发课程。
4 个月由浅入深,强化集训,测试大咖思寒领衔主讲,授之以渔,通过 10+ 企业级项目实战演练,带你一站式掌握 BAT 测试开发工程师必备核心技能(
对标阿里巴巴P6+,挑战年薪50W+ )!学员 直推 BAT 名企测试经理,普遍涨薪 50%+!
【往期文章】
Jenkins 踩坑 | job
创建、参数化、定时构建及时区偏差问题解决
戳“阅读原文”,提升自己的核心竞争力吧!
来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力