Используйте бета-функции GKE с диспетчером развертывания GCP

Я пытаюсь создать кластер GKE REGION (бета-функция) с помощью диспетчера развертывания GCP. Но у меня ошибка. Есть ли способ использовать бета-функции GKE (включая региональный кластер) с диспетчером развертывания?

ERROR: (gcloud.beta.deployment-manager.deployments.create) Error in             
Operation [operation-1525054837836-56b077fdf48e0-a571296c-604523fb]: 
errors:
- code: RESOURCE_ERROR
  location: /deployments/test-cluster1/resources/source-cluster
  message: '{"ResourceType":"container.v1.cluster","ResourceErrorCode":"400","ResourceErrorMessage":{"code":400,"message":"v1 API cannot be used to access GKE regional clusters. See https://cloud.google.com/kubernetes-engine/docs/reference/api-organization#beta for more information.","status":"INVALID_ARGUMENT","statusMessage":"Bad Request","requestPath":"https://container.googleapis.com/v1/projects/project_id/zones/us-central1/clusters","httpMethod":"POST"}}'

В сообщении об ошибке ссылка на gcp help.

https://cloud.google.com/kubernetes-engine/docs/reference/api-organization#beta

Настроен, как описано там, но ошибка все равно появляется.

Файл yaml моего диспетчера развертывания выглядит так:

resources:
- name: source-cluster
type: container.v1.cluster
properties:
  zone: us-central1
  cluster:
    name: source
    initialNodeCount: 3

Тем не менее, зональный кластер полностью рабочий. Поэтому я думаю, что это связано с использованием контейнера v1beta api в командах диспетчера развертывания.

resources:
- name: source-cluster
type: container.v1.cluster
properties:
  zone: us-central1-b
  cluster:
    name: source
    initialNodeCount: 3

Спасибо.


person tahomatx    schedule 30.04.2018    source источник


Ответы (1)


Сообщение об ошибке, которое вы получаете, похоже, связано с тем фактом, что вы пытаетесь использовать бета-функцию, но указываете ресурс диспетчера развертывания как использующий API v1 (т. Е. Container.v1.cluster). Это означает несоответствие между бета-ресурсом, который вы пытаетесь создать, и указанным ресурсом.

Я изучил это и обнаружил, что возможность добавлять региональные кластеры через Deployment Manager - это совсем недавнее дополнение к Google Cloud Platform, как подробно описано в этом запрос общедоступной функции, который был реализован совсем недавно.

Кажется, вам нужно указать тип API как 'gcp-types / container-v1beta1: projects.locations.clusters', чтобы это работало, и вместо использования ключа 'zone' или 'region' в YAML вы должны вместо этого используйте родительское свойство, которое включает местоположения.

Итак, ваш YAML будет выглядеть примерно так (замените PROJECT_ID своим собственным).

resources:
- type:  gcp-types/container-v1beta1:projects.locations.clusters
  name: source-cluster
  properties:
   parent: projects/PROJECT_ID/locations/us-central1
   cluster:
     name: source
     initialNodeCount: 3
person neilH    schedule 30.04.2018