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:

相关推荐
CV艺术家几秒前
openssL生成免费的证书
java·linux·服务器
全速向光9 分钟前
手机玩我的世界Java版:FCL启动器下载使用指南
java·智能手机·游戏程序
pjj1985411 分钟前
Hadoop-python中使用大数据1
java·ide·eclipse
好好沉淀16 分钟前
巧用 Set 去重与复合键:高效统计分组内不重复元素的数量
java·spring boot·后端
Wang's Blog23 分钟前
Java框架快速入门: Spring Security+OAuth2之工程结构与开发环境配置
java·spring·状态模式
lzfshub28 分钟前
Open-DIS Python发送DIS实体状态PDU:实现坦克炮塔与主炮部件参数
java·网络·python·dis
魏 无羡31 分钟前
springboot 拦截器
java·spring boot·后端
IT界的老黄牛40 分钟前
Jenkins 构建卡了 23 天,abort 按钮点了没用
jenkins·maven·prometheus·告警·排查·ci-cd
步行cgn41 分钟前
Spring Boot 绑定嵌套 Bean 详解
java·spring boot·后端
cui_hao_nan1 小时前
Kubernetes 核心概念总结
云原生·容器·kubernetes