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

v1alpha7

Данный раздел содержит справочную информацию по спецификации API в Nova Container Platform.

1. infrastructure [config.nova-platform.io/v1alpha7]

Объект infrastructure содержит конфигурацию всех доступных параметров настройки кластера Nova Container Platform. Объект является единственным в кластере и имеет каноническое имя cluster.

Параметр Тип Обязательный Описание

apiVersion

String

Да

Имеет значение config.nova-platform.io/v1alpha7

kind

String

Да

Имеет значение Infrastructure

metadata

Kubernetes meta/v1.ObjectMeta

Да

Дополнительную информацию по параметру metadata в Kubernetes API можно найти в официальной документации.

spec

Да

Спецификация

2. Спецификация (infrastructure.spec)

Далее представлены параметры поля spec и их описания.

Параметр Тип Обязательный Условия валидации Описание

customerID

String

Да

Идентификатор клиента для установки платформы. Поставляется вместе с лицензией на платформу.

licenseKey

String

  • Да, для онлайн установок

  • Нет, для оффлайн установок

Минимальная длина: 1 символ

Лицензионный ключ для установки платформы. Требуется только для онлайн-установки платформы.

version

String

Да

Должна начинаться с 'v'

Версия Nova Container Platform для установки.

clusterName

String

Нет

Минимальная длина: 1 символ

Название кластера Nova Container Platform.

coreServer

String

Нет

Должно быть доменное имя или IPv4 адрес.

Значение по умолчанию: sun.nova-platform.io.

Адрес сервиса настройки ПО Nova Container Platform.

При установке платформы в закрытом сетевом окружении используется адрес сервиса настройки ПО, запущенного в Nova Universe.

caTrustBundle

String

Нет

Блок конфигурации цепочки TLS-сертификатов, которым необходимо доверять внутри кластера Kubernetes. Передается в виде строки с данными, закодированными в base64.

bootstrap

Да

Если deploymentType: offline, то обязательно в bootstrap должны быть указаны параметры:

  • deploymentType

  • hubRegistryURL

  • hubToken

  • hubUsername

  • repoToken

  • repoURL

  • rpmRepoURL

Блок конфигурации, описывающий тип установки (онлайн или офлайн), а также параметры офлайн-репозиториев. По умолчанию выполняется онлайн-установка платформы.

infrastructureProvider

Да

Должен быть выбран один из провайдеров:

  • zvirt

  • vsphere

  • k2cloud

  • none

Блок конфигурации параметров провайдера инфраструктуры для установки платформы.

hostGroups

  • Да, для IPI-установок.

  • Нет, для UPI-установок

Блок конфигурации групп узлов платформы.

clusterNodes

Да

Проверка узлов на уникальность в пределах группы:

  • Выполняется проверка, что внутри каждой группы узлов (clusterNodes.<group>) нет дублирующихся IP-адресов и нет дублирующих hostname

Проверка узлов на пересечения ip-адресов между группами:

  • master-узлы могут иметь уникальные ip-адреса и hostname, и эти адреса не должны быть в других группах.

  • для infra-узлов нельзя использовать IP и hostname, принадлежащие мастер-узлам.

  • для всех остальных групп (worker, ingress) нельзя использовать ip-адреса и hostname из master, infra.

Проверка узлов на корректность конфигурации узла:

  • один IP-адрес должен описывать один конкретный узел во всем кластере. Если ip-адрес и hostname указан в другой конфигурации, то будет ошибка.

Блок конфигурации узлов кластера Kubernetes.

clusterConfiguration

Да

Блок конфигурации параметров кластера Kubernetes.

2.1. spec.bootstrap

(Используется в: spec)

Объект bootstrap определяет конфигурацию метода установки платформы Nova Container Platform.

Параметр Тип Обязательный Условия валидации Описание

deploymentType

String

Нет

Допустимые значения: online, offline. По умолчанию, используется значение online.

Метод развертывания платформы Nova Container Platform.

hubRegistryURL

String

  • Да, при deploymentType: offline

  • Нет, при deploymentType: online

Значение по умолчанию: hub.nova-platform.io/registry

Адрес хранилища образов контейнеров. Используется для переопределения адреса хранилища образов при офлайн-установке платформы.

hubToken

String

  • Да, при deploymentType: offline

  • Нет, при deploymentType: online

Токен (либо пароль) для доступа к хранилищу образов контейнеров.

hubUsername

String

  • Да, при deploymentType: offline

  • Нет, при deploymentType: online

Имя учетной записи для доступа к хранилищу образов контейнеров.

repoToken

String

  • Да, при deploymentType: offline

  • Нет, при deploymentType: online

Токен для доступа к Git-репозиторию для установки модулей платформы.

repoURL

String

  • Да, при deploymentType: offline

  • Нет, при deploymentType: online

Значение по умолчанию: https://code.nova-platform.io/releases/modules/base.git

Адрес Git-репозитория с конфигурациями модулей платформы. Используется для переопределения адреса Git-репозитория при офлайн-установке платформы.

rpmRepoURL

String

Да, при deploymentType: offline

Значение по умолчанию: https://storage.cloud.croc.ru/downloads-nova-platform-io

HTTP URL репозитория пакетов, необходимых для установки платформы. Используется для переопределения репозитория при офлайн-установке платформы.

2.2. spec.clusterConfiguration

(Используется в: spec)

Блок конфигурации параметров кластера Kubernetes платформы Nova Container Platform.

Параметр Тип Обязательно Условия валидации Описание

k8sDefaultDnsZone

String

Да

Корневой домен кластера. Значение по умолчанию cluster.local

k8sAPIDefaultFqdn

String

Нет

FQDN для доступа к Kubernetes API.

При наличии данного параметра, в ходе установки(развертывания) будет предпринята попытка разрешения данного имени. При успешной попытке, дальнейшая проверка состояния API будет осуществляться по FQDN, при неудачной попытке разрешить имя, проверка API будет производиться с использованием IP-адреса 1го мастер-узла.

cniProvider

String

Нет

Enum, возможные значения:

  • calico

  • cilium

Сетевой плагин кластера Kubernetes.

dnsBaseDomain

String

Да

Базовый DNS-домен для настройки и публикации служебных веб-сервисов через Ingress-контроллер.

extraOptions

Да

Блок конфигурации дополнительных параметров кластера Kubernetes платформы Nova Container Platform.

2.2.1. spec.clusterConfiguration.extraOptions

(Используется в: spec.clusterConfiguration)

Блок конфигурации дополнительных параметров кластера Kubernetes платформы Nova Container Platform.

Параметр Тип Обязательный Условия валидации Описание

kubePodSubnet

String

Да

Должно соответствовать:

  • IP-адрес/маска_подсети в форматеx.x.x.x/y, где:

    • x = число от 0 до 255

    • y = число от 0 до 32

Значение по умолчанию: 10.233.64.0/18.

Блок IP-адресов, из которого выделяются IP-адреса для подов Kubernetes (Pod). Возможно указать только один пул IP-адресов. Этот блок не должен пересекаться с существующими физическими сетями. Данные IP-адреса используются для сети подов (Pod Network).

kubeServiceAddresses

String

Да

Должно соответствовать:

  • IP-адрес/маска_подсети в форматеx.x.x.x/y, где:

    • x = число от 0 до 255

    • y = число от 0 до 32

Значение по умолчанию: 10.233.0.0/18.

Блок IP-адресов для сервисной сети Kubernetes (Service Network). Возможно указать только один блок IP-адресов. Этот блок не должен пересекаться с существующими физическими сетями.

kubeNetworkNodePrefix

Int

Нет

Значение по умолчанию: 24.

Префикс сети kubePodSubnet, выделяемый каждому узлу кластера Kubernetes.

k8sAPIAdditionalSANs

[]

Нет

Должно соответствовать:

  • IPv4Address (например, "192.168.1.1")

  • Либо AnyHttpUrl ( (например, "example.com")

Список дополнительных DNS-имен и IP-адресов (Subject Alternative Name) Kubernetes API, который добавляется в поле subjectAltName TLS-сертификата.

dns

Нет

Блок конфигурации параметров DNS.

ingressTLSConfig

Нет

Конфигурация PKI для выпуска TLS-сертификатов Ingress-ресурсов.

По умолчанию используется самоподписанный внутренний СА.

2.2.1.1. spec.clusterConfiguration.extraOptions.extraOptions.dns

(Используется в: spec.clusterConfiguration.extraOptions)

Блок конфигурации параметров DNS.

Параметр Тип Обязательный Условия валидации Описание

customerDns

Object

Нет

Параметры пользовательской службы DNS

customerDns.enable

Boolean

Да

Включение/выключение клиентского dns сервера.

customerDns.servers

Array of strings

Да

Должно соответствовать:

  • IPv4Address (например, "192.168.1.1")

Список клиентских dns серверов, которые будут использоваться в кластере

forwardZones

Array of Object

Да

Делегированные dns зоны

forwardZones.zones

Object

Да

Конфигурация делегированной dns зоны

forwardZones.zones.name

String

Да

DNS-имя зоны

forwardZones.zones.server

String

Да

Должно соответствовать IPv4Address (например, "192.168.1.1")

Авторитетный сервер DNS-зоны.

2.2.1.2. spec.clusterConfiguration.extraOptions.ingressTLSConfig

(Используется в: spec.clusterConfiguration.extraOptions)

Блок конфигурации PKI для выпуска TLS-сертификатов Ingress-ресурсов в Nova Container Platform.

Параметр Тип Обязательно Условия валидации Описание

internalCA

Object

Нет

Должно быть задано одно из двух полей:

  • internalCA

  • externalCA

Значение по умолчанию:
{}.

Конфигурация службы PKI для выпуска и обслуживания TLS-сертификатов с использованием внутреннего самоподписанного СА. Опции конфигурации не предусмотрены.

externalCA

Object

Нет

Должно быть задано одно из двух полей:

  • internalCA

  • externalCA

Конфигурация службы PKI для выпуска и обслуживания TLS-сертификатов с использованием собственного СА-сертификата.

externalCA.tlsConfig

Object

Да, если есть externalCA

Конфигурация цепочки TLS-сертификатов и приватного ключа при использовании внешнего центра сертификации.

externalCA.tlsConfig.ca

String

Да, если есть externalCA

Должен удовлетворять:

  • tlsConfig.cert подписан данным tlsConfig.ca

  • оба содержат расширение Basic Constraints, CA=True, pathlen=0

Корневой СА-сертификат. Передается в виде строки с данными, закодированными в base64.

externalCA.tlsConfig.cert

String

Да, если есть externalCA

Должен удовлетворять:

  • Не истек срок

  • Срок действия ≥ 2 года от текущей даты

Промежуточный СА-сертификат, который выписан корневым. Передается в виде строки с данными, закодированными в base64.

externalCA.tlsConfig.key

String

Да, если есть externalCA

Должен удовлетворять:

  • Приватный ключ в формате PEM

  • Зашифрован

Приватный ключ для промежуточного СА-сертификата. Приватный ключ должен быть зашифрован. Передается в виде строки с данными, закодированными в base64.

2.3. spec.clusterNodes

(Используется в: spec)

Блок конфигурации узлов кластера Kubernetes платформы Nova Container Platform. Используется для определения роли узла в кластере Kubernetes, имен и параметров сетевых интерфейсов узлов, настроек DNS, а также для привязки узла кластера к какой-либо определенной группе узлов.

Параметр Тип Обязательно Условия валидации Описание

master

Да

Допустимы только 1 или 3 узла в состоянии present.

Определяет набор и параметры мастер-узлов Kubernetes.

infra

Да

Допустимое количество инфраструктурных узлов и, соответственно, спецификаций ClusterNodeReference составляет от 1 и более в состоянии present.

Определяет набор и параметры инфраструктурных узлов Kubernetes.

worker

Да

Допустимое количество worker узлов и, соответственно, спецификаций ClusterNodeReference составляет от 1 и более в состоянии present.

Определяет набор и параметры рабочих узлов Kubernetes.

ingress

Нет

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

Определяет набор и параметры рабочих узлов Kubernetes для балансировки входящих запросов.

2.3.1. ClusterNodeReference

(Используется в: ClusterNodes)

В блоке ClusterNodesReference указываются такие параметры узлов, как группа узлов, настройки сетевых интерфейсов, системы разрешения имен DNS, а также желаемое состояние узла в кластере Kubernetes.

Параметр Тип Обязательно Условия валидации Описание

hostgroup

String

  • Да, для IPI-установок.

  • Нет, для UPI-установок

Определяет группу узлов, к которой относится узел кластера Kubernetes.

state

String

Да

Enum, возможные значения:

  • Present. При установке значения present узел будет добавлен в кластер Kubernetes.

  • Absent. При установке значения absent узел будет удален из кластера Kubernetes.

Желаемое состояние узла в кластере Kubernetes.

networkSpec

Да

Сетевые параметры узла кластера Kubernetes.

networkSpec.ip

String

  • Провайдеры k2cloud, zVirt: по умолчанию IP автоматически назначается через DHCP (не заполнять параметр) или возможно ручное присвоение (заполнять).

  • Другие провайдеры: обязателен, только ручное присвоение IP.

Должно соответствовать:

  • IPv4Address (например, "192.168.1.1")

Ipv4 адрес узла.

networkSpec.hostname

String

Да

Полное имя узла (FQDN). Имя узла в кластере должно быть уникальным.

networkSpec.gateway

String

Нет, не указвается при установке в k2cloud, для остальных провайдеров указывается

Должно соответствовать: список IPv4Address (например, "192.168.1.1")

Ipv4 адрес шлюза по умолчанию. Указывается только при развертывании кластера методом IPI.

networkSpec.netmask

String

Нет, не указвается при установке в k2cloud, для остальных провайдеров указывается

Должно соответствовать: список IPv4Address (например, "192.168.1.1")

Маска подсети. Указывается только при развертывании кластера методом IPI.

networkSpec.dns

Array of string

Нет, не указвается при установке в k2cloud, для остальных провайдеров указывается

Должно соответствовать: список IPv4Address (например, "192.168.1.1")

Список DNS серверов. Указывается только при развертывании кластера методом IPI.

2.3.2. HostGroupReference

(Используется в: spec)

В блоке HostGroupReference указываются параметры узлов в контексте кластера Kubernetes в формате "ключ-значение".

Параметр Тип Обязательно Описание

name

String

Нет

Имя группы узлов.

additionalLabels [1]


1. Данный функционал в настоящее время находится в активной разработке.

Нет

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

additionalAnnotations [2]


2. Данный функционал в настоящее время находится в активной разработке.

Нет

Список дополнительных аннотаций Annotations для узлов кластера Kubernetes.

additionalTaints [3]


3. Данный функционал в настоящее время находится в активной разработке.

Нет

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

2.4. spec.infrastructureProvider

(Используется в: spec)

Блок spec.infrastructureProvider определяет параметры установки платформы Nova Container Platform при использовании провайдера инфраструктуры.

Параметр Тип Обязательно Условия валидации Описание

none

map[]

Да

В объекте clusterNodes должны отсутствовать поля:

  • networkSpec.gateway

  • networkSpec.netmask

  • networkSpec.dns

Метод развертывания платформы Nova Container Platform без взаимодействия с провайдером инфраструктуры. Для использования данного метода установки необходимо оставить пустое значение параметра none, например none: {}.

vsphere

Да

Условия валидации приведены для каждого поля данного объекта ниже

Метод развертывания платформы Nova Container Platform в среде виртуализации VMware vSphere.

zvirt

Да

Условия валидации приведены для каждого поля данного объекта ниже

Метод развертывания платформы Nova Container Platform в среде виртуализации zVirt.

k2cloud

K2Cloud

Да

Условия валидации приведены для каждого поля данного объекта ниже

Метод развертывания платформы Nova Container Platform в среде k2cloud.

2.4.1. spec.infrastructureProvider.vsphere

(Используется в: spec.infrastructureProvider)

Блок vsphere определяет параметры установки платформы Nova Container Platform в среде виртуализации VMware vSphere.

Параметр Тип Обязательно Условия валидации Описание

auth

Да

Блок конфигурации параметров учетной записи и подключения к управляющему узлу платформы vSphere.

cluster

String

Да

Имя кластера vSphere.

datacenter

String

Да

Имя датацентра vSphere.

template

String

Нет

Если не задано, то определяется на уровне vsphere.hostGroup.template. Если нигде не задано, то ошибка

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

datastore

String

Нет

Если не задано, то определяется на уровне vsphere.hostGroup.datastore. Если нигде не задано, то ошибка

Имя хранилища для ВМ по умолчанию. Может быть переопределено на уровне группы узлов, в случае если для групп узлов предполагается использовать разные хранилища.

useLinkedClone

Boolean

Да

Значение по умолчанию: false

Использовать ли Linked Clone при создании ВМ. При значении true размер диска ВМ будет установлен равным размеру диска в шаблоне.

vmFolder

String

Нет

Значение по умолчанию: <vsphere.datacenter.id>/vm/nova-<ClusterID>

Имя папки, где будут размещены все созданные ВМ. Внутри данной папки будет создана подпапка с названием nova-<ClusterID>. Если параметр не указывается, то в корневой директории будет создана папка с названием nova-<ClusterID>.

network

String

Нет

Если не задано, то определяется на уровне vsphere.hostGroup.network. Если нигде не задано, то ошибка

Имя сети, в которой будут разворачиваться ВМ.

hostGroup

Да

Конфигурация параметров среды vSphere для групп узлов.

2.4.1.1. spec.infrastructureProvider.vsphere.auth

(Используется в: spec.infrastructureProvider.vsphere)

Блок vsphere.auth определяет параметры учетной записи и подключения к управляющему узлу VMware vCenter Server.

Параметр Тип Обязательно Описание

vcenterServer

String

Да

Полное доменное имя или IP-адрес сервера vCenter Server.

vcenterServerPort

Int

Нет

Порт для подключения к vCenter Server.

tlsCaBundle

String

Да

Цепочка корневых TLS-сертификатов для подключения к API-интерфейсу vCenter Server. Передается в виде строки с данными, закодированными в base64.

username

String

Да

Учетная запись для доступа к vCenter Server.

password

String

Да

Пароль учетной записи для доступа к vCenter Server.

2.4.1.2. spec.infrastructureProvider.vsphere.hostGroup

(Используется в: spec.infrastructureProvider.vsphere)

В блоке vsphere.hostGroup списком перечисляются словари с группами узлов и их параметрами в контексте платформы vSphere в формате "ключ-значение".

Параметр Тип Обязательно Условия валидации Описание

name

String

Да

Имя группы узлов. Должно быть указано имя группы узлов, которая определена в блоке конфигурации HostGroupReference.

template

String

Нет

Если не задано, то определяется глобально на уровне vsphere.template. Если нигде не задано, то ошибка

Имя шаблона ВМ для развертывания виртуальных машин данной группы.

network

String

Нет

Если не задано, то определяется глобально на уровне vsphere.network. Если нигде не задано, то ошибка

Имя сети, в которой будут разворачиваться ВМ данной группы.

datastore

String

Нет

Если не задано, то определяется глобально на уровне vsphere.datastore. Если нигде не задано, то ошибка

Имя хранилища для ВМ данной группы.

cpuSockets

Int

Нет

Количество сокетов CPU, выделяемых каждой ВМ в группе узлов в среде vSphere.

cpuCores

Int

Да

Количество ядер CPU, выделяемых каждой ВМ в группе узлов в среде vsphere.

memory

String

Да

Количество ОЗУ, выделяемой каждой ВМ в группе узлов в среде vsphere.

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

xB, xKB, xMB, xGB, xTB, xPB, xKiB, xMiB, xGiB, xTiB, xPiB, где x - целочисленное значение. Например, 16 гибибайт указывается как16GiB, а 16 гигабайт - как 16GB.

diskSize

String

Да

Размер диска, выделяемого каждой ВМ в группе узлов в среде vSphere.

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

xB, xKB, xMB, xGB, xTB, xPB, xKiB, xMiB, xGiB, xTiB, xPiB, где x - целочисленное значение. Например, 16 гибибайт указывается как16GiB, а 16 гигабайт - как 16GB.

diskThinProvisioned

String

Нет

Enum, возможные значения:

  • inherit

  • false

Значение по умолчанию: inherit

Использовать ли тип Thin Provisioned для создаваемого диска.

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

При использовании значения inherit тип диска наследуется из шаблона ВМ. При использовании параметра false тип диска устанавливается как Thick Provisioned Lazy Zeroed.

diskEagerlyScrub

Boolean

Нет

Значение по умолчанию: false

Использовать тип Thick Provisioned Eager Zeroed для создаваемого диска.

Значение true можно установить только в случае, когда параметр diskThinProvisioned имеет значение false.

2.4.2. spec.infrastructureProvider.zvirt

(Используется в: spec.infrastructureProvider)

Блок zvirt определяет параметры установки платформы Nova Container Platform в среде виртуализации zVirt.

Параметр Тип Обязательно Условия валидации Описание

auth

Да

Блок конфигурации параметров учетной записи и подключения к управляющему узлу платформы виртуализации zVirt.

clusterId

String

Да

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

templateId

String

Нет

Если не задано, то определяется на уровне zvirt.hostGroup.templateId. Если нигде не задано, то ошибка.

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

csiStorageDomainName

String

Нет

Имя домена хранения среды zVirt, который используется CSI-драйвером кластера Kubernetes.

vnicProfileId

String

Нет

Если не задано, то определяется на уровне zvirt.hostGroup.vnicProfileId. Если нигде не задано, то ошибка.

Идентификатор профиля виртуального сетевого интерфейса (vNIC Profile) в среде zVirt. Может быть переопределен для уровне группы узлов, в случае если для групп узлов предполагается использовать разные профили виртуальных сетевых интерфейсов.

hostGroup

Да

Для каждой группы хостов собираются все параметры: глобальные или переопределенные на уровне группы.

  • templateId

  • vnicProfileId

  • cpuCores

  • cpuSockets

  • cpuThreads

  • memory

  • maximumMemory

  • guaranteedMemory

  • memoryBallooning

Валидация не пройдет, если в общей спецификации не указаны ни templateId, ни vnicProfileId.

Конфигурация параметров среды zVirt для групп узлов.

useLinkedClone

Boolean

Нет

При значении true ВМ клонируется из шаблона и не связывается с ним. В результате будет создана ВМ с клонированным диском.

2.4.2.1. spec.infrastructureProvider.zvirt.auth

(Используется в: spec.infrastructureProvider.zvirt)

Блок zvirt.auth определяет параметры учетной записи и подключения к управляющему узлу платформы виртуализации zVirt.

Параметр Тип Обязательно Условия валидации Описание

apiUrl

String

Да

HTTP URL для доступа к zVirt API.

username

String

Да

Должно соответствовать регулярному выражению: @[A-Za-z0-9_-] Пример:hw-robot@internalsso

Учетная запись для доступа к zVirt API.

password

String

Да

Пароль учетной записи для доступа к zVirt API.

tlsCaBundle

String

Нет

Цепочка корневых TLS-сертификатов для подключения к интерфейсу zVirt API. Передается в виде строки с данными, закодированными в base64.

2.4.2.2. spec.infrastructureProvider.zvirt.hostGroup

(Используется в: spec.infrastructureProvider.zvirt)

В блоке zvirt.hostGroup списком перечисляются словари с группами узлов и их параметрами в контексте платформы zVirt в формате "ключ-значение".

Параметр Тип Обязательно Описание

name

String

Да

Имя группы узлов. Должно быть указано имя группы узлов, которая определена в блоке конфигурации HostGroupReference.

templateId

String

Нет

Идентификатор шаблона ВМ для развертывания виртуальной машины.

vnicProfileId

String

Нет

Идентификатор профиля виртуального сетевого интерфейса (vNIC Profile) в среде zVirt.

cpuCores

Int

Да

Количество ядер CPU, выделяемых каждой ВМ в группе узлов в среде zVirt.

cpuSockets

Int

Да

Количество сокетов CPU, выделяемых каждой ВМ в группе узлов в среде zVirt.

cpuThreads

Int

Да

Количество потоков CPU на одно ядро из cpuCores, выделяемых каждой ВМ в группе узлов в среде zVirt.

memory

String

Нет

Количество ОЗУ, выделяемой каждой ВМ в группе узлов в среде zVirt.

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

xB, xKB, xMB, xGB, xTB, xPB, xKiB, xMiB, xGiB, xTiB, xPiB, где x - целочисленное значение. Например, 16 гибибайт ОЗУ указывается как16GiB, а 16 гигабайт - как 16GB.

maximumMemory

String

Нет

Максимальный объем ОЗУ, выделяемой каждой ВМ в группе узлов в среде zVirt, до порога которого доступен функционал Memory Hot-plug. В случае, если функционал Memory Hot-plug не требуется, то параметр maximumMemory можно указать равным параметру memory.

memoryBallooning

Boolean

Нет

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

guaranteedMemory

String

Нет

Фиксированный объем оперативной памяти, гарантированно выделяемый виртуальной машине без возможности изъятия гипервизором

2.4.3. spec.infrastructureProvider.k2cloud

(Используется в: spec.infrastructureProvider)

Метод K2Cloud определяет параметры установки платформы Nova Container Platform в среде виртуализации в K2Cloud.

Параметр Тип Обязательно Условия валидации Описание

auth

k2cloud.auth

Да

Блок конфигурации эндопинтов для взаимодействия с K2Cloud

publicKeyName

String

Да

Публичный ssh ключ

templateId

String

Нет

Если не задано, то определяется на уровне k2cloud.hostGroup.templateId. Если нигде не задано, то ошибка

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

hostGroup

Array of object k2cloud.hostGroup

Да

Конфигурация параметров среды K2Cloud для групп узлов.

2.4.3.1. spec.infrastructureProvider.k2cloud.auth

Блок k2cloud.auth определяет параметры учетной записи и подключения к сервисам k2cloud.

Параметр Тип Обязательно Условия валидации Описание

serviceEndpoints

Array of object

Да

Должен включать serviceEndpoint с name="ec2".

Подключение к сервисам k2cloud

spec.infrastructureProvider.k2cloud.auth.serviceEndpoints

Данный объект отвечает за параметры подключения к сервисам.

Должен включать serviceEndpoint с name="ec2", .

Параметр Тип Обязательно Описание

name

String

Да

Название сервиса

url

String

Да

Точка подключения

2.4.3.2. spec.infrastructureProvider.k2cloud.hostGroup

В таблице ниже указано описание параметров и настроек группы узлов:

Параметр Тип Обязательно Условия валидации Описание

name

String

Да

Имя группы узлов. Должно быть указано имя группы узлов, которая определена в блоке конфигурации HostGroupReference).

type

String

Да

Тип инстанса ВМ

metadata

map(string:string)

Нет

Ключ-значения произвольных метаданных. Используется для тегирования, фильтрации или передачи дополнительных параметров провайдеру.

subnetID

String

Да

Подсеть инстанса

rootVolume

Object

Да

Конфигурация диска ВМ

securityGroupIDs

Array of string

Да

Список существующих групп безопасности для интерфейсов ВМ

placementGroup

String

Нет

Группа размещения

templateId

String

Нет

Если не задано, то определяется глобально на уровне k2cloud.template. Если нигде не задано, то ошибка

Идентификатор шаблона ВМ для развертывания виртуальных машин.

2.4.3.3. spec.infrastructureProvider.k2cloud.hostGroup.rootVolume

Описание объекта представлено в таблице ниже:

Параметр Тип Обязательно Условия валидации Описание

iops

Int

Нет

Для type 'io2' поле должно быть заполнено:

  • допустимые значения размера диска соответствует 50 IOPS * rootVolume.size и выше

Количество операций ввода/вывода

size

String

Да

Допустимые значения: xG - целочисленное значение:

  • диск должен быть кратен 8 Гб

  • диск не менее менее 8 Гб

Размер диска, выделяемого каждой ВМ в группе узлов в среде K2Cloud.

type

String

Да

Enum, возможные значения:

  • io2

  • gp2

Тип диска