最佳實踐———Jenkins對離線和插件安裝慢解決方法

部署jenkins中不管是k8s去部署jenkins還是傳統的去部署jenkins都會遇到兩種問題,一個是下載插件慢,一個是離線,我們需要做一些優化

第一個問題就是安裝jenkins一般會遇到離線的jenkins,目前這個問題,大多數因爲很多的訪問國外的服務器也是有些問題,但是有的也不會影響,甚至也能正常運行,但是有的就會出現離線的狀況,所以針對這個問題我們還是需要一些應對的方法
目前解決這個問題不管是k8s還是傳統部署這些配置都要去工作目錄去修改
將這個https,換成http
也就是默認的工作目錄下,這個目錄看你個人在部署jenkins的時候放到什麼位置了,如果不設置就是在/root/.jenkins/hudson.model.UpdateCenter.xml 這個文件裏
因爲我這是部署在k8s裏所以這裏去持久化的目錄下更改的,不過都是一樣的

[root@k8s-node3 kubernetes]# cd default-jenkins-home-pvc-c6e2ac7d-c2fc-4b8c-87c4-d73ea176049e/
[root@k8s-node3 default-jenkins-home-pvc-c6e2ac7d-c2fc-4b8c-87c4-d73ea176049e]# cat hudson.model.UpdateCenter.xml 
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>http://updates.jenkins.io/update-center.json</url>
  </site>

像這裏需要重啓一下,我直接delete pod,這個默認k8s會自動再幫你啓動一個,數據不會丟失,因爲使用的持久化
檢查是否正常,測試已經可以下載插件了

第二個問題就是安裝插件,jenkins的服務器是在國外,所以有的會導致下載插件很慢,所以需要將jenkins的插件的地址換成國內的訪問地址
我這個是k8s部署的所以持久化這個目錄的工作目錄放這裏了,要是傳統的話,默認不修改工作目錄是在/root/.jenkins/updates/default.json
如果修改的話,這個根據自己的工作目錄去將這個國外的地址替換過來
[root@k8s-node3 ~]# cd /ifi/kubernetes/
進入這個持久化目錄,到這個默認的default下

[root@k8s-node3 kubernetes]# cd default-jenkins-home-pvc-9d58c2b2-e325-4fae-a83a-808f3d5175ef/updates
[root@k8s-node3 updates]# cat default.json 

就是將這個目錄去修改,默認會看到是走的google的地址,下載插件也是update的地址,所以下載會慢,當然這個插件一般進到web的頁面才能看到這個updates下的文件,默認下載的時候纔會加載這個地址,所以需要將裏面的配置都替換成清華的源,而之前在頁面去替換,很多不生效的,所以最終的解決辦法就是替換這裏json,另外在jenkins的目錄下restart重啓讓它生效,或者傳統的部署war形式就是重啓war包
進行替換,這裏因爲很多國外的需要用sed全部替換國內的

[root@k8s-node3 updates]# sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && \
sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

現在安裝插件也沒問題
最佳實踐———Jenkins對離線和插件安裝慢解決方法
現在去測試安裝插件的速度也是扛扛的
最佳實踐———Jenkins對離線和插件安裝慢解決方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章