Connect to Kubernetes

使用本地 kubeconfig 配置文件生成客户端证书,jenkins 利用客户端证书来连接 kubernetes 集群,利用集群的弹性资源动态分配代理节点。本文主要目的是通过本地 kubeconfig 文件来生成证书。

导出证书

使用 kubectl config view 去预览本地 kubeconfig 配置,一般使用客户端证书的本地连接会存在三个值,分别是 certificate-authority-data 既客户端 CA 证书,存在于 Cluster 项中;client-certificate-data 客户端公钥、 client-key-data 客户端私钥;这三个文件经过 base64 编码之后存放于 config 文件中。

step 1 导出证书

echo $certificate-authority-data |base64 -d >client-ca.crt
echo $client-certificate-data |base64 -d >client-pub.crt
echo $client-client-key-data |base64 -d >client-key.crt

step 2 生成 pkcs12 格式的客户端证书文件

openssl pkcs12  -export -out client-cert.pfx -inkey client-key.crt -in client-pub.crt -certfile client-ca.crt

导入证书

在 jenkins 中创Certificate类型的凭据,将生成的 pkcs12 证书导入,输入密码。

Infee Fang
Infee Fang
互联网二手搬砖工