1、首先jenkins在rancher平臺上必須暴露兩個端口,一個用於web服務,一個用於jnlp協議,master和slave的連接使用。
如下圖所示,使用jenkins master的鏡像服務,8080爲web容器端口,50000爲master和slave的協議端口。端口可自定義數字無要求。
2、項目啓動以後在插件管理中安裝k8s的插件。
3、在jenkins中配置k8s的信息
其中的k8s地址和憑證都能在rancher主頁的kubeconfig文件中找到。
直接將 kubeconfig文件複製成txt文件,製作成jenkins的secret file憑證。並測試看是否連通。
4、此處填寫的jenkins地址並非是web訪問的地址。而是jenkins容器內部的地址。內部端口號是我們設置的8080,內部服務的名稱我們可以在rancher的service中找到。
5、需要配置slave的信息,包括slave使用的鏡像。
6、在jenkins全局安全配置上配置代理連接時使用的端口號。由於jenkins master暴露的是50000,這裏配置成50000
7、進行測試,新建一個簡單的job,執行shell腳本。
8、build,我們可以在rancher平臺上看到自動生成了一個slave進行構建,構建成功後又自動銷燬。
以下截取一些構建日誌。