Jenkins 连接 Kubernetes

  1. 配置Jenkins Master

要想利用Kubernetes作为Jenkins Slave,第一步是在Jenkins Master上安装Kubernetes插件。安装方法很简单,用Jenkisn管理员账号登录Jenkins,在Manage Plugin页面,搜索Kubernetes,勾选并安装即可。

接下来就是在Jenkins Master上配置Kubernetes连接信息。Jenkins Master连接Kubernetes云需要配置三个关键信息:名称、地址和证书。全部配置信息如下图所示。

名称将会在Jenkins Pipeline中用到,配置多个Kubernetes云时,需要为每一个云都指定一个不同的名称。

Kubernetes地址指的是Kubernetes API server的地址,Jenkins Master正是通过Kubernetes plugin向这个地址发起调度Pod的请求。

Kubernetes服务证书key是用来与Kubernetes API server建立连接的,生成方法是,从Kubernetes API server的/root/.kube/config文件中,获取/root/.kube/config中certificate-authority-data的内容,并转化成base64 编码的文件即可。

# echo certificate-authority-data的内容 | base64 -d > ~/ca.crt

ca.crt的内容就是Kubernetes服务证书key。

上图中的凭据,是使用客户端的证书和key生成的pxf文件。先将/root/.kube/config中client-certificate-data和client-key-data的内容分别转化成base64 编码的文件。

# echo client-certificate-data的内容 | base64 -d > ~/client.crt
# echo client-key-data的内容 | base64 -d > ~/client.key

根据这两个文件制作pxf文件:

openssl pkcs12 -export -out ~/cert.pfx -inkey ~/client.key -in ~/client.crt -certfile ~/ca.crt
Enter Export Password:
Verifying - Enter Export Password:

自定义一个password并牢记。

点击Add,选择类型是Cetificate,点击Upload certificate,选取前面生成cert.pfx文件,输入生成cert.pfx文件时的密码,就完成了凭据的添加。

接着再配置一下Jenkins URL和同时可以被调度的Pod数量。

配置完毕,可以点击 “Test Connection” 按钮测试是否能够连接到 Kubernetes,如果显示 Connection test successful 则表示连接成功,配置没有问题。

安装 allure 插件

配置完Kubernetes插件后,在Jenkins Master上根据需要配置一些公共工具,比如我这了配置了allure,用来生成报告。这样在Jenkins Slave中用到这些工具时,就会自动安装到Jenkins Slave中了。

posted @ 2020-09-14 10:33  花红沁人心  阅读(838)  评论(0编辑  收藏  举报