YandexClusterConfiguration

Version: deckhouse.io/v1

  • apiVersionстрока

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

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

  • dhcpOptionsобъект

    Список 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.

  • existingZoneToSubnetIDMapобъект

    Одна или несколько ранее существовавших подсетей, сопоставленных с соответствующей зоной.

    ru-central1-a: e2lu8r1tbbtryhdpa9ro
    ru-central1-b: e2lu8r1tbbtryhdpa9ro
    ru-central1-c: e2lu8r1tbbtryhdpa9ro
    

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

  • kindстрока

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

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

  • labelsобъект

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

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

  • layoutстрока

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

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

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

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

  • masterNodeGroupобъект

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

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

    • instanceClassобъект

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

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

      • additionalLabelsобъект

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

        Пример:

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

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

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

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

        Пример:

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

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

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

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

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

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

        Пример:

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

        Список внешних IP-адресов. Количество элементов массива должно соответствовать 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строка

        Платформа виртуальной машины.

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

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

      Количество создаваемых master-узлов.

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

    • zonesмассив

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

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

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

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

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

    • instanceClassобъект

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

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

      • additionalLabelsобъект

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

        Пример:

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

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

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

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

        Пример:

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

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

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

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

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

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

        Пример:

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

        Список внешних IP-адресов. Количество элементов массива должно соответствовать 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строка

        Платформа виртуальной машины.

    • nameстрока

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

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

    • nodeTemplate

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

      • annotationsобъект

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

        Пример:

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

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

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

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

        Пример:

        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.

  • 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