jenkins-k8s pod方式动态生成slave节点

一. 简述:

使用 Jenkins 和 Kubernetes (k8s) 动态生成 Slave 节点是一种高效且灵活的方式来管理 CI/CD 流水线。通过这种方式,Jenkins 可以根据需要在 Kubernetes 集群中创建和销毁 Pod 来执行任务,从而充分利用集群资源并实现更好的隔离性和安全性。

二. 环境部署:

  1. k8s 集群环境。

  2. 安装Kubernetes Plugin 。

  3. 配置Kubernetes 权限凭证:

    cat jenkins-pipline.yaml

    apiVersion: v1
    kind: ServiceAccount
    metadata:
    name: jenkins-pipline
    namespace: jenkins-pipline


    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRoleBinding
    metadata:
    name: jenkins-pipline
    roleRef:
    apiGroup: rbac.authorization.k8s.io
    kind: ClusterRole
    name: cluster-admin
    subjects:

    • kind: ServiceAccount
      name: jenkins-pipline
      namespace: jenkins-pipline

    apiVersion: v1
    kind: Secret
    metadata:
    annotations:
    kubernetes.io/service-account.name: jenkins-pipline
    name: jenkins-pipline
    namespace: jenkins-pipline
    type: kubernetes.io/service-account-token

获取证书凭据:

复制代码
kubectl get secrets -n jenkins-pipline -o jsonpath="{.items[?(@.metadata.annotations['kubernetes\.io/service-account\.name']=='jenkins-pipline')].data.token}" | base64 -d
  1. jenkins上配置:

创建凭据:选择上面的证书凭据 :

创建cloud:

打开: 系统管理----节点和cloud-----create:

选择之前的凭据。 测试OK:

相关推荐
开开心心就好12 分钟前
本地文件搜索工具,双击Ctrl就能呼出搜索
java·服务器·前端·支持向量机·ffmpeg·音视频·模拟退火算法
独隅17 分钟前
Claude 高效使用指南深度评测
java·开发语言·claude·claude code
ByteCoder.24 分钟前
班前十分钟的清单,按体检引导单来写
java·服务器·前端·助播虾
海的透彻26 分钟前
如何让docker容器启动时用自定义的用户
java·docker·dubbo
疯狂学习GIS31 分钟前
将谷歌地球引擎账号升级为Contributor与Partner层级的方法
java·数据库·人工智能
GG.WinGel42 分钟前
质数数目(蓝桥杯练习题)
java·数据结构·算法·青少年编程·蓝桥杯
泡泡糖的中文规格书1 小时前
HDLbits 2.2 学习笔记 · 多路复用器
java·开发语言
John_Hui1 小时前
第 3 篇:配置 JDK 17 环境
java·开发语言·ubuntu
秋天的怀念_David1 小时前
算法一千零一夜 · 第十七夜 长街点灯
java·程序人生·算法
不吃鱼的羊1 小时前
如何应对恐惧
java