Используйте функции бета-тестирования GKE вместе с GCP Deployment Manager - PullRequest
0 голосов
/ 30 апреля 2018

Я пытаюсь создать кластер 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

Спасибо.

1 Ответ

0 голосов
/ 30 апреля 2018

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

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

Кажется, вам нужно указать тип API как «gcp-types / container-v1beta1: projects.locations.clusters», чтобы это работало, а не вместо использования ключа «зона» или «регион» в 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...