jenkins部署
可参考如下方法,使用docker安装部署:
mkdir -p /data/jenkins/jenkins_home
cd /data/jenkins
docker run -d -m 2048M -c 1024 -p 8080:8080 -p 50000:50000 --name jenkins -u root \
-v /data/jenkins/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
--restart=always jenkins:latest
启动后,登录,先升级到最新版本,然后安装常用插件
kubenetes插件名称: Kubernetes plugin
生成所需K8S集群证书
admin帐号请求证书json文件
cat >> admin-csr.json <<EOF
{
"CN": "admin",
"hosts": [],
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "CN",
"ST": "hangzhou",
"L": "XS",
"O": "system:masters",
"OU": "System"
}
]
}
EOF
生成admin证书
- 前置条件: 已有k8s证书生成工具,有集群ca相关配置和公钥私钥(说白了就是部署集群时候用的那套工具以及ca配置和证书)
cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=kubernetes admin-csr.json | cfssljson -bare admin
ls
admin.csr admin-csr.json admin-key.pem admin.pem
生成pfx格式证书
生成pfx格式证书,并下载到电脑
openssl pkcs12 -export -out ./jenkins-admin.pfx -inkey ./admin-key.pem -in ./admin.pem -passout pass:pfx_passwd
ls jenkins-admin.pfx
jenkins-admin.pfx
注意: -passout 参数后的pass:pfx_passwd ,pfx_passwd是fpx文件格式的密码,上传jenkins时候需要
证书上传到jenkins
在凭据管理中选择Certificate类型证书,并根据提示上传之前的jenkins-admin.pfx
注意填写密码,点击Change Password,填入刚刚设置的pfx_passwd
配置jenkins,添加kubenetes集群
- 前置条件,jenkins已安装kubenetes插件
方法一:
系统管理-> 系统配置 -> cloud;点击跳转连接a separate configuration page,会跳转到k8s集群配置页面
方法二:
系统管理-> 节点管理 -> Configure Clouds
选择 Add a new cloud -> kubenetes,点击Kubernetes Cloud details…进行配置
如果jenkins部署在k8s集群内部
- Kubernetes地址只需要填写k8s集群名称即可,可通过kubectl get svc获取集群名称
- 公钥和证书都不用填写了
点击连接测试,如出现success(老版本)或者Connected to Kubernetes v1.18.10,表示连接k8s集群成功