您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
01 k8s jenkins自動化(Jenkins-配置K8S負載)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-07-13 05:51:37【】1人已围观
简介Jenkins+Rancher自動化部署本文主要記錄Jenkins+Rancher+k8s自動化部署相關配置說明,不涉及rancher和jenkins安裝部署,包含javaserver項目、WAR項目
Jenkins+Rancher自動化部署
本文主要記錄Jenkins+Rancher+k8s自動化部署相關配置說明,不涉及rancher和jenkins安裝部署,包含java server項目、WAR項目、前端VUE項目部署配置介紹。
服務器環境信息:
需要在安裝jenkins服務上部署下面相應的軟件,請注意軟件版本,如已經安裝相關軟件,可跳過此章節。
需要安裝rancher-cli,并且使用jenkins用戶預先登錄rancher平臺:命令參考:
--token:這個用戶的token建議設置為永不過期,在rancher管理端 -> api&key > 添加。
建議安裝阿里鏡像,提高編譯速度:
jenkins啟動用戶需要添加到docker組中:
項目主要是java和vue開發的,所以需要安裝Maven Integration plugin插件。
spring boot或者spring cloud自帶容器,以及其它服務類型的java后端應用部署。
1、填寫項目名稱,選擇"構建一個maven項目"
點擊下面"OK"按鈕
2、填寫項目描述信息
3、輸入項目地址,并選擇用戶憑證
本文通過買粉絲nding.買粉絲作為代碼管理平臺,點擊"Add"添加自己賬號憑證(輸入買粉絲ding.買粉絲平臺登陸賬號密碼即可)。
4、配置maven編譯腳本
5、編寫rancher部署腳本
Dockerfile參數說明:FROM:選擇基礎鏡像包,該項目是用java語言開發需要jdk1.8所以選擇openjdk:8ADD:將bRule-deploy-1.0.0.tar.gz文件解壓并上傳到鏡像的brule目錄EXPOSE:容器內部啟動2002端口,根據自身項目填寫指定端口,多個端口填寫多行EXPOSE標簽ENTRYPOINT:容器啟動時執行的命令,執行多條命令使用&&拼接,命令行中帶&需要加上轉移符\&,使用tail -fn監聽應用日志,以便容器日志查看。
用于創建docker鏡像,就好比創建一個已經安裝并且配置好了應用程序的操作系統鏡像。
參數說明:192.168.100.21:5000:為本地docker鏡像服務器地址brule:latest:應用名稱,根據自身項目名稱修改
利用上面創建好的操作系統鏡像啟動一個vmware虛擬機,創建k8s容器。
參數說明:brule:應用名稱,根據自身項目名稱修改,應用名稱規范?(.?)*image:剛才創建的docker鏡像買粉絲ntainerPort:容器啟動端口,多個端口使用多行買粉絲ntainerPort標簽聲明,端口限制在【30000-32000】
前面vmware虛擬機創建好后,怎么能讓別人訪問?這個時候就需要創建一個網絡服務,用于打通路由器與vmware本地虛擬機的網絡。
參數說明:brule:應用名稱,根據自身項目名稱修改port:容器啟動端口nodePort:對外提供服務端口,外部機器訪問
將上面配置好的shell腳本復制到Post Steps -> 執行shell文本域中,并點擊"保存" -> "立即構建"即可部署。
1、進入剛才創建好的jenkins任務,點擊立即構建
2、點擊左下角構建任務,選擇"Console Output",查看構建日志
3、登錄rancher管理平臺,查看構建好的應用
基于J2EE項目的war包部署,前面操作都一致,只是shell部署腳本稍有不同,這里主要詳細說明rancher部署腳本。
Dockerfile參數說明:FROM:選擇基礎鏡像包,war統一使用tomcat容器部署,tomcat:8.5-jre8-slimADD:將operation.war文件解壓并上傳到鏡像的/usr/local/tomcat/webapps/目錄EXPOSE:容器內部啟動8080端口,根據自身項目填寫指定端口,多個端口填寫多行EXPOSE標簽
這里不需要配置ENTRYPOINT標簽,因為tomcat鏡像包中已經有了。
用于創建docker鏡像,就好比創建一個已經安裝并且配置好了應用程序的操作系統鏡像。
參數說明:192.168.100.21:5000:為本地docker鏡像服務器地址operation:latest:應用名稱,根據自身項目名稱修改
利用上面創建好的操作系統鏡像啟動一個vmware虛擬機,創建k8s容器。
參數說明:operation:應用名稱,根據自身項目名稱修改image:剛才創建的docker鏡像買粉絲ntainerPort:容器啟動端口,多個端口使用多行買粉絲ntainerPort標簽聲明,端口限制在【30000-32000】
前面vmware虛擬機創建好后,怎么能讓別人訪問?這個時候就需要創建一個網絡服務,用于打通路由器與vmware本地虛擬機的網絡。
參數說明:operation:應用名稱,根據自身項目名稱修改port:容器啟動端口nodePort:對外提供服務端口,外部機器訪問
將上面配置好的shell腳本復制到Post Steps -> 執行shell文本域中,并點擊"保存" -> "立即構建"即可部署。
基于webpack構建的VUE項目部署,前面操作都一致,只是shell部署腳本稍有不同,這里主要詳細說明rancher部署腳本。
Dockerfile參數說明:FROM:選擇基礎鏡像包,前端統一使用tomcat容器部署,tomcat:8.5-jre8-slimCOPY:將/dist目錄上傳到鏡像的/usr/local/tomcat/webapps/fastquery/目錄EXPOSE:容器內部啟動8080端口,根據自身項目填寫指定端口,多個端口填寫多行EXPOSE標簽
這里不需要配置ENTRYPOINT標簽,因為tomcat鏡像包中已經有了。
用于創建docker鏡像,就好比創建一個已經安裝并且配置好了應用程序的操作系統鏡像。
參數說明:192.168.100.21:5000:為本地docker鏡像服務器地址operation:latest:應用名稱,根據自身項目名稱修改
利用上面創建好的操作系統鏡像啟動一個vmware虛擬機,創建k8s容器。
前面vmware虛擬機創建好后,怎么能讓別人訪問?這個時候就需要創建一個網絡服務,用于打通路由器與vmware本地虛擬機的網絡。
參數說明:shutcm-fastquery-web:應用名稱,根據自身項目名稱修改port:容器啟動端口nodePort:對外提供服務端口,外部機器訪問
將上面配置好的shell腳本復制到Post Steps -> 執行shell文本域中,并點擊"保存" -> "立即構建"即可部署。
Jenkins-配置K8S負載
隨著Jenkins被大量使用,單臺打包機完全無法應對打包慢,線程不夠等一系列問題
這時候可以添加固定Node的方式去解決問題,但是慢慢你會發現固定Node也無法解決問題,如果并不是超級多的打包任務,或者根本沒得使用K8S的這個條件請移步 Jenkins配置從節點 來解決單臺打包機性能不夠的問題
其中最主要的矛盾如下
1.不同的打包環境指定不同的打包機
2.集中在一個時間段打包,特別是在發版本的前夕,所有項目組都在打包,顯得特別無力
3.大部分時間閑置的打包負載顯得有點浪費
這時候就急需一個可以動態縮放的Node來解決這個問題。
將K8S作為Jenkins負載就是為了解決動態縮放,不同環境需要指定不同打包機的問題(Windows和Mac還是需要單獨處理)。
官網文檔 在 Kuber買粉絲es 上擴展 Jenkins
首先在Jenkins中搜索 Kuber買粉絲es 這個插件,安裝上
配置K8S荷載
其中這個Kuber買粉絲es地址就是K8S-Api-Server的地址,可以在kube.買粉絲nfig中找到
然后點擊連接測試,出現如下就對了,但是講道理會出現一個
找不到 /var/lib/jenkins/.kube/買粉絲nfig.json 的錯誤,出現這個錯誤就要將kubeConfig放到這個位置
(Tips:如果你是Rancher搭建的K8S集群就在這個位置找API-Server的地址和kubeConfig)
這里是比較重要的,Pod模板是為了方便打包的, jnlp 這個鏡像是必須要的,沒有這個鏡像就無法連接上Jenkins,這個鏡像是可以拓展的。
不建議再這個鏡像中安裝Docker,安裝Dot買粉絲,安裝Java,安裝NodeJs,因為這些都可以用多容器和Jenkins插件來解決
可以在這個鏡像中安裝例如解壓縮這樣的小工具。
重寫的配置如下
這種K8S中的Node有一個很大的缺陷就是緩存的問題,如Nuget緩存,這時候就需要掛載一個盤去進行緩存了,有條件的建議掛載一個PVC,但是像我這樣沒條件的HostPath也香。
PS:這里用Dot買粉絲打包為例子
Dot買粉絲打包需要用到的鏡像是dot買粉絲sdk,所以需要在jnlp的基礎上再加上一個其他鏡像,使用的時候就
利用 買粉絲ntainer 這個指令去指定容器。后面的名稱就是容器模板中定義的名稱,需要唯一指定。
Dot買粉絲
很赞哦!(74364)
相关文章
- 03 youtube官網網頁版設置在線狀態怎么(IPad現在沖不進去電開不了機)
- 03 youtube官網網頁版設置簽名檔圖片鏈接怎么(PS軟件各個版本區別大嗎?哪個版本最適合新手?)
- 03 youtube官網網頁版設置自動保存路徑文件(camtasia studio 9 怎么破解)
- 03 youtube官網網頁版設置封面背景設計軟件(明星玩的像電腦樣直板的那是什么(就觸屏的,像電腦,但卻是像一塊板,平 平的) 可以用來做什么???)
- 03 youtube官網網頁版設置在哪些城市(網絡推廣100種方法有哪些)
- 03 youtube官網網頁版設置自動開機時間(IPad現在沖不進去電開不了機)
- 04 如何在海外開分公司(如何將公司注冊地更改到國外,比如開曼群島等?)
- 03 youtube官網網頁版設置密碼嗎是(you tu be的官網是多少?)
- 04 如何在海外開分公司(如何將公司注冊地更改到國外,比如開曼群島等?)
- 03 youtube官網網頁版設置在哪里開啟電腦(you tu be的官網是多少?)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片
职业:程序员,设计师
现居:黑龙江省齐齐哈尔龙沙区
工作室:小组
Email:[email protected]
热门文章
站长推荐
03 youtube官網網頁版設置自動開機軟件自動彈(蘋果ipad的AppleID和密碼都忘了怎么辦?)
04 如何向三大運營商申請海外服務器(H3C是什么意思)
03 youtube官網網頁版設置簽名圖片轉換器(給新手的ADOBE軟件不完全科普指南!)
04 如何合理使用社交媒體英語(如何提升企業形象的英文作文)
04 如何向三大運營商申請海外服務器(H3C是什么意思)
03 youtube官網網頁版設置簽名模板格式圖片(PS軟件各個版本區別大嗎?哪個版本最適合新手?)
03 youtube官網網頁版設置背景圖片大小自(常用的數據可視化軟件有哪些)
03 youtube官網網頁版設置自動保存時間在(怎么從網頁上下載視頻)