【问题标题】:Cloudbuild having issue when running the kubelet cloudbuilderCloudbuild 在运行 kubelet cloudbuilder 时出现问题
【发布时间】:2019-10-15 14:12:01
【问题描述】:

我正在尝试使用 Google Cloud Provider CloudBuild 将新更改部署到 Kubernetes 集群。每当我进行一些更改时,触发器都可以正常工作并开始新的构建,但这是我在使用此 cloudbuild.yaml 时遇到的问题。

cloudbuild.yaml

steps:
  #step1      
- name: 'gcr.io/cloud-builders/docker'
  args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/cloudbuildtest-image', '.' ]
  #step 2
- name: 'gcr.io/cloud-builders/docker'
  args: ['push', 'gcr.io/$PROJECT_ID/cloudbuildtest-image']
  #step 3 for testing
  name: 'gcr.io/cloud-builders/kubectl'
  args: ['get', 'pods']
  env:
  - 'CLOUDSDK_COMPUTE_ZONE=us-central1-a'
  - 'CLOUDSDK_CONTAINER_CLUSTER=cloudbuild-test'
  #STEP-4
images:
- 'gcr.io/$PROJECT_ID/cloudbuildtest-image' 

第 1 步和第 2 步工作正常,但问题在于第 3 步,出于测试目的,我只是运行了 get pods 命令来测试它是否可以工作.这是我在日志中遇到的问题。

Running: gcloud container clusters get-credentials --project="journeyfoods-io" --zone="us-central1-a" "cloudbuild-test"
Fetching cluster endpoint and auth data.
ERROR: (gcloud.container.clusters.get-credentials) ResponseError: code=403, message=Required "container.clusters.get" permission(s) for "projects/XXXX/zones/us-central1-a/clusters/cloudbuild-test".

它在寻找什么权限?我需要做一些吗 在运行这些步骤之前进行身份验证或我到底错过了什么?

【问题讨论】:

  • 我可以看到您的 cloudbuild.yaml 文件中缺少第 3 步名称的“-”。这是您复制时的拼写错误吗?如果没有,请添加。
  • @siamsot 开头有#,是注释行。

标签: google-cloud-platform google-cloud-build


【解决方案1】:

使用 [PROJECT_NUMBER]@cloudbuild.gserviceaccount.com 服务帐号执行 Cloud Build 构建的步骤。来自 Cloud Build documentation page 关于这个话题:

启用 Cloud Build API 后,服务帐号为 自动创建并授予 Cloud Build Service Account 角色 为您的项目。这个角色足以胜任多项任务, 包括:

  • 从项目的云源代码库中获取代码
  • 从您的项目拥有的任何 Cloud Storage 存储分区下载文件
  • 在 Cloud Logging 中保存构建日志
  • 将 Docker 映像推送到 Container Registry
  • 从 Container Registry 中提取基础映像

但是这个服务账号默认没有某些操作的权限(特别是container.clusters.get权限默认没有grated)。所以你需要grant it 具有适当的 IAM 角色。在您的情况下,Kubernetes Engine Developer 角色包含container.clusters.get 权限,您可以在this page 中看到。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-14
    • 1970-01-01
    • 2016-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-26
    相关资源
    最近更新 更多