Добавление основных авторизованных сетей в GKE - PullRequest
0 голосов
/ 04 октября 2019

Я пытаюсь добавить masterAuthorizedNetworksConfig cidrblock во время создания кластера gke. Я использую yaml в качестве файла конфигурации. По большей части все работает, кроме случаев, когда он попадает в раздел кода для masterAuthorizedNetworksConfig. Я получаю сообщение об ошибке ниже.

ОШИБКА: (gcloud.deployment-manager.deployments.create) Ошибка в операции [операция-1570192512938-59414eef672d4-7aad07f0-31e95364]: ошибки: - код: расположение CONDITION_NOT_MET: / deployments/cff-prod-clus/resources/prod-cff->$.properties сообщение: |ошибка: тип экземпляра (объект) не соответствует ни одному из допустимых типов примитивов (разрешено: ["массив"]) уровень: схема "ошибка": {"loadingURI": "#", "указатель": "/ schemas / MasterAuthorizedNetworksConfig / properties/ cidrBlocks "} экземпляр: {" указатель ":" / cluster / masterAuthorizedNetworksConfig / cidrBlocks "} домен: ключевое слово" validation ":" тип "найден:" объект "ожидается: [" массив "]

У меня естьпопытался изменить код с другим синтаксисом, но я получил те же результаты.

 ipAllocationPolicy:
        useIpAliases: true
        clusterIpv4CidrBlock: 10.81.224.0/20
        servicesIpv4CidrBlock: 10.81.222.0/23
      masterAuthorizedNetworksConfig:
        enabled: true
        cidrBlocks: 
          displayName: Corporate
          cidrBlock: 10.10.1.0/24
      networkConfig:
        enableIntraNodeVisibility: true
      privateClusterConfig:
        enablePrivateNodes: true
        masterIpv4CidrBlock: 10.81.219.0/28

исправленный код

 ipAllocationPolicy:
        useIpAliases: true
        clusterIpv4CidrBlock: 10.81.224.0/20
        servicesIpv4CidrBlock: 10.81.222.0/23
      masterAuthorizedNetworksConfig:
        enabled: true
        cidrBlocks: 
          - displayName: Corporate
          - cidrBlock: 10.10.1.0/24
      networkConfig:
        enableIntraNodeVisibility: true
      privateClusterConfig:
        enablePrivateNodes: true
        masterIpv4CidrBlock: 10.81.219.0/28

Если это не доступно во время развертывания, я ожидал добавить этот cidrblock кМастер авторизованных сетей.

1 Ответ

0 голосов
/ 10 октября 2019

Поле masterAuthorizedNetworksConfig.cidrBlocks ожидает массив (даже если вы добавляете только одну запись). Каждая запись должна иметь -. Обратите внимание, что каждая запись не обязательно является отдельной строкой. В вашем случае вы можете сделать следующее:

      masterAuthorizedNetworksConfig:
        enabled: true
        cidrBlocks: 
          - displayName: Corporate
            cidrBlock: 10.10.1.0/24

displayName и cidrBlock оба принадлежат одной и той же записи, поэтому нет необходимости в тире в каждой строке. Однако, если вы хотите добавить еще один CIDR, вы должны добавить еще один - для следующей записи

...