1、挂载slave节点的方法
在Jenkins的Master上,进入Mange node页面,可以管理node节点,例如新加、删除等操作。
其中,

Name是节点名字;
Description是节点描述;
// of executors是该节点可以同时运行job的数量;
Remote root directory主要是添加了workspace的目录;
Label是该节点的标签名,在运行job的时候,可以使用该标签指定job运行的node;
Usage是你如何使用该节点,通常选择Utilize this node as much as possible,即尽量使用该节点。
Lance method:是将该node挂载到master上的方法。这里有四个选项,常用的是前两选项,即“Launch slave agents on Unix machine via SSH”和“Launch slave agents via Java Web Start”。本文将详细介绍这两种挂载node的方法。
Availability是你何时连接该节点。通常选择一直连接即可,即“Keep this slave on-line as much as possible”。

2、通过SSH连接node

关于SSH连接slave,jenkins有如下描述:

Launch slave agents on Unix machines via SSH
Starts a slave by sending commands over a secure SSH connection. The slave needs to be reachable from the master, and you will have to supply an account that can log in on the target machine. No root privileges are required.

这段描述的意思是说,选择此种方式连接时,master和slave必须是能够通过ssh进行连接的,必须有slave机器的账号才行,但不要求必须是root账号。
这种方式的前提是需要安装SSH Slaves plugin插件。
这种方式的步骤如下:

1、输入slave节点的IP。
2、Add Credentials:
有如下两种方式:
1)通过Username with password方式
需要知道slave机器的用户名和密码2)通过SSH Username with private key方式
需要先在master机器上生成ssh key pair。生成的 public key放到slave机器的 ~/.ssh/authorized_keys里面。然后chmod 600 ~/.ssh/authorized_keys。
然后,添加连接slave的credential,

这两种方式的Scope选项,我选择的是System,表示这个Credentials仅仅是用来master和node进行连接用的。还有另外一种是“Global(Jenkins、nodes、items、child items)”,这种scope的Credential可以用来连接git等其他机器。具体选择哪种scope,根据自己的需要。就连接slave这个需求来说,哪种scope的credential都可以。
Username填写在master上生成key pair时使用的用户名。
Private key选择From the jenkins master ~/.ssh
【扩展知识】
Jenkins的SSH Credentials Plugin插件,可以集中管理这些ssh 的key。安装完这个插件,可以在Jenkins上看到这样的页面

这个页面可以对credentials进行添加、删除、修改等操作。在这里设置的credentials在jenkins的其他需要credentials的地方,可以通过下拉菜单选择使用,比如添加slave时,可以直接在Credentials下拉菜单里选择对应的credential就行:

还有git clone代码时:

此时一定要把在master上生成的 public key添加到github账号的的Profile setting页面里的SSH Keys Settings中。

3、通过JNLP连接node

关于这种方式jenkins有如下描述:

Launch slave agents via Java Web Start
Starts a slave by launching an agent program through JNLP. The launch in this case is initiated by the slave, thus slaves need not be IP reachable from the master (e.g. behind the firewall.) It is still possible to start a launch without GUI, for example as a Windows service.

这段话的意思是说,JNLP方式连接salve,不需要master必须能够ssh连接到slave,只需要两者能够ping通即可。

接下来的任务是将该节点连到master上。与ssh方式是master主动连接slave不同,这种JNLP方式是slave主动连接master。
登陆到slave机器上,运行上图中的java -jar 命令,即可将slave连接到master上了。
,自动重启。
脚本地址:
https://github.com/liuchunming033/setup_jenkins_slave
参考资料
http://www.nerdnuts.com/2014/06/jenkins-managing-ssh-keys/

转载于:https://www.cnblogs.com/flyhgx/p/8819498.html

两种常见挂载Jenkins slave节点的方法相关推荐

  1. android内存池,两种常见的内存管理方法:堆和内存池

    描述 本文导读 在程序运行过程中,可能产生一些数据,例如,串口接收的数据,ADC采集的数据.若需将数据存储在内存中,以便进一步运算.处理,则应为其分配合适的内存空间,数据处理完毕后,再释放相应的内存空 ...

  2. 使用定制的NSDictionary的方法,对NSArray进行排序(附:数组排序两种常见方法)

    NSArray中存放的是NSDictionary,可以使用策略的方法对NSDictionary进行定制,增加比较的方法.然后调用NSArray的sortUsingSelector方法对数组进行排序,这 ...

  3. 移动Web开发图片自适应两种常见情况解决方案

    本文主要说的是Web中图片根据手机屏幕大小自适应居中显示,图片自适应两种常见情况解决方案.开始吧 在做配合手机客户端的Web wap页面时,发现文章对图片显示的需求有两种特别重要的情况,一是对于图集, ...

  4. 一文带你掌握OBS的两种常见的鉴权方式

    OBS提供了REST(Representational State Transfer)风格API,支持您通过HTTP/HTTPS请求调用.在调用OBS的API前,需要了解OBS的鉴权认证方式.本文就将 ...

  5. 两种常见的周期性特征,时序必知强特

    来源:kaggle竞赛宝典 在时间序列问题中,周期特征是异常重要的,例如: 地铁流量预测中的周期性,每周一到周五的早上地铁流量就特别大,但是到了周末人就比较少: 股票涨跌的预测问题中,在节假日之前,例 ...

  6. diy 扫地机器人 滚刷_无滚刷PK有滚刷:关于保洁机器人两种常见清扫结构的分析...

    目前市面上销售的保洁机器人从底部清扫结构上来看,主要分为两种结构类型:一类是以iRobot Roomba为代表的有滚刷三段式清扫结构,另一类则是以V-BOT为代表无滚刷双重清扫结构,今天爸爸乐轻松网主 ...

  7. 常系数非齐次线性微分方程(两种常见形式)

    二阶常系数非齐次线性微分方程的一般形式是 y′′+py′+qy=f(x)(1)y''+py'+qy=f(x) \tag{1} y′′+py′+qy=f(x)(1) 其中p,q是常数. 一般而言,二阶常 ...

  8. 无线AP中小型、大型两种常见组网方式

    无线AP(Access Point)网络覆盖是现代无线网络中的重要组成部分.它提供了无线信号的传输和接收功能,使用户能够在无线网络中进行通信和访问互联网.针对不同的需求和场景,存在两种常见的无线AP网 ...

  9. 两种常见电商sku的设计

    在电商系统中,商品sku和sku模型至关重要,是整个电商系统的重要组成部分之一,下面通过一些简单的知识整理和分析,讲解一下sku属性管理和常见的建模方式. 一.sku的定义及概念的统一 1.什么是sk ...

最新文章

  1. mongoDB条件操作符
  2. 初步解读Golang中的接口相关编写方法
  3. Maven for Eclipse 第二章 ——安装 m2eclipse插件
  4. 漫画算法:找出缺失的整数
  5. linux中win文件转为unix,如何将文本文件从Windows转换为Unix
  6. sql 查询表结构_SQL查询语句的完整结构解析
  7. python游戏入门书籍推荐
  8. Tomcat最大线程数的设置
  9. 唱吧DevOps的落地,微服务CI/CD的范本技术解读
  10. 伺服电机的调试步骤有哪些
  11. 【激光雷达3D】【论文翻译】Complex-YOLO: An Euler-Region-Proposal for Real-time 3D Object Detection on Point
  12. git 关于Git每次进入都需要输入用户名和密码的问题解决
  13. html模板原型,政务管理系统原型模板分享
  14. VC2005编译优化选项之玄机
  15. 【HAVENT原创】使用 Spring Boot 的 AOP 自定义注解
  16. allergo 命令
  17. MyBatis foreach 标签常用方法总结
  18. 土鸡和土鸡蛋价格一直很高,为何农民说养土鸡不赚钱?
  19. Python网络相关面试题
  20. 项目优化:当使用redis减少数据库压力时,遇到redis写入失败,造成读取数据问题的解决方案

热门文章

  1. scapy 安装及简单测试
  2. Daily Scrum 2012/11/08
  3. es6 --- Promise封装读取文件操作
  4. 调查:Java程序员最伤心,C++程序员最年老
  5. sql2012一段时间无法连接报53错误
  6. Eclipse新建web项目正常启动tomcat不报错,但不能访问项目的解决方法
  7. mysql-5.5.50-winx64
  8. Firemonkey Android IOS 图标
  9. alternatives命令使用方法
  10. 网速提高学习周——系统篇