您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 >
01 k8s jenkins自動化(Jenkins-配置K8S負載)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-06-18 11:41:37【】0人已围观
简介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買粉絲
很赞哦!(652)
相关文章
- 01 一般貿易進口稅率計算(一般貿易進口中,關稅和增值稅怎么計算)
- 03 youtube官網中文版教程官網下載官網電腦(用youtube,學英語——嘔心瀝血碼教程)
- 01 一年級新生家長會買粉絲文案(新學期家長會文案)
- 03 youtube官網中文版教程考試2023報名時間是(AWS認證權威考經(助理級認證篇))
- 01 一般貿易化妝品貼中文標(一般貿易中文標簽必須貼嗎)
- 03 youtube官網中文版更新不能暫停視頻(電腦不用軟件怎么錄屏)
- 03 youtube官網中文版更新不適用于創業企業(“創業瘋子”陳士駿:Youtube創始人,28歲賺130億,30歲突患腦瘤)
- 03 youtube官網中文版教程官網下載中心qq(電腦不用軟件怎么錄屏)
- 03 youtube官網中文版更新不能卸載干凈(電腦不用軟件怎么錄屏)
- 01 一般貿易和加工貿易哪個好(加工貿易和一般貿易的區別是什么)
Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片
职业:程序员,设计师
现居:内蒙古包头青山区
工作室:小组
Email:[email protected]
热门文章
站长推荐
03 youtube官網中文版更新了什么問題如何(怎樣才能學好python語言?)
03 youtube官網中文版更新不能關機只能(有沒有 不用ITUNES 直接刷機的辦法啊)
01 一般貿易進口模式(進出口貿易方式有幾種,分別是哪幾種?)
01 一般貿易退稅能退多少(出口退稅額怎么算)
03 youtube官網中文版更新不包括以下哪(怎樣才能學好python語言?)
01 一般貿易化妝品怎么查是不是正品(一般貿易進口的化妝品是正品嗎?)
03 youtube官網中文版教程官網下載安裝(2022最新版從0-1運營TikTok的保姆級教程)
01 一笑傾城網紅為什么不直播(網紅一笑傾城為什么不封殺)