Jenkins 集成k8s 运行Jenkins slave(Jenkins 弹性slave)
1. 打开~/.kube/config文件
# 复制certificate-authority-data的内容,运行以下命令生成client.crt
echo "<certificate-authority-data>" | base64 -d > ca.crt
# 复制client-certificate-data的内容,运行以下命令生成client.crt
echo "<client-certificate-data>" | base64 -d > client.crt
# 复制client-key-data的内容,运行以下命令生成client.key
echo "<client-key-data>" | base64 -d > client.key
再根据前面步骤生成的ca.crt, client.crt和client.key来生成PKCS12格式的cert.pfx
以下命令运行时,需要输入4位以上的密码
openssl pkcs12 -export -out cert.pfx -inkey client.key -in client.crt -certfile ca.crt
在Jenkins上集成Kubernetes
在Jenkins上配置Kubernetes Credential
将上面生成的cert.pfx复制出来备用
添加cert.pfx到Jenkins Global Credential
如下图:
在Jenkins上配置Kubernetes Cloud
打开Manage Jenkins/Configure System, 找到Cloud ,点击Add a new cloud,选择Kubernetes
输入Name,比如kubernetes
复制上面步骤生成的ca.crt文件内容到Kubernetes server certificate key
输入上面创建的Kubernetes Namespace,devops
选择刚刚配好的Credential
点击“Test Connection"按钮测试Jenkins是否可以成功连接Kubernetes。
Pod Retention选择Never,这样每次Jenkins构建结束后(无论成功和失败)都会销毁Pod,达到动态创建和运行Jenkins Build Agent的目的。
原文地址:https://blog.csdn.net/programer_bei/article/details/101289835