tencent cloud

容器服务

动态与公告
产品动态
公告
产品发布记录
产品简介
产品概述
产品优势
产品架构
应用场景
产品功能
基本概念
原生 Kubernetes 名词对照
容器服务高危操作
地域和可用区
开源组件
购买指南
购买指引
购买 TKE 标准集群
购买原生节点
购买超级节点
快速入门
新手指引
快速创建一个标准集群
入门示例
容器应用部署 Check List
集群配置
标准集群概述
集群管理
网络管理
存储管理
节点管理
GPU 资源管理
远程终端
应用配置
工作负载管理
服务和配置管理
组件和应用管理
弹性伸缩
容器登录方式
可观测配置
运维可观测性
成本洞察和优化
调度配置
调度组件概述
资源利用率优化调度
业务优先级保障调度
Qos 感知调度
安全和稳定性
容器服务安全组设置
身份验证和授权
应用安全
多集群管理
计划升级
备份中心
云原生服务指南
云原生 etcd
Prometheus 监控服务
TKE Serverless 集群指南
TKE 注册集群指南
实践教程
集群
Serverless 集群
调度
安全
服务部署
网络
发布
日志
监控
运维
Terraform
DevOps
弹性伸缩
容器化
微服务
成本管理
混合云
AI
故障处理
节点磁盘爆满排障处理
节点高负载排障处理
节点内存碎片化排障处理
集群 DNS 解析异常排障处理
集群 Kube-Proxy 异常排障处理
集群 API Server 网络无法访问排障处理
Service&Ingress 网络无法访问排障处理
Service&Ingress 常见报错和处理
Nginx Ingress 偶现 Connection Refused
CLB Ingress 创建报错排障处理
Pod 网络无法访问排查处理
Pod 状态异常与处理措施
授权腾讯云售后运维排障
CLB 回环问题
API 文档
History
Introduction
API Category
Making API Requests
Elastic Cluster APIs
Resource Reserved Coupon APIs
Cluster APIs
Third-party Node APIs
Relevant APIs for Addon
Network APIs
Node APIs
Node Pool APIs
TKE Edge Cluster APIs
Cloud Native Monitoring APIs
Scaling group APIs
Super Node APIs
Other APIs
Data Types
Error Codes
TKE API 2022-05-01
常见问题
TKE 标准集群
TKE Serverless 集群
运维类
隐患处理
服务类
镜像仓库类
远程终端类
事件类
资源管理类
服务协议
TKE Service Level Agreement
TKE Serverless Service Level Agreement
联系我们
词汇表

步骤1:TKE 集群侧及 Jenkins 侧配置

PDF
聚焦模式
字号
最后更新时间: 2025-09-25 18:45:22

TKE 集群侧配置

此步骤中介绍了通过在 TKE 中自定义 RBAC 授权 ServiceAccount ,以及获取配置 Jenkins 时所需的集群访问地址、token 及集群 CA 证书信息。

获取集群凭证

说明:
当前集群需要开启内网访问。详情见 Service 控制台操作指引
1. 使用以下 Shell 脚本,创建测试命名空间 ci、ServiceAccount 类型的测试用户 jenkins 并获取集群访问凭证(token)认证。
# 创建测试命名空间ci
kubectl create namespace ci
# 创建测试 ServiceAccount 账户
kubectl create sa jenkins -n ci
# 获取 ServiceAccount 账户自动创建的 Secret token
kubectl get secret $(kubectl get sa jenkins -n ci -o jsonpath={.secrets[0].name}) -n ci -o jsonpath={.data.token} | base64 --decode
2. 在测试命名空间 ci 创建一个 Role 权限对象资源 jenkins-role.yaml 文件。示例如下:
kind: Role
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
name: jenkins
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["create","delete","get","list","patch","update","watch"]
- apiGroups: [""]
resources: ["pods/exec"]
verbs: ["create","delete","get","list","patch","update","watch"]
- apiGroups: [""]
resources: ["pods/log"]
verbs: ["get","list","watch"]
- apiGroups: [""]
resources: ["secrets"]
verbs: ["get"]
3. 创建一个 RoleBinding 对象资源 jenkins-rolebinding.yaml 文件。如下权限绑定表示,添加 ServiceAccount 类型的 jenkins 用户在ci 命名空间具有 jenkins(Role 类型)的权限。示例如下:
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: RoleBinding
metadata:
name: jenkins
namespace: ci
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: jenkins
subjects:
- kind: ServiceAccount
name: jenkins

获取集群 CA 证书

1. 参考 使用标准登录方式登录 Linux 实例(推荐),登录目标集群的 node 节点。
2. 执行以下命令,查看集群 CA 证书。
cat /etc/kubernetes/cluster-ca.crt
3. 请记录并保存查询所得证书信息。如下图所示:


授权 docker.sock

TKE 集群中的每个 node 节点系统里都有一个 docker.sock 文件,slave pod 在执行 docker build 时将会连接该文件。在此之前,需逐个登录到每个节点上,依次执行以下命令对 docker build 进行授权:
chmod 666 /var/run/docker.sock
ls -l /var/run/docker.sock

Jenkins 侧配置

说明:
不同 Jenkins 版本使用 UI 上存在差异。您可以根据业务需要进行选择。

添加 TKE 内网访问地址

1. 参考 使用标准登录方式登录 Linux 实例(推荐),登录 Jenkins Master 节点。
2. 执行以下命令,配置访问域名。
sudo sed -i '$a 10.x.x.x cls-ixxxelli.ccs.tencent-cloud.com' /etc/hosts
说明:
该命令可在集群开启内网访问后,从集群基本信息页面中的“集群APIServer” 中获取,详情请参见 获取集群凭证
3. 执行以下命令,查看是否配置成功。
cat /etc/hosts
如下图所示即为配置成功:


Jenkins 安装必备插件

1. 登录 Jenkins 后台,选择左侧导航栏中的系统管理
2. 在打开的“管理Jenkins” 面板中,单击插件管理
3. 选择插件管理页面中可选插件,勾选 Locale、Kubernetes、Git Parameter 和 Extended Choice Parameter。
Locale:汉化语言插件,安装该插件可使 Jenkins 界面默认设置为中文版。
Kubernetes:Kubernetes-plugin 插件。
Git ParameterExtended Choice Parameter:用于构建打包时传参。以 Kubernetes 插件为例,如下图所示:



4. 勾选上述插件后单击直接安装,并重启 Jenkins 即可。

开启 jnlp 端口

1. 登录 Jenkins 后台,选择左侧导航栏中的系统管理
2. 在打开的“管理Jenkins” 面板中,单击全局安全配置
3. 在全局安全配置页中,设置入站代理的 TCP 端口为“指定端口 50000”。
4. 其他配置项保持默认状态,并单击页面下方的保存

添加 TKE 集群 token

1. 登录 Jenkins 后台,选择左侧导航栏中的凭据 > 系统
2. 在打开的“系统”面板中,选择全局凭据 (unrestricted)
3. 在“全局凭据 (unrestricted)”页中,单击左侧菜单栏中的添加凭据,根据以下提示设置凭据基本信息。
类型:选择Secret text
范围:默认为全局(Jenkins,nodes,items,all child items,etc)
Secret:填写 获取集群凭证 步骤中获取的 ServiceAccount jenkins 的 Token
ID:默认不填写。
描述:填写该凭据相关信息,该内容将被显示为凭据名称及描述信息,本文以 tke-token 为例。
4. 单击确定即可添加,添加成功后该凭据将显示在凭据列表中。如下图所示:


添加 gitlab 认证

1. 在“全局凭据 (unrestricted)”页中,单击左侧菜单栏中的添加凭据,并根据以下提示设置凭据基本信息。
类型:选择Username with password
范围:默认为全局(Jenkins,nodes,items,all child items,etc)
用户名:gitlab 用户名。
密码:gitlab 登录密码。
ID:默认不填写。
描述:填写该凭据相关信息,该内容将被显示为凭据名称及描述信息,本文以 gitlab-password 为例。
2. 单击确定即可添加成功。

配置 slave pod 模板

1. 登录 Jenkins 后台,选择左侧导航栏中的系统管理
2. 在打开的“管理Jenkins” 面板中,单击系统配置
3. 在“系统配置”面板最下方,选择“云”模块下的新增一个云 > Kubernetes
4. 单击 Kubernetes Cloud details...,设置 Kubernetes 以下基本信息。 主要参数配置如下,其余选项请保持默认设置:
名称:自定义,本文以 kubernetes 为例。
Kubernetes 地址:TKE 集群访问地址,可参考 获取集群凭证 步骤获取。
Kubernetes 服务证书 Key:集群 CA 证书,可参考 获取集群 CA 证书 步骤获取。
凭据:选择 添加 TKE 集群 token 步骤中已创建的凭据 tke-token,并单击连接测试。若连接成功则会提示 Connection test successful。
Jenkins 地址:填写为 Jenkins 内网地址,例如http://10.x.x.x:8080
5. 选择Pod Templates > 添加 Pod 模板 > Pod Templates details...,设置 Pod 模板基本信息。 主要参数信息如下,其余选项请保持默认设置:
名称:自定义,本文以 jnlp-agent 为例。
标签列表:定义标签名称,构建时可根据该标签选择 Pod ,本文以 jnlp-agent 为例。
用法:选择尽可能的使用这个节点
6. 在“容器列表”中,选择添加容器 > Container Template,设置以下容器相关信息。
名称:自定义容器名称,本文以 jnlp-agent 为例。
Docker 镜像:输入镜像地址 jenkins/jnlp-slave:alpine
工作目录:保持默认设置,请记录工作目录,将用于 shell 脚本处构建打包。
其余选项保持默认设置即可。
7. 在“卷”中按照以下步骤添加卷,为 slave pod 配置 docker 命令。
7.1 选择添加卷 > Host Path Volume,主机和挂载路径均填写 /usr/bin/docker
7.2 选择添加卷 > Host Path Volume,主机和挂载路径均填写/var/run/docker.sock
7.3 单击页面下方的保存,即可完成 slave pod 模板配置。

下一步操作

请前往 步骤2:Slave pod 构建配置 创建新任务及配置任务参数。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈