前言
Jenkins支持分布式構建,可以配置多個slave節點,讓任務跑在不同的機器上。
節點管理
所有節點機器用到的Jdk, Git等環境的路徑需要統一,安裝位置和Jenkins所在服務器的位置保持一致,以便于管理。
新建節點
系統管理 -> 管理節點, 點擊頁面左上角的新建節點按鈕,輸入節點名稱,我通常習慣以節點機器的IP來命名,比如192.168.1.100,Dump選項為新建一個節點,復制現有節點就是復制一個已經存在的節點的配置。
配置中的具體參數如下:
of executors:4 # 這個值控制Jenkins并發構建的數量
遠程工作目錄: /home/qa/ci/ # Jenkins作為節點機器的工作目錄
用法:只允許運行綁定到這臺機器的Job
啟動方式:
Launch slave agents on unix machines via ssh
Avaliability:keep this slave on-line as much as possible # 控制節點的使用方式
新建節點成功后,在列表頁可以看節點的當前狀態,如果名稱的圖標上有紅色的小差,說明該節點未連接上
啟動方式的區別
- Launch slave agents on unix machines via ssh
- 在unix機器上通過ssh方式進行連接
- Launch slave agents via java web start
- 以java web的方式進行啟動
- Launch slave via execution of command on the master
- Let Jenkins control this windows slave as windows service
- 以windows service方式在windows機器上運行,如果選擇這種方式,新建節點成功后,需要在節點頁面上下載slave-agent.jnlp文件,并在對應的節點機器上啟動
使用哪種方式和agent之間進行交互根據具體的使用場景來決定。
設置任務在哪個節點執行
進入Job的新增或者編輯頁面,有一個選項 restrict where this project can be run
,在Label Expression中輸入對應的節點名稱保存即可