持续集成高级篇之Jenkins windows/linux混合集群搭建(二)

系列目录html

前面咱们说过,要使用ssh方式来配置windows从节点,若是采用ssh方式,则windows和linux配置从节点几乎没有区别,目前发现的唯一的区别在于windows从节点上目录要设置在c盘里,linux则能够是任意位置.缘由是由于windows环境下,cd命令在没有参数的状况下,没法cd到c盘之外的其它盘.java

Jenkins从节点配置

打开jenkins界面,选择左侧的Manage Jenkins标签,在出现的界面里选择Manage Nodes,而后在出现的界面左侧点击New nodenode

img

在出现的界面里Node name,能够是任意名称,可是强烈建议是容易辨识的名称.linux

单选框选择第一项Permanent Agentexpress

此时点击OK会出现一个更为详细的信息填写页面windows

  • Description为对此节点的一个自定义描述ssh

  • # of executors执行器个数,默认为1,若是指定为多个,则jenkins将会并行向此节点调度多个任务(同一时间执行多个任务).此项设置要根据节点主机的配置和实际工做状况而定.性能

  • Remote root directory远程工做目录,其实是此从节点的工做目录,为必填项,填写后,调度到此节点的任务将在这个目录下执行.测试

  • Labels标签,你们初看到标签可能让为它相似Description描述,没什么功能性的特征,实际上偏偏相反,它在资源调度中起着很是关键的做用.使得Label能够把多个节点组成一个逻辑单元.好比说传统.net项目必须在windows上构建,咱们能够给全部集群中的windows节点都添加一个名叫windows(这里windows并无特殊含义,能够是任意名字,可是要方便管理).这样在建立任务的时候能够指定只在windows机器上执行,这样master节点建立任务时,只会将任务调度到含有windows标签的机器上.这里仅仅是一个例子,标签不单单能够标识机器系统的类型,还能够标识其它信息,好比说有些java项目容许在windows和linux上编译,可是jdk环境必须是1.7,咱们就能够给包含jdk 1.7的主机打上标签,建立此类任务时指定标签,jenkins就只会将任务调度到这些节点上.ui

从名称Lables上就能够看出,一个节点能够指定多个label,多个之间用空格分割.

  • Usage用途,是复选类型,共有两个选项

1) Use this node as much as possible 默认选项,jenkins将自由使用此节点,当有任务能够调度到此节点时(若是建立任务时没有限制,而且没有达到最大并行度,则jenkins能够将任务调度到此节点),jenkins就可能会将任务调度到此节点.

2) Only build jobs with label expressions matching this node仅调度label与此节点匹配的任务.这种模式下,仅当建立任务时指定了标签而且标签匹配此节点时jenkins才会将任务调度到此节点上来.

这种模式下jenkins将为特定的任务预留节点,好比你想要进行性能测试时,你可能仅仅想把此任务运行在特定配置的机器上.这时候可使用这种模式,只有指定了标签的任务才会调度到这些机器上运行

仍以性能测试为例,你在特定机器上运行性能测试时,使用标签能保证任务被分配到正确的节点上,可是可能会产生多个性能测试被分配到同一节点的状况,这种状况会严重影响性能测试结果,是 须要避免的,咱们能够把# of executors值设置为1,则当此节点有任务在运行时,jenkins就不会再分配任务到此节点.

  • Launch method启动方式,这里咱们选择Launch agent agents via SSH经过ssh方式启动.

  • Host,填写主机的Ip

  • Credentials密钥,若是没有密钥,能够点击后面的add添加一个,会出现一个添加对话框.kind选择ssh username with private key,username主节点的用户名,Private Key勾选enter directly.咱们把c:/Users/当前用户名/.ssh/id_rsa里的内容复制粘贴到这里.

同时,咱们须要把master节点上的c:/Users/当前用户/.ssh/id_rsa.pub里的内容复制到从节点c:/Users/当前用户/.ssh/authorized_keys里面.不了解ssh登录的用户能够查阅相关资料.

注意,若是在生成ssh key的时候指定了Passphrase和id,这里也须要配置.

完了以后点击OK

添加完成后Credentials里选择刚添加的key.

其它的都是默认选项,完了点击Save,若是节点正常启动,则在jenkins首页左侧列出来,而且图标上没有红叉标识,若是有红叉标识的,则须要看配置哪里有问题,而后作处理

完整的配置以下

img

配置成功的节点展现以下

img