Требования

Инфраструктура, лицензия, зеркало, узлы.

Требования к закрытому контуру

ПараметрЗначение
Доступ к интернетуНа узлах кластера — нет; на хосте зеркала — нет (полностью закрытый контур) или есть (условно-закрытый контур)
ЗеркалоОбязательно; развёртывается до инсталляции кластера
Бандлtar-архив с образами и пакетами для версии платформы
ЛицензияТолько Enterprise. При спецсимволах в строке передавайте её в одинарных кавычках в команде запуска

Все узлы кластера и машина shtil должны иметь сетевой доступ к зеркалу (обычно TCP 443 или порт, заданный при инициализации зеркала).

Требования к квалификации администратора

Администратор должен обладать:

  • базовыми навыками администрирования Linux;
  • навыками работы с Kubernetes и процессами автоматизации управления контейнерными приложениями в кластерах.

Поддерживаемые провайдеры

  • Shturval v2 — bare metal / хосты по SSH
  • oVirt (в т.ч. zVirt, HostVM, РЕД Виртуализация, ROSA Virtualization)
  • VMware vSphere

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

Подробнее: Как устроена работа с провайдерами.

Требования к хосту зеркала

  • ОС: Linux. Утилиту stm необходимо запускать на хосте с ОС Linux.
  • Ресурсы: минимум 2 vCPU, 4 GiB RAM, 150 GiB диск; рекомендуется 4 vCPU, 16 GiB RAM, 300 GiB диск.
  • SELinux: permissive или disabled.
  • Порты Nginx (параметры http-port и https-port, по умолчанию 80 и 443): должны быть свободны.
  • Container runtime: на хосте не устанавливайте Docker вручную. Используйте Docker из состава бандла; работа с другим экземпляром контейнерного runtime не гарантируется.
  • Сертификат: при импорте — PEM (цепочка CA и сертификат), subjectAltName с FQDN зеркала, совпадающим с параметром --fqdn.

Ресурсы хоста зеркала

КонфигурацияCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Минимальная24150300
Рекомендуемая416300300

Требования к ресурсам

Кластер управления должен состоять как минимум из одного узла Control Plane. Для отказоустойчивости — как минимум из трёх Control Plane и трёх Worker.

При установке только на один Control Plane на узел ставятся только критичные сервисы; логирование, мониторинг и резервное копирование в такой конфигурации не устанавливаются.

Обратите внимание! Внимание: Кластер на одном Control Plane не рекомендуется для production. До 5 клиентских кластеров.

В лицензии заданы лимиты по Worker-узлам и vCPU; при превышении в интерфейсе отображается уведомление.

При загрузке свыше 80% рекомендуется добавлять узлы. Метрики хранятся 7 дней; логи ротируются по заполнению.

Ниже указаны требования только для запуска инсталляции и установки системных компонентов. Ресурсы для запускаемых нагрузок необходимо планировать дополнительно

Минимальная конфигурация (1 Control Plane узел)

Только для тестовых инсталляций

Таблица ресурсов и схема

Минимальная конфигурация кластера управления

КомпонентCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Зеркало (Registry)24150300
Control Plane узел6880600

Рекомендуемая конфигурация (1 CP + 3 Worker)

Не рекомендуется для production инсталляций

Таблица ресурсов
КомпонентCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Зеркало (Registry)24150300
Control Plane узел416100600
Worker-узел832*300**600

* При использовании кластера управления исключительно для управления клиентскими кластерами (без пользовательских нагрузок) — минимум 16 GiB. 32 GiB обеспечивают запас для мониторинга, логирования и резервного копирования.

** Минимум 100 GiB для системных компонентов; 300 GiB обеспечивают хранение метрик (7 дней) и ротируемых логов.

Отказоустойчивая конфигурация (3 CP + 3 Worker)

Таблица ресурсов
КомпонентCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Зеркало (Registry)416300300
Control Plane узел (×3)416100600
Worker-узел (×3)832*300**600

* При использовании кластера управления исключительно для управления клиентскими кластерами (без пользовательских нагрузок) — минимум 16 GiB. 32 GiB обеспечивают запас для мониторинга, логирования и резервного копирования.

** Минимум 100 GiB для системных компонентов; 300 GiB обеспечивают хранение метрик (7 дней) и ротируемых логов.

Stand-alone кластер (без клиентских кластеров)

Таблица ресурсов
КомпонентCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Зеркало (Registry)24150300
Control Plane (1 узел)6880600

Для stand-alone в закрытом периметре используйте строку Зеркало из минимальной конфигурации.

Подробнее о режиме: Режимы работы кластера управления.

Ресурсы машины shtil

Утилиту shtil необходимо запускать с хоста с ОС Linux. Минимум 3 vCPU, 3 GiB RAM, 20 GiB диск; Docker из состава бандла; сетевой доступ к зеркалу по HTTPS (порт по настройке зеркала, обычно 443). Если у зеркала самоподписной или корпоративный CA, настройте доверие к зеркалу на уровне демона Docker до запуска shtil: флаги --bootstrap-insecure и --bootstrap-registry-certs-dir не влияют на первичный docker pull. Проверки — на странице Подготовка.

Поддерживаемые операционные системы машины запуска shtil

Ниже приведен список поддерживаемых операционных систем машины запуска shtil. При необходимости воспользуйтесь фильтрами, что посмотреть рекомендуемые ОС для разных сценариев инсталляции. Рекомендации для открытого и закрытого окружений отличаются.

Операционная системаВерсияВерсия ядра
Astra Linux SE1.7.5, 1.86.1, 6.6
Debianbullseye5.10
Debianbookworm6.1.0
UbuntuNoble 24.046.8
РЕД ОС7.3.46.1
РЕД ОС86.6, 6.12
РОСАХром6.12
РОСАХром6.6
Alt Linux106.1
RHEL95.14
Rocky Linux95.14
SberLinux5.9.15.14

Требования к хостам и ОС

Поддерживаемые операционные системы узлов кластера

На всех узлах кластера должна использоваться одна и та же версия ядра ОС.

Операционная системаВерсияВерсия ядра
Astra Linux SE1.7, 1.7.5, 1.85.10, 5.15, 6.1, 6.6
DebianBullseye, Bookworm5.10, 6.1.0
UbuntuFocal 20.04, Jammy 22.04, Noble 24.045.10, 5.15, 6.8
РЕД ОСMurom, 7.3.4, 85.10, 5.15, 6.1, 6.6, 6.12
РОСАХром6.6, 6.12
Alt Linux106.1
ОСноваOnyx6.6
Oracle Linux8.75.15
RHEL95.14
Rocky Linux95.14
SberLinux5.9.15.14

Обязательные пакеты на узлах: openssh-server и зависимости, пакетный менеджер (yum или apt), sudo, iptables, gnupg.

Инфраструктура: физические серверы архитектуры x86 и/или виртуальные машины под управлением oVirt версии не ниже 4.4 и/или VMware vSphere (гипервизор не ниже 6.7 update 3).

Узлы кластера

  • Узлы должны резолвить FQDN зеркала и другие сетевые имена, используемые выбранным сценарием.
  • SELinux — режим permissive или disabled.
  • Недоступные репозитории пакетов ОС должны быть отключены или удалены.
  • Для Linux-пользователя, от имени которого выполняется установка (например, /home/shturval), должен быть создан домашний каталог.
  • Пользователь для установки должен иметь возможность выполнять sudo без пароля на всех целевых узлах.

Удалённый доступ по SSH при инсталляции на предварительно созданных хостах

На каждом сервере:

  1. Служба OpenSSH принимает подключения на порту TCP 22.
  2. Создана одинаковая на всех узлах сервисная учётная запись для установки.
  3. Настроена аутентификация по одинаковому публичному ключу на всех узлах.
  4. Для сервисной учётной записи разрешено выполнение sudo без пароля.

Локальное хранилище

В качестве локального хранилища используется RawFile Provisioner; ZFS не поддерживается. Допустимые файловые системы: ext4, btrfs, xfs.


Сетевые требования

Межсетевые экраны не должны блокировать необходимые соединения.

Основные порты

НазначениеПортПротокол
Ingress (HTTP/HTTPS)80, 443TCP
KubeAPI6443TCP
SSH (инсталляция)22TCP
Зеркало (Registry)443*TCP
etcd2379, 2380TCP
Cilium (CNI)4240, 6081TCP, UDP
S3 (Velero)9000TCP
LDAP389, 636TCP/UDP
Keycloak, Blitz80, 443TCP

* или порт, заданный при развёртывании зеркала.

LDAP и OIDC (Keycloak, Blitz): только внутри закрытого периметра.

S3 (Velero): только внутреннее S3-совместимое хранилище.

Правила адресации и доступа

  1. IP-адреса узлов не меняются в процессе эксплуатации кластера.
  2. Машина shtil и все узлы кластера должны иметь доступ к зеркалу по HTTPS (порт по настройке зеркала, обычно 443).
  3. Кластер управления должен иметь доступ к API используемых провайдеров инфраструктуры (oVirt Engine, vCenter и т.д. — по сценарию развёртывания).

Подсеть Control Plane и виртуальные IP (VIP)

IP-адреса узлов Control Plane должны принадлежать одной подсети и одному широковещательному сегменту. При использовании внутренних балансировщиков для KubeAPI и Ingress требуется по одному свободному VIP на каждый.

Если используются внешние балансировщики для KubeAPI и/или Ingress, выделение VIP не требуется. Требования и пример настройки внешнего балансировщика приведены ниже.

Дополнительные правила для внутренних VIP:

  1. VIP не должны быть настроены на интерфейсах узлов до установки.
  2. VIP для API-сервера должен принадлежать той же подсети, что и IP-адреса узлов Control Plane.
  3. VIP для Ingress используется на сетевом балансировщике нагрузки и должен быть доступен с рабочей станции администратора, если выбран сценарий с внутренним Ingress.
  4. Для кластера управления с одним Control Plane IP-адреса должны назначаться по возрастанию: сначала IP-адрес узла, затем VIP API-сервера, затем VIP Ingress.

Внешний балансировщик нагрузки

При развёртывании кластера с несколькими Control Plane узлами для KubeAPI требуется балансировщик нагрузки. Платформа может использовать встроенный (VIP через Kube-VIP) или внешний балансировщик.

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

Настройка внешнего балансировщика в кластере

Patch для внешнего LB

Требования:

  1. Балансировка выполняется на уровне L4 (TCP).
  2. Балансировщик должен поддерживать сохранение выбора узла по IP-адресу источника (sticky session / source IP affinity), например balance source в HAProxy.
  3. Внешний балансировщик для KubeAPI при установке кластера с провайдером Shturval v2 должен быть настроен до начала инсталляции кластера.

Пример настройки HAProxy (статическая конфигурация)

Пример статической конфигурации HAProxy

Ниже — пример конфигурации HAProxy для кластера с 3 Control Plane и 2 Worker узлами. Подставьте свои IP-адреса.

#---------------------------------------------------------------------
# myclustername cluster
#---------------------------------------------------------------------

frontend myclustername-api-server
    bind 10.11.12.100:6443
    default_backend myclustername-api-server
    mode tcp

backend myclustername-api-server
    balance source
    mode tcp
    server master1 10.11.13.1:6443 check
    server master2 10.11.13.2:6443 check
    server master3 10.11.13.3:6443 check

frontend myclustername-ingress-http
    bind 10.11.12.100:80
    default_backend myclustername-ingress-http
    mode tcp
    option tcplog

backend myclustername-ingress-http
    balance source
    mode tcp
    server worker1 10.11.13.4:80 check
    server worker2 10.11.13.5:80 check

frontend myclustername-ingress-https
    bind 10.11.12.100:443
    default_backend myclustername-ingress-https
    mode tcp
    option tcplog

backend myclustername-ingress-https
    balance source
    mode tcp
    server worker1 10.11.13.4:443 check
    server worker2 10.11.13.5:443 check

Расшифровка адресов:

АдресНазначение
10.11.12.100IP внешнего балансировщика (точка входа)
10.11.13.1–10.11.13.3Control Plane узлы (порт 6443)
10.11.13.4–10.11.13.5Worker узлы (порты 80, 443)

При использовании NodePort для Ingress укажите порты 30080 и 30443 вместо 80 и 443 на Worker-узлах.

Динамическое добавление бэкендов (CoreHA)

Модуль shturval-coreha позволяет HAProxy динамически получать список узлов с Ingress Controller через DNS. Это удобно при масштабировании или миграции подов.

Настройка CoreHA:

  1. Установите и включите Модуль поиска узлов с запущенными hostport сервисами (shturval-coreha) в разделе Сервисы и репозитории.
  2. Настройте параметры чарта, например:
    config:
      zoneName: cluster-prod01-dc1.shturval
    
  3. Примените ShturvalServicePatch к shturval-ingress-controller с лейблом ingress.cluster/name и включённым hostPort.
  4. В HAProxy используйте resolvers и server-template:
resolvers coredns-cluster
    nameserver ns1 <api-server-vip>:1053
    accepted_payload_size 8192

backend cluster-prod01-dc1-ingress-http
    balance source
    mode tcp
    server-template daemonset 2 <label_value>.ingress.<zoneName>:80 check resolvers coredns-cluster init-addr none

Где <api-server-vip> — адрес API-сервера кластера, <zoneName> — значение config.zoneName в shturval-coreha, <label_value> — значение лейбла ingress.cluster/name.

Проверка: dig @<api-server-vip> -p 1053 <label_value>.ingress.<zoneName>.

Порты и направления трафика

НазначениеПорт балансировщикаБэкенды
KubeAPI6443Control Plane узлы:6443
Ingress HTTP80Worker узлы:80 (или 30080 при NodePort)
Ingress HTTPS443Worker узлы:443 (или 30443 при NodePort)

При использовании CoreHA балансировщик подключается к DNS-серверу модуля на порту 1053 (VIP Control Plane) для динамического разрешения имён бэкендов.

По провайдерам

ПровайдерРекомендации
Shturval v2HAProxy, Keepalived или аналог. Балансировщик для KubeAPI — до начала инсталляции
oVirt, VMware vSphereМожет использоваться балансировщик на уровне платформы виртуализации

DNS и сетевые имена

  • Каждый узел кластера должен иметь уникальное сетевое имя.
  • Полное сетевое имя узла должно быть корректным DNS-именем не длиннее 63 символов.
  • Имя кластера должно быть уникальным в сочетании с DNS-зоной организации и образовывать корректный поддомен DNS.
  • В DNS должна быть создана зона; для каждого узла кластера должна быть создана запись типа A в этой зоне.
  • Для API-сервера кластера управления создаётся A-запись вида api.<cluster_name>.<base_domain>.
  • Для Ingress кластера управления создаётся wildcard-запись вида *.<cluster_name>.<base_domain>.
  • FQDN зеркала должен разрешаться в IP-адрес на машине shtil и на узлах кластера.

Firewall (межсетевые экраны) не должны блокировать сетевые соединения. Это требуется для поддержки взаимодействия между компонентами платформы.

В закрытом контуре внешние облачные API в матрицах не используются; вместо внешнего Registry — зеркало в вашем периметре.

Схемы межсетевого взаимодействия

Shturval v2 с внутренним балансировщиком для KubeAPI и внешним балансировщиком для Ingress и CoreHA для клиентского кластера

Схема — иллюстрация

Скриншот: Shturval v2 с внутренним балансировщиком для KubeAPI и внешним балансировщиком для Ingress и CoreHA для клиентского кластера

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80TCPВзаимодействие с Ingress-controller кластера
AdminБалансировщик нагрузки (Ingress)443TCPВзаимодействие с Ingress-controller кластера
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование и управление кластером
AdminКластер управления22TCPИнсталляция кластера управления по SSH
Узлы кластера (Control Plane, Worker)VIP Control Plane узла (KubeAPI)6443TCPКомпоненты Kubernetes и STD для взаимодействия с кластером
Узлы кластераБалансировщик нагрузки (Ingress)80 (опционально)TCPВзаимодействие кластера с Ingress-controller
Узлы кластераБалансировщик нагрузки (Ingress)443TCPВзаимодействие кластера с Ingress-controller
Балансировщик нагрузки (Ingress)Worker-узлы30080 (опционально)TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы30443 (опционально)TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы443TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы80TCPВзаимодействие с Ingress-controller кластера
Control Plane узлыWorker-узлы (Kubelet)10250TCPКомпонент Kubernetes для взаимодействия с kubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлы кластера управленияS3 (Simple Storage Service)9000TCPВзаимодействие с хранилищем S3 (Velero)
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPВзаимодействие узлов кластера ETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPКомпоненты Kubernetes
Worker-узлы кластера управленияActive Directory389TCP/UDPВзаимодействие с Active Directory, LDAP
Worker-узлы кластера управленияActive Directory636TCPВзаимодействие с Active Directory, LDAP
Кластер управленияVIP Control Plane узлов клиентского кластера (KubeAPI)6443TCPВзаимодействие кластера управления с клиентским кластером
Кластер управленияКлиентский кластер22TCPИнсталляция клиентского кластера по SSH
Клиентский кластерБалансировщик нагрузки443TCPВалидация токена клиентского кластера через кластер управления
Кластер управленияБалансировщик нагрузки443TCPВалидация токена кластера управления
Балансировщик нагрузкиVIP Control Plane узлов клиентского кластера (CoreHA DNS)1053TCPДинамическое добавление бэкендов в HAProxy
Клиентский кластерБалансировщик нагрузки (logs, metrics)443TCPПеренаправление метрик, логов
Клиентский кластерЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация с внешним провайдером

Shturval v2 с внутренним балансировщиком для KubeAPI и внешним балансировщиком для Ingress

Схема — иллюстрация

Скриншот: Shturval v2 с внутренним балансировщиком для KubeAPI и внешним балансировщиком для Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80, 443TCPВзаимодействие с Ingress-controller
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование и управление кластером
AdminКластер управления22TCPИнсталляция по SSH
Узлы кластераVIP Control Plane узла (KubeAPI)6443TCPВзаимодействие с кластером
Control Plane узелБалансировщик нагрузки (Ingress)80 (опционально), 443TCPВзаимодействие с Ingress-controller
Балансировщик нагрузки (Ingress)Worker-узлы30080, 30443 (опционально), 443, 80TCPВзаимодействие с Ingress-controller
Control Plane узлыWorker-узлы (Kubelet)10250TCPВзаимодействие с kubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлы кластера управленияActive Directory389, 636TCP/UDP, TCPLDAP
Кластер управленияVIP Control Plane клиентского кластера (KubeAPI)6443TCPУправление клиентским кластером
Кластер управленияКлиентский кластер22TCPИнсталляция по SSH
Клиентский кластерБалансировщик нагрузки443TCPВалидация токена
Кластер управленияБалансировщик нагрузки443TCPВалидация токена
Клиентский кластерБалансировщик нагрузки (logs, metrics)443TCPМетрики, логи
Клиентский кластерЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

Shturval v2 с внутренним балансировщиком для KubeAPI и Ingress

Схема — иллюстрация

Скриншот: Shturval v2 с внутренним балансировщиком для KubeAPI и Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminVIP Worker-узлов (Ingress)80 (опционально), 443TCPВзаимодействие с Ingress-controller
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование и управление кластером
AdminКластер управления22TCPИнсталляция по SSH
Узлы кластераVIP Control Plane узла (KubeAPI)6443TCPВзаимодействие с кластером
Узлы кластераVIP Worker-узел (Ingress)80, 443TCPВзаимодействие с Ingress-controller
Control Plane узлыWorker-узлы (Kubelet)10250TCPВзаимодействие с kubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлы кластера управленияActive Directory389, 636TCP/UDP, TCPLDAP
Кластер управленияVIP Control Plane клиентского кластера (KubeAPI)6443TCPУправление клиентским кластером
Кластер управленияКлиентский кластер22TCPИнсталляция по SSH
Клиентский кластерVIP Worker-узел443TCPВалидация токена
Клиентский кластерЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

Shturval v2 с внешним балансировщиком для KubeAPI и Ingress

Схема — иллюстрация

Скриншот: Shturval v2 с внешним балансировщиком для KubeAPI и Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80, 443TCPВзаимодействие с Ingress-controller
AdminБалансировщик нагрузки (KubeAPI)6443TCPВзаимодействие с кластером
AdminКластер управления22TCPИнсталляция по SSH
Балансировщик нагрузки (Ingress)Worker-узлы30080, 30443 (опционально), 443, 80TCPIngress-controller
Балансировщик нагрузки (KubeAPI)Control Plane узлы6443TCPKubeAPI
Узлы кластераБалансировщик нагрузки (Ingress)80, 443TCPIngress-controller
Control Plane узлыБалансировщик нагрузки (KubeAPI)6443TCPKubeAPI
Control Plane узлыWorker-узлы (Kubelet)10250TCPkubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлы кластера управленияActive Directory389, 636TCP/UDP, TCPLDAP
Worker-узлыБалансировщик нагрузки (KubeAPI)6443TCPKubeAPI
Кластер управленияБалансировщик нагрузки (KubeAPI)6443TCPKubeAPI
Кластер управленияКлиентский кластер22TCPИнсталляция по SSH
Клиентский кластерБалансировщик нагрузки443TCPВалидация токена
Кластер управленияБалансировщик нагрузки443TCPВалидация токена
Клиентский кластерБалансировщик нагрузки (logs, metrics)443TCPМетрики, логи
Клиентский кластерЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

Shturval v2 stand-alone кластер с внутренним балансировщиком для KubeAPI и Ingress

Схема — иллюстрация

Скриншот: Shturval v2 stand-alone кластер с внутренним балансировщиком для KubeAPI и Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminVIP Worker-узлов (Ingress)80 (опционально), 443TCPIngress-controller
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование кластера
AdminКластер управления22TCPИнсталляция по SSH
Кластер управленияБалансировщик нагрузки443TCPВалидация токена
Узлы кластераVIP Control Plane узла (KubeAPI)6443TCPВзаимодействие с кластером
Узлы кластераVIP Control Plane узла (Ingress)80, 443TCPIngress-controller
Control Plane узлыWorker-узлы (Kubelet)10250TCPkubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлыActive Directory389, 636TCP/UDP, TCPLDAP
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

Shturval v2 stand-alone с внутренним балансировщиком для KubeAPI и внешним для Ingress

Схема — иллюстрация

Скриншот: Shturval v2 stand-alone с внутренним балансировщиком для KubeAPI и внешним для Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80, 443TCPIngress-controller
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование кластера
AdminКластер управления22TCPИнсталляция по SSH
Узлы кластераБалансировщик нагрузки (Ingress)80, 443TCPIngress-controller
Балансировщик нагрузки (Ingress)Worker-узлы30080, 30443 (опционально), 443, 80TCPIngress-controller
Узлы кластераVIP Control Plane узла (KubeAPI)6443TCPВзаимодействие с кластером
Control Plane узлыWorker-узлы (Kubelet)10250TCPkubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлыActive Directory389, 636TCP/UDP, TCPLDAP
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

Shturval v2 DR-платформа с внутренним балансировщиком для KubeAPI и внешним для Ingress

Схема — иллюстрация

Скриншот: Shturval v2 DR-платформа с внутренним балансировщиком для KubeAPI и внешним для Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80TCPВзаимодействие с Ingress-controller кластера
AdminБалансировщик нагрузки (Ingress)443 (опционально)TCPВзаимодействие с Ingress-controller кластера
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование и управление кластером
AdminКластер управления22TCPИнсталляция кластера управления по SSH
Узлы кластера (Control Plane, Worker)VIP Control Plane узла (KubeAPI)6443TCPКомпоненты Kubernetes и STD для взаимодействия с кластером
Узлы кластераБалансировщик нагрузки (Ingress)80 (опционально)TCPВзаимодействие с Ingress-controller кластера
Узлы кластераБалансировщик нагрузки (Ingress)443TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы30080 (опционально)TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы30443 (опционально)TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы443 (опционально)TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы80TCPВзаимодействие с Ingress-controller кластера
Control Plane узлыWorker-узлы (Kubelet)10250TCPКомпонент Kubernetes для взаимодействия с kubelet
Узлы кластера (Control Plane, Worker)Узлы кластера (Control Plane, Worker)4240TCPКластерная сеть (Cilium)
Узлы кластера (Control Plane, Worker)Узлы кластера (Control Plane, Worker)—ICMPКластерная сеть (Cilium)
Узлы кластера (Control Plane, Worker)Узлы кластера (Control Plane, Worker)6081UDPКластерная сеть (Cilium)
Worker-узлыS3 (Simple Storage Service)9000TCPВзаимодействие с хранилищем S3 (Velero)
Worker-узлы DR-кластера управленияS3 (Simple Storage Service)9000TCP/UDPВзаимодействие с хранилищем S3 (Velero)
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPВзаимодействие узлов кластера ETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPКомпоненты Kubernetes
Worker-узлы DR-кластера управленияActive Directory389TCP/UDPВзаимодействие с Active Directory, LDAP
Worker-узлы DR-кластера управленияActive Directory636TCPВзаимодействие с Active Directory, LDAP
Worker-узлы кластера управленияActive Directory389TCP/UDPВзаимодействие с Active Directory, LDAP
Worker-узлы кластера управленияActive Directory636TCPВзаимодействие с Active Directory, LDAP
Кластер управленияVIP Control Plane узлов клиентского кластера (KubeAPI)6443TCPВзаимодействие кластера управления с клиентским кластером
DR-кластер управленияVIP Control Plane узлов клиентского кластера (KubeAPI)6443TCPВзаимодействие DR-кластера управления с клиентским кластером
Кластер управленияКлиентский кластер22TCPИнсталляция клиентского кластера по SSH
DR-кластер управленияКлиентский кластер22TCPИнсталляция клиентского кластера по SSH
Клиентский кластерБалансировщик нагрузки443TCPВалидация токена клиентского кластера через кластер управления
Кластер управленияБалансировщик нагрузки443TCPВалидация токена кластера управления
DR-кластер управленияБалансировщик нагрузки443TCPВалидация токена DR-кластера управления
Клиентский кластерБалансировщик нагрузки (logs, metrics)443TCPВзаимодействие кластера с Ingress-controller для перенаправления метрик, логов
Клиентский кластерЗеркало (Registry)443TCPВзаимодействие кластера с репозиторием образов на зеркале
Кластер управленияЗеркало (Registry)443TCPВзаимодействие кластера с репозиторием образов на зеркале
DR-кластер управленияЗеркало (Registry)443TCPВзаимодействие DR-кластера с репозиторием образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация с внешним провайдером
DR-кластер управленияKeycloak, Blitz443, 80TCPАутентификация с внешним провайдером

oVirt, VMware vSphere с внутренним балансировщиком для KubeAPI и внешним для Ingress

Схема — иллюстрация

Схема oVirt и VMware vSphere: внутренний балансировщик KubeAPI, внешний Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80, 443TCPIngress-controller
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование кластера
AdminКластер управления22TCPИнсталляция по SSH
Узлы кластераVIP Control Plane узла (KubeAPI)6443TCPВзаимодействие с кластером
Узлы кластераБалансировщик нагрузки (Ingress)80, 443TCPIngress-controller
Клиентский кластерБалансировщик нагрузки443TCPВалидация токена
Кластер управленияБалансировщик нагрузки443TCPВалидация токена
Балансировщик нагрузки (Ingress)Worker-узлы30080, 30443 (опционально), 443, 80TCPIngress-controller
Control Plane узлыWorker-узлы (Kubelet)10250TCPkubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлы кластера управленияActive Directory389, 636TCP/UDP, TCPLDAP
Кластер управленияVIP Control Plane клиентского кластера (KubeAPI)6443TCPУправление клиентским кластером
Worker-узлы кластера управленияoVirt Engine / vCenter443TCPСоздание кластеров (oVirt, VMware vSphere)
Клиентский кластерБалансировщик нагрузки (logs, metrics)443TCPМетрики, логи
Клиентский кластерЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

oVirt, VMware vSphere с внутренним балансировщиком для KubeAPI, внешним для Ingress и CoreHA в клиентском кластере

Схема — иллюстрация

Скриншот: oVirt, VMware vSphere с внутренним балансировщиком для KubeAPI, внешним для Ingress и CoreHA в клиентском кластере

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminБалансировщик нагрузки (Ingress)80TCPВзаимодействие с Ingress-controller кластера
AdminБалансировщик нагрузки (Ingress)443TCPВзаимодействие с Ingress-controller кластера
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование и управление кластером
AdminКластер управления22TCPИнсталляция кластера управления по SSH
Узлы кластера (Control Plane, Worker)VIP Control Plane узла (KubeAPI)6443TCPКомпоненты Kubernetes и STD для взаимодействия с кластером
Балансировщик нагрузки (Ingress)Worker-узлы30080 (опционально)TCPВзаимодействие кластера управления с Ingress-controller
Узлы кластераБалансировщик нагрузки (Ingress)80 (опционально)TCPВзаимодействие с Ingress-controller кластера
Узлы кластераБалансировщик нагрузки (Ingress)443 (опционально)TCPВзаимодействие с Ingress-controller кластера
Балансировщик нагрузки (Ingress)Worker-узлы30443 (опционально)TCPВзаимодействие кластера управления с Ingress-controller
Балансировщик нагрузки (Ingress)Worker-узлы443TCPВзаимодействие кластера управления с Ingress-controller
Балансировщик нагрузки (Ingress)Worker-узлы80TCPВзаимодействие кластера управления с Ingress-controller
Control Plane узлыWorker-узлы (Kubelet)10250TCPКомпонент Kubernetes для взаимодействия с kubelet
Клиентский кластерБалансировщик нагрузки443TCPВалидация токена клиентского кластера через кластер управления
Кластер управленияБалансировщик нагрузки443TCPВалидация токена кластера управления
Узлы кластера (Control Plane, Worker)Узлы кластера (Control Plane, Worker)4240TCPКластерная сеть (Cilium)
Узлы кластера (Control Plane, Worker)Узлы кластера (Control Plane, Worker)—ICMPКластерная сеть (Cilium)
Узлы кластера (Control Plane, Worker)Узлы кластера (Control Plane, Worker)6081UDPКластерная сеть (Cilium)
Worker-узлы кластера управленияS3 (Simple Storage Service)9000TCPВзаимодействие с хранилищем S3 (Velero)
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPВзаимодействие узлов кластера ETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPКомпоненты Kubernetes
Worker-узлы кластера управленияActive Directory389TCP/UDPВзаимодействие с Active Directory, LDAP
Worker-узлы кластера управленияActive Directory636TCPВзаимодействие с Active Directory, LDAP
Кластер управленияVIP Control Plane узлов клиентского кластера (KubeAPI)6443TCPВзаимодействие кластера управления с клиентским кластером
Балансировщик нагрузкиVIP Control Plane узлов клиентского кластера (CoreHA DNS)1053TCPДинамическое добавление бэкендов в HAProxy
Worker-узлы кластера управленияoVirt Engine443TCPСоздание кластеров с помощью провайдера oVirt
Worker-узлы кластера управленияvCenter443TCPСоздание кластеров с помощью провайдера vSphere
Клиентский кластерБалансировщик нагрузки (logs, metrics)443TCPВзаимодействие кластера с Ingress-controller для перенаправления метрик, логов
Клиентский кластерЗеркало (Registry)443TCPВзаимодействие кластера с репозиторием образов на зеркале
Кластер управленияЗеркало (Registry)443TCPВзаимодействие кластера с репозиторием образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация с внешним провайдером

oVirt, VMware vSphere с внутренним балансировщиком для KubeAPI и Ingress

Схема — иллюстрация

Схема oVirt и VMware vSphere: внутренние балансировщики KubeAPI и Ingress

Описание — иллюстрация
SourceDestinationПортПротоколНазначение
AdminVIP Worker-узлов (Ingress)80, 443TCPIngress-controller
AdminVIP Control Plane узлов (KubeAPI)6443TCPАдминистрирование кластера
AdminКластер управления22TCPИнсталляция по SSH
Узлы кластераVIP Control Plane узла (KubeAPI)6443TCPВзаимодействие с кластером
Control Plane узлыWorker-узлы (Kubelet)10250TCPkubelet
Узлы кластераУзлы кластера4240TCPКластерная сеть (Cilium)
Узлы кластераУзлы кластера—ICMPКластерная сеть (Cilium)
Узлы кластераУзлы кластера6081UDPКластерная сеть (Cilium)
Worker-узлыS39000TCPVelero
Control Plane узелControl Plane узлы (Etcd)2379, 2380TCPETCD
Control Plane узелControl Plane узлы (Kube components)10250, 10257, 10259TCPKubernetes
Worker-узлы кластера управленияActive Directory389, 636TCP/UDP, TCPLDAP
Кластер управленияVIP Control Plane клиентского кластера (KubeAPI)6443TCPУправление клиентским кластером
Узлы кластераVIP Worker-узлов (Ingress)80, 443TCPIngress-controller
Клиентский кластерVIP Worker-узлов443TCPВалидация токена
Worker-узлы кластера управленияoVirt Engine / vCenter443TCPСоздание кластеров
Клиентский кластерЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияЗеркало (Registry)443TCPРепозиторий образов на зеркале
Кластер управленияKeycloak, Blitz443, 80TCPАутентификация

Дополнительные требования

ТребованиеОписание
Синхронизация времениNTP или Chrony на узлах и на хосте зеркала
ЛицензияEnterprise; лимиты по Worker и vCPU — в тексте лицензии; при превышении — уведомление в интерфейсе. При спецсимволах в строке передавайте её в одинарных кавычках в команде запуска

Требования к браузерам

Рекомендуемое разрешение монитора: 1498×906.

Поддерживаются

БраузерВерсия
Chrome120–146
Edge120–145
Safari17–26
Firefox122–148
Opera107–126

Браузеры, из которых графический интерфейс недоступен

  • IE;
  • Opera Mini;
  • UC Browser for Android;
  • QQ Browser;
  • Baidu Browser;
  • KaiOS Browser;
  • Opera Mobile;
  • Android Browser;
  • Firefox for Android;
  • Samsung Internet Browser;
  • Safari on iOS.

Чек-лист перед установкой

  • Развёрнуто зеркало; есть бандл и лицензия Enterprise
  • Узлы и машина shtil имеют доступ к зеркалу по HTTPS
  • Если на машине shtil используется Docker и у зеркала самоподписной или корпоративный CA, СА добавлен в /etc/docker/certs.d/<registry-host>/ca.crt или зеркало настроено в insecure-registries
  • Ресурсы и ОС соответствуют требованиям
  • DNS, VIP или балансировщики подготовлены по сценарию
  • Межсетевые экраны настроены по матрицам

Проверки командой строки — Подготовка.