Концептуальная модель предметной области#
Компонент K8S Core (K8SC) продукта Platform V DropApp (K8S) (далее – DropApp) предназначен для автоматизации развертывания, масштабирования и управления контейнерными приложениями.
Компонент Utilites (K8SU) обеспечивает дополнительные функции DropApp посредством установки вспомогательных инструментов и утилит на развернутый кластер DropApp компонента K8S Core (K8SC).
HyperSight (K8SO) – инструмент для мониторинга, сбора и хранения метрик кластеров DropApp, предусматривающий взаимодействие с K8S Core (K8SC), устанавливаемый на развернутый кластер K8S Core (K8SC).
K8S Artificial Intelligеnce (K8SI) – компонент, включающий операторы искусственного интеллекта и обучение языковым моделям.
Управляющий слой (MGMT) – управляющий слой продукта, обеспечивающий автоматизированную установку, обновление и управление кластером DropApp с помощью утилиты Dactl.

Диаграмма. Иерархическая структура DropApp
Дополнительные компоненты разворачиваются на рабочих узлах в виде pod после установки основного состава.
Полный состав компонентов приведен в документе «Руководство администратора».
Использование компонента MGMT#
Компонент MGMT поставляется как отдельный дистрибутив K8S-mgmt-<version>-<distrib_number>-distrib.zip и содержит бинарные файлы утилит, контейнерные образы и документацию.
Утилита Dactl из состава MGMT обеспечивает полный жизненный цикл кластера DropApp:
Создание кластера – автоматизированная установка на базе конфигурационного файла
DropAppConfigurationс поддержкой минимальной и высокодоступной конфигураций, включая настройку машин, загрузку образов в реестр Harbor и развертывание основных компонентов.Управление узлами – добавление и удаление рабочих узлов и узлов управляющего слоя через пользовательские ресурсы
DropAppNodeс автоматическим присоединением узлов к кластеру и репликацией системных pod.Обновление кластера – переход на новую версию DropApp с помощью конфигурации
DropAppUpgradeConfiguration, обновление RPM-пакетов и компонентов.Удаление кластера – полная очистка кластера с удалением всех ресурсов и артефактов.
Администратор формирует конфигурационный манифест DropAppConfiguration с настройками узлов, реестра образов, сетевых параметров и запускает команду dactl create cluster для автоматизированного развертывания. После установки Dactl предоставляет артефакты: kubeconfig для доступа к кластеру и учетные данные пользователя kubeadmin для веб-консоли.
Модель компонентов и инструментов DropApp#
Архитектура DropApp с использованием Управляющего слоя (MGMT) построена на основе модели компонентов и инструментов, управляемых оператором Dapp-operator.
Компонент (Component) – группа из одного или нескольких инструментов, объединенная для решения конкретной задачи. Для Kubernetes, компонент является CustomResourceDefinition, управляемым Dapp-operator.
Инструмент (Tool) – оператор pod, Deployment и другие ресурсы DropApp, выполняющие отдельную функцию. Представляет собой Helm-релиз Helm-чарта. Для Kubernetes, инструмент является CustomResourceDefinition, управляемым Dapp-operator.
Компоненты делятся на две группы:
Основные компоненты – устанавливаются при развертывании кластера DropApp: Auth, Cert-management, Cni, Ingress-controller, Load-balancer, Ui.
Дополнительные компоненты – устанавливаются после развертывания кластера по необходимости: AI-inference, AI-system, AIOps, Alerting, DevOps, GitOps, Logging, Monitoring, Node-management, Pod-management, Security, Storage.
Установка дополнительных компонентов выполняется независимо друг от друга в порядке, определяемом администратором, с помощью утилиты Dactl. Смотрите подробнее в документе «Руководство по установке Dactl».
Вложенные кластеры TenantCluster#
TenantCluster (вложенный кластер, виртуальный кластер) – инструмент для создания виртуальных кластеров DropApp внутри существующих физических или логических кластеров, реализующий парадигму «kube-in-kube» на базе VCluster.
Виртуальный кластер предоставляет изолированное окружение, которое функционирует как полноценный Kubernetes-кластер, но использует ресурсы родительского кластера. Внутри TenantCluster разворачивается ограниченная версия Dapp-operator, позволяющая устанавливать компоненты Auth, Ui, GitOps, DevOps и AIOps.