Описание

Zakroma-Storage - управляющий слой, обеспечивающий S3-протокол.

Helm‑чарт создает stateless сервисы (Core, Gateway, Admin-UI, Worker, Composer, Notification*, SecLog*, CDN*) и их конфигурацию для запуска в Kubernetes.

Звёздочкой отмечены опциональные сервисы, отключаемые во время установки через values.yaml.

1. Поддерживаемые сценарии установки

  • Базовая установка: Core, Gateway, Admin‑UI, Worker, Composer.
  • Базовая + SecLog + Webhooks: Core, Gateway, Admin‑UI, Worker, Composer, Notification, Seclog. Включает аудит событий и вебхуки.
  • Мультикластер: Core, Gateway, Admin‑UI, Worker, Composer, Notification, Seclog, CDN. 2 независымых кластера с репликацией данных.

2. Подготовка Kubernetes‑пространства

Создайте namespace:

1kubectl create namespace zakroma-storage

3. Создать и примонтировать секрет с лицензией (CA сертификат при необходимости)

Cоздайте Secret с лицензией и добавьте его монтирование в Pod zakroma-storage-gateway:

1kubectl -n zakroma-storage create secret generic licence --from-file=licence=./licence
1 volumes: 2 - name: licence 3 secret: 4 secretName: licence 5 volumeMounts: 6 - name: licence 7 mountPath: /opt/application/licence 8 subPath: licence

(Опционально) добавьте корневой CA в ConfigMap (если требуется доверие к внутренним сервисам, например в закрытом контуре) и добавьте его монтирование в Pod’ы.

1 volumes: 2 - name: ca-certificates 3 configMap: 4 name: ca-certificates 5 volumeMounts: 6 - name: ca-certificates 7 mountPath: /etc/ssl/certs/ca-certificates.crt 8 subPath: ca-certificates.crt

4. Подготовить values.yaml для Helm чарта

Примеры можно посмотреть в этом же разделе

5. Установка

1helm upgrade --install zakroma-storage <chart-ref> -n zakroma-storage -f values.yaml

Где <chart-ref> — путь к локальному чарту или <repo>/<chart> из добавленного Helm‑репозитория.

6. Метрики и ServiceMonitor

В Kubernetes метрики Zakroma-Storage доступны на пути /metrics.

Актуальный порт для сервисов zakroma-storage-composer, zakroma-storage-core, zakroma-storage-worker, zakroma-storage-cdn, zakroma-storage-gateway, zakroma-storage-notification и zakroma-storage-seclog8180.

Объекты ServiceMonitor создаются Helm-чартом. Для использования ServiceMonitor в кластере должен быть установлен Prometheus Operator.

Включение ServiceMonitor для релиза:

1global: 2 serviceMonitor: 3 enabled: true 4 # Метки должны совпадать со spec.serviceMonitorSelector у Prometheus. 5 labels: 6 release: prometheus 7 interval: 5s 8 path: /metrics 9 # namespace: monitoring 10 # targetNamespace: zakroma-storage

Если требуется настроить ServiceMonitor для отдельного сервиса, переопределите параметры на уровне соответствующего подчарта:

1zakroma-storage-gateway: 2 serviceMonitor: 3 enabled: true 4 namespace: monitoring 5 targetNamespace: zakroma-storage 6 port: management