使用GitLab Kubernetes Agent集成K8s后运行流水线出现连接配置错误
ERROR: Preparation failed: error connecting to Kubernetes: invalid configuration: no configuration has been provided
排查解决步骤
1. 核对CI配置关联规则
- 必须在
.gitlab-ci.yml中显式指定Agent对应的KUBE_CONTEXT变量,变量格式为GitLab所属群组/项目名称:Agent名称,参考配置如下:
variables: KUBE_CONTEXT: front-end-group/mall-project:prod-cluster-agent
- 若使用群组层级共享的Agent,需确认Agent的授权范围已包含当前运行流水线的项目,未做过窄的访问限制。
2. 验证集群内Agent运行状态
- 登录Kubernetes集群执行命令
kubectl get pods -n gitlab-agent,确认所有Agent相关Pod状态为Running,无频繁重启、异常退出情况。 - 执行命令
kubectl logs -n gitlab-agent <替换为实际Agent Pod名>查看Agent运行日志,确认无GitLab连接失败、认证报错类信息。
3. 检查GitLab Runner配置
- 确认执行流水线的Runner为Kubernetes类型Runner,Runner配置文件
config.toml的[runners.kubernetes]配置块下,未额外配置bearer_token、kubeconfig等会覆盖Agent集成逻辑的参数。 - 若使用项目共享Runner,确认当前项目已开启对应Runner的访问权限,未被手动禁用。
4. 确认Agent CI访问权限配置
- 进入GitLab对应项目/群组的「基础设施-Kubernetes集群」管理页,找到目标Agent,确认已开启「CI/CD工作流权限」开关,允许流水线调用Agent访问集群。
- 确认Agent部署时使用的
config.yaml中已正确配置ci_access字段,最小授权配置参考:
ci_access: projects: - id: front-end-group/mall-project
内容的提问来源于stack exchange,提问作者1DT17CS093_ VENKATARAMESWARA R
相关产品推荐
相关产品推荐

