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

v1alpha3

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

1. Infrastructure [config.nova-platform.io/v1alpha3]

Описание

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

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

Параметр Тип Описание

apiVersion

String

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

kind

String

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

metadata

Kubernetes meta/v1.ObjectMeta

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

spec

InfrastructureSpec

customerID

String

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

licenseKey

String

(Опционально)

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

version

String

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

spec.clusterName

String

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

coreServer

String

(Опционально)

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

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

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

bootstrap

Bootstrap

(Опционально)

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

infrastructureProvider

InfrastructureProvider

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

caTrustBundle

String

(Опционально)

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

hostGroups

[]HostGroupReference

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

clusterNodes

ClusterNodes

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

clusterConfiguration

clusterConfiguration

(Опционально)

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

1.1.1. InfrastructureSpec

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

InfrastructureSpec определяет желаемую конфигурацию компонентов платформы Nova Container Platform.

Параметр Тип Описание

customerID

String

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

licenseKey

String

(Опционально)

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

version

String

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

coreServer

String

(Опционально)

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

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

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

bootstrap

Bootstrap

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

infrastructureProvider

InfrastructureProvider

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

caTrustBundle

String

(Опционально)

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

hostGroups

[]HostGroupReference

(Опционально)

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

clusterConfiguration

clusterConfiguration

(Опционально)

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

clusterNodes

ClusterNodes

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

1.1.2. Bootstrap

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

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

Параметр Тип Описание

deploymentType

String

(Опционально)

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

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

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

hubRegistryURL

String

(Опционально)

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

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

hubToken

String

(Опционально)

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

hubUsername

String

(Опционально)

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

repoToken

String

(Опционально)

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

repoURL

String

(Опционально)

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

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

rpmRepoURL

String

(Опционально)

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

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

1.1.3. ClusterConfiguration

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

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

Параметр Тип Описание

dnsBaseDomain

String

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

k8sDefaultDnsZone

String

(Опционально)

Корневой DNS-домен кластера Kubernetes.

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

k8sAPIDefaultFqdn

String

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

cniProvider.

String

(Опционально)

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

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

extraOptions

ClusterExtraOptions

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

1.1.4. ClusterExtraOptions

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

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

Параметр Тип Описание

dns

ClusterExtraOptionsDNS

(Опционально)

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

ingressTLSConfig

ClusterExtraOptionsIngressTLSConfig

(Опционально)

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

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

kubePodSubnet

String

(Опционально)

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

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

kubeServiceAddresses

String

(Опционально)

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

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

kubeNetworkNodePrefix

Int

(Опционально)

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

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

k8sAPIAdditionalSANs

[]

(Опционально)

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

1.1.5. ClusterExtraOptionsIngressTLSConfig

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

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

Параметр Тип Описание

internalCA

-

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

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

externalCA

ClusterExtraOptionsIngressTLSConfigExternalCA

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

1.1.6. ClusterExtraOptionsIngressTLSConfigExternalCA

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

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

Параметр Тип Описание

tlsConfig

ClusterExtraOptionsIngressTLSConfigExternalCATlsConfig

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

1.1.7. ClusterExtraOptionsIngressTLSConfigExternalCATlsConfig

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

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

Параметр Тип Описание

ca

String

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

cert

String

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

key

String

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

1.1.8. ClusterExtraOptionsDNS

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

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

Параметр Тип Описание

customerDns

ClusterExtraOptionsCustomerDNS

(Опционально)

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

1.1.9. ClusterExtraOptionsCustomerDNS

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

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

Параметр Тип Описание

enable

Boolean

(Опционально)

Определяет необходимость использования блока конфигурации пользовательской службы DNS на этапе развертывания кластера Kubernetes.

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

servers

[]

(Опционально)

Список пользовательских DNS-серверов, в которые будут по умолчанию направляться все запросы.

forwardZones

[]CustomerDNSForwardZone

(Опционально)

Список пользовательских DNS-зон и их авторитетных DNS-серверов, которые обслуживаются сервисом CoreDNS в кластере Kubernetes.

1.1.10. ClusterNodes

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

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

Параметр Тип Описание

master

[]ClusterNodeReference

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

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

infra

[]ClusterNodeReference

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

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

worker

[]ClusterNodeReference

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

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

ingress

[]ClusterNodeReference

(Опционально)

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

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

1.1.11. ClusterNodeReference

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

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

Параметр Тип Описание

networkSpec

NetworkSpec

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

hostgroup

String

(Опционально)

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

Если имя группы узлов указано, то к данному узлу также применятся настройки, указанные в спецификации HostGroupReference [1].

state

String

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

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

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

1.1.12. CustomerDNSForwardZone

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

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

Параметр Тип Описание

name

String

(Опционально)

DNS-имя зоны.

server

String

(Опционально)

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

1.1.13. HostGroupReference

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

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

Параметр Тип Описание

name

String

(Опционально)

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

additionalLabels [2]

[]LabelsReference

(Опционально)

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

additionalAnnotations [3]

[]AnnotationsReference

(Опционально)

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

additionalTaints [4]

[]TaintsReference

(Опционально)

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

1.1.14. NetworkSpec

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

В блоке NetworkSpec указываются имя и сетевые параметры узла кластера Kubernetes. При развертывании кластеров методом IPI данные настройки применяются автоматически в ОС узлов, используя функционал провайдера инфраструктуры.

Параметр Тип Описание

hostname

String

Полное имя узла (FQDN).

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

ip

String

IPv4-адрес узла кластера Kubernetes.

netmask

String

Маска подсети.

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

gateway

String

Маска подсети.

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

dns

[]String

Список устанавливаемых DNS-серверов.

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

1.1.15. InfrastructureProvider

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

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

Параметр Тип Описание

none

map[]

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

vsphere

VSphere

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

zvirt

ZVirt

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

1.1.16. VSphere

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

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

Параметр Тип Описание

auth

VSphereAuth

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

cluster

String

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

datacenter

String

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

template

String

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

datastore

String

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

useLinkedClone

Bool

(Опционально)

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

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

vmFolder

String

(Опционально)

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

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

network

String

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

hostGroup

VSphereHostGroupReference

(Опционально)

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

1.1.17. VSphereAuth

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

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

Параметр Тип Описание

vcenterServer

String

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

vcenterServerPort

String

(Опционально)

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

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

tlsCaBundle

String

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

username

String

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

password

String

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

1.1.18. VSphereHostGroupReference

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

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

Параметр Тип Описание

name

String

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

template

String

(Опционально)

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

network

String

(Опционально)

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

datastore

String

(Опционально)

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

cpuSockets

String

(Опционально)

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

cpuCores

String

(Опционально)

Количество ядер 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

(Опционально)

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

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

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

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

diskEagerlyScrub

Boolean

(Опционально)

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

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

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

1.1.19. ZVirt

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

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

Параметр Тип Описание

auth

ZVirtAuth

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

clusterId

String

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

templateId

String

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

csiStorageDomainName

String

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

vnicProfileId

String

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

hostGroup

ZVirtHostGroupReference

(Опционально)

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

1.1.20. ZVirtAuth

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

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

Параметр Тип Описание

apiUrl

String

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

username

String

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

password

String

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

tlsCaBundle

String

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

1.1.21. ZVirtHostGroupReference

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

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

Параметр Тип Описание

name

String

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

templateId

String

(Опционально)

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

vnicProfileId

String

(Опционально)

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

cpuCores

String

(Опционально)

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

cpuSockets

String

(Опционально)

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

cpuThreads

String

(Опционально)

Количество потоков 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.


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