YandexClusterConfiguration

Version: deckhouse.io/v1

  • apiVersionстрока

    Обязательный параметр

    Допустимые значения: deckhouse.io/v1, deckhouse.io/v1alpha1

  • dhcpOptionsобъект

    Cписок DHCP-опций, которые будут установлены на все подсети.

    Возможные проблемы при использовании.

    • domainNameстрока

      Search-домен.

    • domainNameServersмассив строк

      Список адресов рекурсивных DNS.

      Шаблон: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$

  • existingNetworkIDстрока

    ID существующей VPC Network.

  • kindстрока

    Обязательный параметр

    Допустимые значения: YandexClusterConfiguration

  • labelsобъект

    Лейблы, проставляемые на ресурсы, создаваемые в Yandex.Cloud.

    Если поменять лейблы в рабочем кластере, то после конвержа необходимо пересоздать все машины, чтобы теги применились.

  • layoutстрока

    Обязательный параметр

    Название схемы размещения.

    Подробнее о возможных схемах размещения провайдера.

    Допустимые значения: Standard, WithoutNAT, WithNATInstance

  • masterNodeGroupобъект

    Обязательный параметр

    Спецификация для описания NodeGroup master-узлов.

    • instanceClassобъект

      Обязательный параметр

      Частичное содержимое полей YandexInstanceClass.

      • additionalLabelsобъект

        Дополнительные label’ы, которые будут присвоены созданным инстансам.

        Пример:

        project: cms-production
        severity: critical
        
      • coreFractionцелочисленный

        Базовый уровень производительности каждого ядра CPU у создаваемых инстансов. Подробнее…

        По умолчанию: 100

        Допустимые значения: 0, 5, 20, 50, 100

        Пример:

        coreFraction: 20
        
      • coresцелочисленный

        Обязательный параметр

        Количество ядер у создаваемых инстансов.

      • diskSizeGBцелочисленный

        Размер диска (в гигабайтах) у инстансов.

        По умолчанию: 50

        Пример:

        diskSizeGB: 20
        
      • externalIPAddressesмассив строк

        Список внешних адресов. Количество элементов массива должно соответствовать replicas.

        При отсутствии опции externalSubnetID нужно использовать или зарезервированные публичные IP адреса или константу Auto.

        При наличии опции externalSubnetID необходимо выбрать конкретные свободные IP из указанной подсети.

        Шаблон: ^([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})|(Auto)$

      • externalSubnetIDстрока

        При указании данной опции к узлу будет подключен дополнительный сетевой интерфейс, в который будет идти маршрут по умолчанию.

      • externalSubnetIDsмассив строк

        При указании данной опции к узлу будет подключен дополнительный сетевой интерфейс, в который будет идти маршрут по умолчанию.

        Также будет добавлен маршрут для internal-интерфейса узла на всю подсеть, указанную в nodeNetworkCIDR.

        Количество элементов массива должно соответствовать replicas.

      • imageIDстрока

        Обязательный параметр

        Идентификатор образа, который будет установлен в заказанные инстансы.

        Пример:

        imageID: fd8nb7ecsbvj76dfaa8b
        
      • memoryцелочисленный

        Обязательный параметр

        Количество оперативной памяти (в мегабайтах) у создаваемых инстансов.

        Пример:

        memory: 8192
        
      • networkTypeстрока

        Тип сети.

        По умолчанию: "Standard"

        Допустимые значения: Standard, SoftwareAccelerated

      • platformстрока

        Платформа виртуальной машины. По умолчанию ‘standard-v2’.

    • replicasцелочисленный

      Обязательный параметр

      Сколько master-узлов создавать.

      Допустимые значения: 1 <= X

    • zonesмассив

      Необязательный параметр.

      Список зон, в которых допустимо создавать узлы.

      Допустимые значения элемента массива: ru-central1-a, ru-central1-b, ru-central1-c

  • nodeGroupsмассив объектов

    Массив дополнительных NodeGroup для создания статичных узлов (например, для выделенных frontend-узлов или шлюзов).

    • instanceClassобъект

      Обязательный параметр

      Частичное содержимое полей YandexInstanceClass.

      • additionalLabelsобъект

        Дополнительные label’ы, которые будут присвоены созданным инстансам.

        Пример:

        project: cms-production
        severity: critical
        
      • coreFractionцелочисленный

        Базовый уровень производительности каждого ядра CPU у создаваемых инстансов. Подробнее…

        По умолчанию: 100

        Допустимые значения: 0, 5, 20, 50, 100

        Пример:

        coreFraction: 20
        
      • coresцелочисленный

        Обязательный параметр

        Количество ядер у создаваемых инстансов.

      • diskSizeGBцелочисленный

        Размер диска (в гигабайтах) у инстансов.

        По умолчанию: 50

        Пример:

        diskSizeGB: 20
        
      • externalIPAddressesмассив строк

        Список внешних адресов. Количество элементов массива должно соответствовать replicas.

        При отсутствии опции externalSubnetID нужно использовать или зарезервированные публичные IP адреса или константу Auto.

        При наличии опции externalSubnetID необходимо выбрать конкретные свободные IP из указанной подсети.

        Шаблон: ^([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})|(Auto)$

      • externalSubnetIDстрока

        При указании данной опции к узлу будет подключен дополнительный сетевой интерфейс, в который будет идти маршрут по умолчанию.

      • externalSubnetIDsмассив строк

        При указании данной опции к узлу будет подключен дополнительный сетевой интерфейс, в который будет идти маршрут по умолчанию.

        Также будет добавлен маршрут для internal-интерфейса узла на всю подсеть, указанную в nodeNetworkCIDR.

        Количество элементов массива должно соответствовать replicas.

      • imageIDстрока

        Обязательный параметр

        Идентификатор образа, который будет установлен в заказанные инстансы.

        Пример:

        imageID: fd8nb7ecsbvj76dfaa8b
        
      • memoryцелочисленный

        Обязательный параметр

        Количество оперативной памяти (в мегабайтах) у создаваемых инстансов.

        Пример:

        memory: 8192
        
      • networkTypeстрока

        Тип сети.

        По умолчанию: "Standard"

        Допустимые значения: Standard, SoftwareAccelerated

      • platformстрока

        Платформа виртуальной машины. По умолчанию ‘standard-v2’.

    • nameстрока

      Обязательный параметр

      Имя NodeGroup, будет использоваться для генерации имен узлов.

    • nodeTemplate

      Настройки Node-объектов в Kubernetes, которые будут добавлены после регистрации узла.

      • annotationsобъект

        Аналогично стандартному полю metadata.annotations.

        Пример:

        annotations:
          ai.fleet.com/discombobulate: "true"
        
      • labelsобъект

        Список лейблов, которые будут прикреплены ко всем ресурсам кластера (которые это поддерживают).

        Аналогично стандартному полю metadata.labels.

        Если поменять теги в рабочем кластере, то после конвержа необходимо пересоздать все машины, чтобы теги применились.

        Формат — key: value.

        Пример:

        labels:
          environment: production
          app: warp-drive-ai
        
      • taintsмассив объектов

        Аналогично полю .spec.taints из объекта Node.

        Внимание! Доступны только поля effect, key, values.

        Пример:

        taints:
        - effect: NoExecute
          key: ship-class
          value: frigate
        
        • effectстрока

          Допустимые значения: NoSchedule, PreferNoSchedule, NoExecute

        • keyстрока
        • valueстрока
    • replicasцелочисленный

      Обязательный параметр

      Количество узлов.

    • zonesмассив

      Список зон, в которых допустимо создавать узлы.

      Допустимые значения элемента массива: ru-central1-a, ru-central1-b, ru-central1-c

  • nodeNetworkCIDRстрока

    Обязательный параметр

    Данная подсеть будет разделена на три равных части и использована для создания подсетей в трёх зонах Yandex.Cloud.

    Шаблон: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}$

  • providerобъект

    Обязательный параметр

    • cloudIDстрока

      Обязательный параметр

      Идентификатор облака.

    • folderIDстрока

      Обязательный параметр

      Идентификатор директории.

    • serviceAccountJSONстрока

      Обязательный параметр

      JSON, выдаваемый yc iam key create (отформатированный в одну строку).

  • sshPublicKeyстрока

    Обязательный параметр

    Публичный ключ для доступа на узлы.

  • withNATInstanceобъект

    Настройки для схемы размещения WithNATInstance.

    • externalSubnetIDстрока

      При указании данной опции к узлу будет подключен дополнительный сетевой интерфейс, в который будет идти маршрут по умолчанию.

    • internalSubnetIDстрока

      ID подсети для внутреннего интерфейса.

    • natInstanceExternalAddressстрока

      Внешний зарезервированный IP адрес или адрес из externalSubnetID при указании опции.

      Шаблон: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$

    • natInstanceInternalAddressстрока

      Лучше не использовать эту опцию, а использовать автоматически назначаемые адреса.

      Шаблон: ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$

  • zonesмассив

    Глобальное ограничение набора зон, с которыми работает данный cloud-provider.

    Допустимые значения элемента массива: ru-central1-a, ru-central1-b, ru-central1-c