您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么快速搭建Jenkins集群”,在日常操作中,相信很多人在怎么快速搭建Jenkins集群問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么快速搭建Jenkins集群”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
在Jenkins上同時執行多個任務時,單機性能可能達到瓶頸,使用Jenkins集群可以有效的解決此問題,讓多臺機器同時處理這些任務可以將壓力分散,對單機版Jenkins的單點故障的隱患也有分散作用,今天就來實戰快速搭建Jenkins集群,Jenkins版本是2.190.2;
通過Docker可以省去大部分準備工作,您只需在Linux電腦上安裝docker,在輔以少量命令和操作即可完成集群搭建;
本次實戰的環境一共要用三臺電腦,它們的設置都是一樣的,如下:
操作系統:CentOS Linux release 7.6.1810
防火墻關閉
docker:1.13.1
三臺電腦的信息如下: | 主機名 | IP地址 | 作用 | |--|--|--| | master | 192.168.133.131 | Jenkins集群的master節點,提供web服務 | | agent1 | 192.168.133.132 | Jenkins集群的一號工作接節點,標簽是<font color="blue">maven</font> | | agent2 | 192.168.133.133 | Jenkins集群的二號工作接節點,標簽是<font color="blue">gradle</font> |
建議agent2節點的內存大于4G,因為下一篇的實戰操作會用agent2編譯構建spring-framework,對內存的需求略大;
后面的所有操作都是root賬號;
在每臺電腦上創建文件夾<font color="blue">/usr/local/jenkins</font>
登錄master機器,執行以下命令:
docker run \ -u root \ -idt \ --name master \ -p 8080:8080 \ -p 50000:50000 \ -v /usr/local/jenkins:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ jenkinsci/blueocean:1.19.0
執行<font color="blue">docker logs master</font>,會在控制臺顯示jenkins的登錄秘鑰,如下圖紅框所示:
瀏覽器輸入地址:http://192.168.133.131:8080 ,顯示Jenkins登錄頁面,如下圖所示,在紅框位置輸入剛才復制的登錄秘鑰即可登錄:
選擇<font color="blue">安裝推薦的插件</font>:
靜候插件在線安裝完成:
接下來是創建管理員和使用實例url的操作,這里就不多說了,您按實際情況自行斟酌;<br> 至此,Jenkins的master已經搭建好,接下來將agent1和agent2作為工作節點加入集群;
在Jenkins網頁上新增節點,操作如下圖,先進入節點管理頁面:
如下圖,新增一個節點,名為<font color="blue">agent1</font>:
接下來的節點詳情信息如下圖,注意四個紅框中的內容要和圖中保持一致:
保存成功后會顯示機器列表,如下圖,圖標上的紅叉表示機器不在線(此時agent1還沒有接入),點擊紅框:
如下圖所示,紅框中的命令就是agent1的啟動命令,執行該命令的機器會以agent1的身份加入集群:
注意上圖紅框中的<font color="red">agent.jar</font>是個名為agent.jar的文件的下載鏈接,將此文件下載到agent1電腦的<font color="blue">/usr/local/jenkins</font>目錄下;
ssh登錄agent1電腦,執行以下命令,即可將agent1加入Jenkins集群:
docker run \ -u root \ -idt \ --name agent \ -v /usr/local/jenkins:/usr/local/jenkins \ bolingcavalry/openjdk-with-sshpass:8u232 \ java -jar /usr/local/jenkins/agent.jar \ -jnlpUrl http://192.168.133.131:8080/computer/agent1/slave-agent.jnlp \ -secret 44c3e8d1531754b8655b53294bbde6dd99b3aaa91a250092d0d3425534ae1058 \ -workDir "/usr/local/jenkins"
上述命令中的后半部分,即<font color="blue">java -jar ......</font>就是前面圖片紅框中的agent1啟動命令,唯一要改變的是將<font color="blue">agent.jar</font>改成絕對路徑<font color="blue">/usr/local/jenkins/agent.jar</font> 8. 上述命令的鏡像是<font color="blue">bolingcavalry/openjdk-with-sshpass:8u232</font>,其Dockerfile內容如下,可見非常簡單,就是OpenJDK鏡像里面安裝了sshpass,這樣的容器可以在執行ssh命令時帶上遠程機器的密碼,而不用等待用戶輸入密碼,這樣便于shell腳本執行ssh命令:
FROM openjdk:8u232 ARG DEBIAN_FRONTEND=noninteractive RUN apt-get update && apt-get install --assume-yes sshpass
去Jenkins的網頁上查看節點列表,如下圖,可見agent1已經成功加入:
agent2加入集群的方式和agent1大部分是一樣的,只有以下兩點要注意:
在Jenkins頁面上創建節點,名稱是<font color="blue">agent2</font>
agent2的標簽是<font color="blue">gradle</font>,如下圖紅框所示:
此時agent2也加入成功:
到此,關于“怎么快速搭建Jenkins集群”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。