Установка и обновление Polymatica ML выполняются единым сценарием:
./install/offline-install.sh \
--config install/offline-install.confСценарий автоматически определяет состояние целевого namespace и выбирает первоначальную установку или обновление.
Этапы установки
Установщик последовательно выполняет:
Проверку конфигурации и необходимых программ.
Проверку Kubernetes-кластера, ресурсов, StorageClass и IngressClass.
Проверку доступности container registry и внешних сервисов.
Проверку контрольных сумм файлов поставки.
Загрузку контейнерных образов в целевой registry.
Установку или обновление
infrastructure-data.Установку или обновление
infrastructure-misc.Установку или обновление сервисов Polymatica ML.
Восстановление Devpi из snapshot поставки.
Ожидание завершения миграций и готовности Kubernetes-ресурсов.
Выполнение итоговой smoke-проверки.
Первоначальная установка
При первоначальной установке создаются:
PostgreSQL, Redis, MinIO и Devpi, если не используются внешние сервисы;
Keycloak и первоначальный пользователь Polymatica ML;
необходимые Secret и ConfigMap;
сервисы Polymatica ML;
Ingress для доступа к приложению;
buckets
model-designerиmodel-manager;секреты доступа к registry для runtime-образов.
Обновление
Перед обновлением установщик:
проверяет существующие учётные данные;
создаёт резервные копии PostgreSQL и S3;
сохраняет существующие PVC;
проверяет возможность применения новой конфигурации.
После этого обновляются инфраструктурные компоненты и сервисы Polymatica ML.
Devpi при обновлении пересоздаётся из snapshot, включённого в новую поставку. Пользовательские данные PostgreSQL, MinIO и Redis сохраняются.
Проверка результата
После установки необходимо проверить:
export NS=offline
kubectl get pods -n "$NS"
kubectl get jobs -n "$NS"
kubectl get ingress -n "$NS"Все основные Pod должны иметь состояние Running или Completed, а миграционные Job — Complete.
Затем выполните:
./install/offline-smoke.sh --namespace "$NS"Переходить к эксплуатации стенда следует после успешного завершения smoke-проверки.