You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Rancher 1.6创建的Kubernetes集群与GitLab集成

解决Rancher 1.6 K8s集群与GitLab集成(Review Apps)的证书和Token问题

我懂你现在卡在了获取正确的CA证书(PEM格式)和Token上,之前用K8s Dashboard里的证书和Token导致Helm Tiller安装失败对吧?下面我给你一步步捋清楚从Rancher 1.6里获取正确信息的方法,还有排查问题的思路:

一、获取正确的PEM格式CA Certificate

你已经知道从Rancher的Kubernetes > CLI > Generate Config拿API URL,其实CA证书也藏在这个生成的kubeconfig文件里:

  • 打开生成的kubeconfig文件,找到certificate-authority-data字段,这是一串base64编码的CA证书内容
  • 把它解码成PEM格式:执行命令
    echo "这里替换成certificate-authority-data的字符串" | base64 -d
    
  • 解码后输出的就是标准的PEM格式证书,直接复制到GitLab的CA Certificate字段即可

二、获取有权限的Token

之前用K8s Dashboard里的Token可能权限不够,或者不是对应Rancher管理集群的正确Token,建议专门创建一个GitLab专用的服务账号:

  1. 创建服务账号
    • 登录Rancher Dashboard,进入你的K8s集群,到Kubernetes > Namespaces,可以选默认命名空间,或者新建一个比如gitlab-managed的命名空间
    • 进入目标命名空间,点击Service Accounts > Add Service Account,命名为gitlab-ci
  2. 绑定足够权限
    • 因为GitLab需要安装Helm Tiller、创建各类资源,至少需要集群管理员权限(新手建议先给cluster-admin,后续可按需缩小权限)
    • 进入Kubernetes > Roles > Add Role,选择Cluster Role,权限模板选cluster-admin
    • 到Role Bindings > Add Role Binding,把刚才的gitlab-ci服务账号绑定到这个cluster-admin角色
  3. 提取Token
    • 找到你创建的gitlab-ci服务账号,点击进去,会看到自动生成的Secret(名字一般是gitlab-ci-token-xxxx格式)
    • 打开这个Secret,复制token字段的内容,这就是要填到GitLab的Token字段的值

三、排查Helm Tiller安装失败的问题

如果按上面步骤获取信息后还是报错,检查这几点:

  • 权限验证:用拿到的API URL、CA证书、Token在本地测试kubectl连接,创建临时kubeconfig文件后执行kubectl get nodes,如果能正常返回节点,说明权限没问题
  • CA证书正确性:确保用的是Rancher kubeconfig里解码后的证书,不是K8s Dashboard里的(Rancher管理的集群CA可能和原生K8s的不一样)
  • API URL格式:确认是Rancher提供的集群API地址,比如https://<你的rancher服务器地址>/k8s/clusters/<集群ID>,不要填原生K8s的API地址

按这个流程走,应该能顺利完成GitLab和Rancher K8s集群的集成,成功安装Helm Tiller并使用Review Apps功能。

内容的提问来源于stack exchange,提问作者Kartik Rokde

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:14:11