暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

记一次由于外部K8S集群证书到期导致Jenkins无法生成动态agent节点错误解决(入坑出坑)

全栈工程师修炼指南 2023-02-07
253

欢迎关注「WeiyiGeek」公众号

点击 👇 下方卡片 即可关注我哟!

设为星标⭐每天带你 基础入门 到 进阶实践 再到 放弃学习

涉及 网络安全运维应用开发物联网IOT、学习路径 、个人感悟 等知识

  花开堪折直须折,莫待无花空折枝 


作者主页:[ https://www.weiyigeek.top ]

作者博客:[ https://blog.weiyigeek.top ]

作者答疑学习交流群:请关注公众号后回复【学习交流群


问题.记一次由于外部K8S集群证书到期导致Jenkins无法生成动态agent节点错误解决

错误信息:

[Pipeline] node
Still waiting to schedule task
All nodes of label ‘Jenkins项目名称-_50-m4dq2’ are offline
Aborted by Jenkins 管理员

问题原因: 由于外部K8S集群相关组件证书更新,导致Jenkins Clouds 的 Kubernetes 链接证书过期无法正常使用,需重新生成新的 cert.pfx 并上传到凭据中心。

解决办法: 可参照此篇文章进行【 https://blog.weiyigeek.top/2020/12-30-531.html#独立Jenkins-Master节点接入外部K8s集群 】进行更新Jenkins上连接K8S集群的APIServer证书,或者按照如下方法进行。

  • 步骤 01.K8S外部集群证书提取与生成 Kubernetes 的 server certificate key 和Client P12 Certificate File。

点击 Jenkins Dashboard -> 凭据 -> 系统 -> 全局凭据 (unrestricted) -> 选择【旧凭据项目】-> 更新 -> 选择上传上面生成的 cert.pfx 到 jenkins 中 -> 输入其凭据密码。

  • 步骤 02.重新生成新的 cert.pfx Jenkins 所用的证书。

    # 在Kubenates的上创建devops命名空间,用于Jenkins使用 (若已创建可跳过)
    kubectl create namespace devops


    # 在Kubernetes上为Jenkins构建创建有Cluster Admin权限的Service Account jenkins(若已创建可跳过)
    kubectl create clusterrolebinding jenkins --clusterrole cluster-admin --serviceaccount=devops:jenkins


    # 在最新 ~/.kube/config 配置文件, 运行以下命令分别生成生成 ca.crt, client.crt, client.key
    cat ~/.kube/config | grep "certificate-authority-data" | sed s/[[:space:]]//g | cut -d ':' -f 2 | base64 -d > ca.crt
    cat ~/.kube/config | grep "client-certificate-data" | sed s/[[:space:]]//g | cut -d ':' -f 2 | base64 -d > client.crt
    cat ~/.kube/config | grep "client-key-data" | sed s/[[:space:]]//g | cut -d ':' -f 2 | base64 -d > client.key


    # 根据前面步骤生成的 ca.crt, client.crt 和 client.key 来生成 PKCS12 格式的 cert.pfx
    openssl pkcs12 -export -out cert.pfx -inkey client.key -in client.crt -certfile ca.crt
    # Enter Export Password: weiyigeek
    # Verifying - Enter Export Password: weiyigeek
    • 步骤 03.点击 Dashboard -> 节点列表 -> Configure Clouds (左侧) -> 选择【Kubernetes】选项卡 -> 连接测试。 (若入下图所示则配置成功)

    至此,该问题解决完毕, 希望能帮助到各位看友!


    偷偷的告诉你哟?极客全栈修炼】微信小程序已经上线了,

    可直接在微信里面直接浏览博主博客了哟,后续将上线更多有趣的小工具。



    本文至此完毕,更多技术文章,尽情等待下篇好文!

    文章书写不易,如果您觉得此篇文章还不错的朋友,请给这篇专栏 【点个赞、投个币、收个藏、关个注转个发留个言、赞个助】,这将对我的肯定,我将持续发布更多优质文章,谢谢!

    原文地址: https://blog.weiyigeek.top/2020/12-21-618.html






     学习书籍推荐 往期发布文章 

    运维案例之记一次Kubernetes集群证书过期或延期操作处理实践指南(干货分享)

    网站首页被篡改? 看我使用PhantomJS利器实现网站自动监控修改并截图发送企业微信预警

    企业运维 | Nginx服务在Docker与Kubernetes容器环境中快速搭建部署实践

    大神之路-起始篇 | 第12章.计算机科学导论之【抽象数据类型】学习笔记

    大神之路-起始篇 | 第11章.计算机科学导论之【数据结构】学习笔记


    微信公众号:

    [全栈工程师修炼指南]  关注 企业运维实践、网络安全、系统运维、应用开发、物联网实战、全栈文章尽在【 https://blog.weiyigeek.top 站点,谢谢支持!

    亲,文章都看完了,不关注一下吗?

    长按二维码  即可关注我哟!







    如果此篇文章对你有帮助,请你将它分享给更多的人!


    温馨提示: 由于作者水平有限,本章错漏缺点在所难免,希望读者批评指正,若有问题或建议请在文章末尾留下您宝贵的经验知识,或联系邮箱地址 master@weiyigeek.top 或 关注公众号 [全栈工程师修炼指南] 留言。


     点击【"阅读原文"】获取更多有趣的知识!

    文章转载自全栈工程师修炼指南,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

    评论