安裝Jenkins持續集成服務

1、Jenkins概述

一、Jenkins的做用和用戶類型

1)Jenkins的做用

持續集成:將不一樣的模塊或者開發人員開發的功能進行整合;
持續交付:能夠重複性更新程序或者軟件項目;
持續部署:自動化部署軟件項目,按期備份,部署項目異常回滾;java

2)Jenkins使用的用戶

開發人員:編寫好的代碼不須要手動編譯打包工做,直接將代碼提交到SVN或者git中保存;
運維人員:減輕管理員工做量,避免人工干預,減小錯誤率;
測試人員:方便進行簡單的代碼測試,避免出現程序邏輯錯誤;git

二、Jenkins的特色和Jenkins的組件

1)Jenkins的特色

Jenkins使用JAVA語言編寫的程序;
開源自動化運維工具;
提供開放的簡單易用交付平臺;
方便用戶安裝和配置軟件開發項目;
提升軟件開發效率,保證軟件開發質量;
方便用戶持續部署項目和測試項目;web

2)Jenkins須要的組件

自動構建軟件或者程序運行過程:自動編譯源代碼程序分發編譯的程序到服務器、部署程序到服務器、測試部署服務;docker

代碼存儲庫:存儲用戶開發的程序,控制程序的版本,使用SVN或者git;vim

持續集成服務:使用Jenkins持續部署開發的項目,對項目進行備份,發現項目異常進行回滾;centos

三、Jenkins的特徵:

  • 開源的Java語言開發持續繼承工具,支持持續繼承,持續部署;tomcat

  • 易於安裝部署配置:可經過yum安裝,下載war包以及經過docker容器等快速實現安裝部署,使用web界面配置管理;服務器

  • 消息通知及測試報告:集成RSS、E-mail經過RSS發佈構建結果或者當構建完成時經過e-mail通知,生成JUnit/TestNG測試報告;網絡

  • 分佈式構建:Jenkins可讓多臺計算機一塊兒構建/測試(主從構建);less

  • 文件識別:Jenkins能夠跟蹤哪次構建生成哪些jar,哪次構建使用哪一個版本的jar等;

  • 豐富的插件支持:1000+插件;

2、安裝配置Jenkins

一、安裝Jenkins

<!--此案例環境是Docker環境,鏈接公網,內存4GB,CPU2個-->
[root@centos01 ~]# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo   
<!--下載Jenkins源-->
[root@centos01 ~]# rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key   <!--導入jenkins公鑰-->
[root@centos01 ~]# yum -y install java-1.8.0-openjdk-devel java-1.8.0-openjdk  <!--安裝JDK-->
[root@centos01 ~]# yum -y install jenkins   <!--安裝Jenkins-->
<!--網速慢的換須要等待很長時間-->
<!--或者經過離線包安裝Jenkins,訪問清華大學源網站,下載相應的Jenkins版本包,上傳到服務器進行安裝-->
<!--清華大學源網站:https://mirror.tuna.tsinghua.edu.cn/jenkins/-->
[root@centos01 ~]# ls
jenkins-2.238-1.1.noarch.rpm   <!--上傳離線rmp包安裝jenkins-->
[root@centos01 ~]# rpm -ivh jenkins-2.238-1.1.noarch.rpm <!--經過離線包安裝Jenkins-->
[root@centos01 ~]# systemctl start jenkins;systemctl enable jenkins  
<!--啓動Jenkins服務,設置開機自動啓動-->
<!--或者-->
[root@centos01 ~]# /etc/init.d/jenkins start  <!--啓動jenkins-->
[root@centos01 ~]# /etc/init.d/jenkins restart  <!--從新啓動jenkins-->
[root@centos01 ~]# netstat -anptu |grep 8080  <!--監聽tomcat端口是否啓動-->
tcp6       0      0 :::8080                 :::*                    LISTEN      6504/java

二、初始化Jenkins

1)訪問Jenkins的web管理頁面http://192.168.100.10:8080

安裝Jenkins持續集成服務

2)獲取管理員密碼,也能夠查看jenkins日誌獲取密碼

[root@centos01 ~]# less /var/log/jenkins/jenkins.log

安裝Jenkins持續集成服務

3)將jenkins默認推薦的插件裝上

安裝Jenkins持續集成服務

4)等待推薦插件安裝完成

安裝Jenkins持續集成服務

5)典型的各別插件安裝失敗,點擊重試從新安裝便可

安裝Jenkins持續集成服務

6)新建立一個管理用戶或者繼續使用admin

安裝Jenkins持續集成服務

7)訪問Jenkins的URL

安裝Jenkins持續集成服務

8)Jenkins插件安裝完成

安裝Jenkins持續集成服務

9)修改Jenkins主配置文件

[root@centos01 ~]# vim /etc/sysconfig/jenkins
10 JENKINS_HOME="/var/lib/jenkins"
29 JENKINS_USER="jenkins"
56 JENKINS_PORT="8080"
65 JENKINS_LISTEN_ADDRESS="192.168.100.10"
150 JENKINS_HANDLER_MAX="100"
[root@centos01 ~]# systemctl restart jenkins  <!--從新啓動Jenkins從新訪問-->

三、安裝publish over ssh插件

1)管理Jenkins插件

安裝Jenkins持續集成服務

2)點擊可選插件,搜索publish over ssh並直接安裝

安裝Jenkins持續集成服務

3)靜靜的等待他安裝完成

安裝Jenkins持續集成服務

4)下載完成自動重啓Jenkins

安裝Jenkins持續集成服務

5)重啓完成後登陸Jenkins,去已安裝插件中驗證publish over ssh是否安裝成功

安裝Jenkins持續集成服務

四、配置SSH

<!--須要再開一臺服務器(100.20)-->
[root@centos01 ~]# ssh-keygen -t rsa  <!--Jenkins服務器生成ssh密鑰-->
[root@centos01 ~]# cat /etc/ssh/sshd_config | grep AuthorizedKeysFile  
    <!--查看Jenkins服務器本身公鑰保存位置-->
AuthorizedKeysFile      .ssh/authorized_keys
[root@centos01 ~]# cat .ssh/id_rsa.pub >> .ssh/authorized_keys 
   <!--將Jenkins本身的公鑰輸入到公鑰配置文件中保存-->
[root@centos01 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@192.168.100.20 
    <!--將Jenkins的ssh公鑰拷貝到100.20服務器-->
[root@centos01 ~]# ssh root@192.168.100.20 <!--Jenkins服務器測試免密遠程100.20-->
Last login: Mon Jun  1 16:10:06 2020 from 192.168.100.252
[root@centos02 ~]# exit  <!---->

五、配置Jenkins系統

1)設置系統配置

安裝Jenkins持續集成服務

2)Jenkins獲取自動的私有並複製

[root@centos01 ~]# cat .ssh/id_rsa

3)添加Jenkins服務器的私鑰

安裝Jenkins持續集成服務

4)添加想要遠程管理的客戶端

安裝Jenkins持續集成服務

五、Jenkins建立新任務

1)Jenkins建立新任務

安裝Jenkins持續集成服務

2)編輯任務名稱

安裝Jenkins持續集成服務

3)編輯經過什麼源碼下載pipework網絡管理工具

安裝Jenkins持續集成服務

4)配置構建後的操做步驟

安裝Jenkins持續集成服務

5)將Jenkins服務器本身和100.20客戶端都添加進來並進行配置

安裝Jenkins持續集成服務

安裝Jenkins持續集成服務

6)查看是否構建成功

安裝Jenkins持續集成服務

7)Jenkins服務器驗證pipework網絡管理工具是否下載成功

[root@centos01 ~]# cd /tmp/
[root@centos01 tmp]# ls
accp
akuma6688894331215680472jar
hsperfdata_jenkins
hsperfdata_root
jetty-0_0_0_0-8080-war-_-any-4925329859175627632.dir
jetty-0_0_0_0-8080-war-_-any-6066713579825404153.dir
jna21252815367201186jar
lua_SQXqZm
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-chronyd.service-vFbZSP
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-cups.service-AHVikS
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-vgauthd.service-75jObR
systemd-private-9d09bb5b9f5b4ffd8c3a65fa0bb96fa5-vmtoolsd.service-PBFEqQ
tmp.W114IMXVc4
winstone1052959205009407779.jar
winstone4171593767117190229.jar
[root@centos01 tmp]# ls accp/          <!--查看pipework工具是否下載成功-->
docker-compose.yml  doctoc  LICENSE  pipework  pipework.spec  README.md

8)100.20客戶端查看pipework網絡管理工具是否下載成功

[root@centos02 ~]# cd /tmp/
[root@centos02 tmp]# ls
benet
systemd-private-4156eeb648fe41a4bcd4092c5d684853-chronyd.service-YBc3RX
systemd-private-4156eeb648fe41a4bcd4092c5d684853-cups.service-X7gmHo
systemd-private-4156eeb648fe41a4bcd4092c5d684853-vgauthd.service-BesDwC
systemd-private-4156eeb648fe41a4bcd4092c5d684853-vmtoolsd.service-tzaBYh
[root@centos02 tmp]# ls benet/      <!--查看pipework工具是否下載成功-->
docker-compose.yml  doctoc  LICENSE  pipework  pipework.spec  README.md

9)能夠將下載好的pipework網絡管理工具打包下載到宿主機

安裝Jenkins持續集成服務

10)刪除pipework任務,之後再也不自動更新下載pipework

安裝Jenkins持續集成服務

————————————本文到此結束,感謝觀看——————————————

相關文章
相關標籤/搜索