首页 > 解决方案 > 由于“誓言范围不足”,将 jenkins 部署到现有的 kubernetes 集群中失败

问题描述

因此,我尝试将 Jenkins 部署到我现有的 k8s 集群中,但随后收到此通知(OAuth 范围不足)。我的服务帐户缺少什么范围? 存储管理员和项目所有者范围已分配给正在用于此项目的给定服务帐户

标签: jenkinskubernetesgoogle-cloud-platformgoogle-oauthgoogle-kubernetes-engine

解决方案


默认情况下,节点池是使用以下不包括正确范围的范围创建的:

"nodePools": [ { "name": "default-pool", "config": { "oauthScopes": [ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/devstorage.read_only", "https://www.googleapis.com/auth/logging.write", "https://www.googleapis.com/auth/monitoring", "https://www.googleapis.com/auth/servicecontrol", "https://www.googleapis.com/auth/service.management.readonly", "https://www.googleapis.com/auth/trace.append" ],

要修复错误:

如果这是一个 GKE 测试集群,只需使用正确的范围重新创建它。您可以创建具有所需范围的新节点池,然后工作负载迁移到新节点池。正确的范围

如果您使用的是 gcloud,请添加以下范围:

--scopes=https://www.googleapis.com/auth/cloud-platform

如果您决定重新创建节点池,请记住在之后排空并删除旧节点池。我认为以下帖子会有所帮助,因为它与您的案例有关。


推荐阅读