jenkins配置连接k8s集群

jenkins配置连接k8s集群

前言

我这边jenkins是在一个服务器里面,k8s集群在其他服务器,实现连接

首先jenkins下载有k8s插件

进入配置页面

获取k8s-api-server地址

对应k8s服务器执行

bash 复制代码
kubectl config view --minify -o jsonpath='{.clusters[0].cluster}'

生成Service Account Token(在k8s中执行)

创建一个新的 Service Account

YAML 复制代码
apiVersion: v1
kind: ServiceAccount
metadata:
  name: jenkins-sa
  namespace: kube-system
复制代码
kubectl apply -f service-account.yaml

绑定角色

yaml 复制代码
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: jenkins-admin
subjects:
- kind: ServiceAccount
  name: jenkins-sa
  namespace: kube-system
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io
yaml 复制代码
kubectl apply -f role-binding.yaml

获取 Service Account Token

执行三条命令

sql 复制代码
SECRET_NAME=$(kubectl get serviceaccount jenkins-sa -n kube-system -o jsonpath="{.secrets[0].name}")
TOKEN=$(kubectl get secret $SECRET_NAME -n kube-system -o jsonpath="{.data.token}" | base64 --decode)
echo $TOKEN

复制生成的Token

添加凭证

在 Credentials 字段中点击 Add -> Jenkins,然后选择 Secret text

将之前获取的 TOKEN 粘贴到 Secret 字段中,并给它一个描述性的 ID(例如 jenkins-sa-token)。

测试连接成功

相关推荐
会飞的小蛮猪11 分钟前
K8s-1.29.2二进制安装-第二章(K8s及ETCD下载及安装)
云原生·容器·kubernetes·etcd
❥ღ Komo·15 分钟前
K8s服务发现与DNS解析全解析
java·开发语言
Gold Steps.16 分钟前
Alloy+Loki+Minio+Grafana云原生K8S日志收集方案
云原生·kubernetes·grafana
g***B7382 小时前
Java 工程复杂性的真正来源:从语言设计到现代架构的全链路解析
java·人工智能·架构
期待のcode4 小时前
MyBatisX插件
java·数据库·后端·mybatis·springboot
醇氧7 小时前
【Windows】优雅启动:解析一个 Java 服务的后台启动脚本
java·开发语言·windows
sunxunyong7 小时前
doris运维命令
java·运维·数据库
菜鸟起航ing7 小时前
Spring AI 全方位指南:从基础入门到高级实战
java·人工智能·spring
古城小栈7 小时前
Docker 多阶段构建:Go_Java 镜像瘦身运动
java·docker·golang
MapGIS技术支持7 小时前
MapGIS Objects Java计算一个三维点到平面的距离
java·开发语言·平面·制图·mapgis