一.前言
Jenkins是當下比較流行的一款功能強大的持續集成工具,它支持搭建集群,來提高多項目的構建速度,模式為主從模式,master會將任務分配到各個從節點進行並發構建,從而提高速度,下面介紹一下如何搭建Jenkins集群。
二.環境介紹
系統環境:CentOS 7.2
Jenkins版本:2.121.1 長期支持版
兩台服務器,一台作為master,一台作為slave,設A為master,設B為slave。
關於Jenkins的安裝,根據個人使用過一段時間來說,不推薦使用docker來安裝,推薦直接安裝。Jenkins只需要裝在master即可。Jenkins的安裝教程:https://www.cnblogs.com/stulzq/p/9291237.html
三.從節點的環境准備
根據你是用的源代碼管理工具git或者svn來安裝對於的工具,還有需要安裝可能會構建的項目所需的環境,比如.NET Core 項目就需要安裝 .NET Core SDK,JAVA項目就需要安裝JAVA環境。從節點無需安裝Jenkins。
1.確保Master和Slave之間能相互通信。
2.master執行以下shell命令,確保master能通過ssh登錄slave
#生成秘鑰 生成以后我這里保存在 /root/.ssh/id_rsa 記住這個位置
ssh-keygen
#將秘鑰發送到slave 此過程會輸入slave密碼
ssh-copy-id <從節點用戶一般為root>@<從節點ip>
#執行ssh命令進行登錄
ssh <從節點用戶一般為root>@<從節點ip>
四.建立結點
打開Jenkins -> 系統管理 -> 管理節點 -> 新建節點
按圖中標記的順序來操作,輸入結點名稱,選擇固定結點類型,然后點擊OK按鈕。
五.配置節點
結點名稱:隨意填
描述:隨意填
並發構建數:同時進行構建的最大數量,我這里設置為2
工作目錄:從節點上的jenkins工作目錄,權限要給足。
標簽:隨意填,我們將項目關聯到節點時,可以根據標簽來。
用法:選擇“盡可能的使用這個節點”,相當於設置結點優先級。
啟動方式:“Launch slave agent via SSH”,使用SSH由master連接到slave來執行任務
主機:slave的ip
Credentials:見后文
Host Key Verification Strategy :Manually trusted key Verification Strategy
Require manual verification of initial connection :選中
可用性:盡量保持在線
工具位置:不設置
環境變量:不設置
Credentials 的設置
點擊“Add"按鈕,選擇"Jenkins"
按照上圖進行設置,設置以后,在界面上選擇你剛剛設置的憑據。
最后點擊“添加”按鈕,便完成了對slave的添加。
六.驗證連接從節點
由於上面我們使用了“Manually Trusted Key Verification Strategy”策略,所以,這里我們需要手動驗證一下從節點的身份。
點擊我們剛剛新建的從節點 -> 點擊【Trust SSH Host Key】,點擊【是】:
點擊【Launch agent】:
配置完成的節點列表:
在左側會顯示:
七.Job和slave的關聯
在Job配置,進行如何設置即可。