
-參考:https://github.com/jenkinsci/kubernetes
yml檔案
部署jenkins
登陸http://NodeIP:30008
使用日志中的臨時密碼解鎖jenkins
選擇插件
選擇無
建立admin與密碼完成登陸
配置插件源
預設從國外網絡下載下傳插件,會比較慢,建議修改國内源:
安裝插件
管理Jenkins->系統配置-->管理插件-->分别搜尋Git Parameter/Git/Pipeline/kubernetes/Config File Provider,選中點選安裝。
Git Parameter:Git參數化建構
Git:拉取代碼
Pipeline:流水線
kubernetes:連接配接Kubernetes動态建立Slave代理
Config File Provider:存儲kubectl用于連接配接k8s叢集的kubeconfig配置檔案
管理Jenkins->Manage Nodes and Clouds->configureClouds->Add
Kubernetes插件:Jenkins在Kubernetes叢集中運作動态代理
插件介紹:https://github.com/jenkinsci/kubernetes-plugin
https://github.com/jenkinsci/docker-inbound-agent
課件目錄裡涉及四個檔案:
Dockerfile 建構鏡像
jenkins-slave shell腳本啟動slave.jar
settings.xml 修改maven官方源為阿裡雲源
slave.jar agent程式,接受master下發的任務
建構并推送到鏡像倉庫:
如果是kubeadm搭建的叢集則不需要考慮這一步
簽發CA憑證
生成kubeconfig授權檔案
綁定權限到admin
Jenkins Pipeline是一套插件,支援在Jenkins中實作內建和持續傳遞管道;
Pipeline通過特定文法對簡單到複雜的傳輸管道進行模組化;
聲明式:遵循與Groovy相同文法。pipeline { }
腳本式:支援Groovy大部分功能,也是非常表達和靈活的工具。node { }
Jenkins Pipeline的定義被寫入一個文本檔案,稱為Jenkinsfile。
建立pipeline job
選擇kubernetes 聲明式pipeline
pipline腳本内容如下:
儲存git和harbor的憑據ID
1bbda277-a0e0-42c9-b4f3-be22e6344d66
6020966e-3469-44e7-baff-e9945fbaa4f3
k8s認證配置檔案放到jenkins
添加配置
選擇自定義的加入即可
拷貝好ID: 4f0526c1-18c8-48c7-bd22-eeb8b179a950
建立pipelinejob
選擇參數
選擇參數示例使用

修改Git中的yml檔案參數
pipeline腳本
部署到k8s這裡面的kubeconfig需要使用生成的對應namespace的配置檔案
docker鏡像倉庫位址加入secret:docker-regsitry-auth
deploy中的需要替換的大寫參數也需要替換,然後送出之後再做jenkins編譯