部署jenkins中無論是k8s去部署jenkins仍是傳統的去部署jenkins都會遇到兩種問題,一個是下載插件慢,一個是離線,咱們須要作一些優化node
第一個問題就是安裝jenkins通常會遇到離線的jenkins,目前這個問題,大多數由於不少的訪問國外的服務器也是有些問題,可是有的也不會影響,甚至也能正常運行,可是有的就會出現離線的情況,因此針對這個問題咱們仍是須要一些應對的方法
目前解決這個問題無論是k8s仍是傳統部署這些配置都要去工做目錄去修改
將這個https,換成http
也就是默認的工做目錄下,這個目錄看你我的在部署jenkins的時候放到什麼位置了,若是不設置就是在/root/.jenkins/hudson.model.UpdateCenter.xml 這個文件裏
由於我這是部署在k8s裏因此這裏去持久化的目錄下更改的,不過都是同樣的web
[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會自動再幫你啓動一個,數據不會丟失,由於使用的持久化
檢查是否正常,測試已經能夠下載插件了json
第二個問題就是安裝插件,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所有替換國內的ide
[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
如今安裝插件也沒問題
如今去測試安裝插件的速度也是扛扛的
測試