ELMA365 On-Premises > Подготовка инфраструктуры > Балансировщик нагрузки / Проксирование S3 в Kubernetes через S3-Gateway

Проксирование S3 в Kubernetes через S3-Gateway

Проксирование трафика до S3‑хранилища — это один из этапов подготовки инфраструктуры для работы с ELMA365. Для этого можно использовать инструмент S3‑Gateway.

Он обеспечивает доступ к S3‑хранилищу, развёрнутому внутри или вне Kubernetes‑кластера, через единую точку входа — домен (FQDN) или IP‑адрес для ELMA365.

Установка S3‑Gateway состоит из нескольких этапов:

  1. Скачивание Helm-чарта и конфигурационного файла.
  2. Заполнение конфигурационного файла.
  3. Установка с помощью Helm в Kubernetes-кластер чарта S3-Gateway.
  4. Подключение к S3.

Шаг 1: Скачивание Helm-чарта и конфигурационного файла

Для установки через интернет получите конфигурационный файл values-s3gateway.yaml, выполнив команду:

helm repo add elma365 https://charts.elma365.tech
helm repo update
helm show values elma365/s3gateway > values-s3gateway.yaml

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

Шаг 2: Заполнение конфигурационного файла

Заполните конфигурационный файл values-s3gateway.yaml для установки S3‑Gateway:

  1. В параметре ingress.hostname укажите домен (FQDN) или IP-адрес, по которому доступно приложение ELMA365.
  2. В параметре ingress.path укажите наименование бакета (в хранилище S3), в котором приложение ELMA365 хранит файлы.
    Наименование бакета в S3 должно соответствовать формату s3elma365.

Начало примера

Пример:

  • s3elma365
  • s3elma365-dev
  • s3elma365-prod

конец примера

  1. Следующие изменения нужно внести в конфигурационный файл, если веб‑интерфейс приложения ELMA365 доступен по HTTPS:
  • в параметре ingress.path укажите домен (FQDN);
  • включите поддержку TLS, установив значение true в параметре ingress.tls;
  • раскомментируйте параметры секции ingress.extraTls;
  • для параметра ingress.extraTls.hosts укажите домен (FQDN), по которому доступно приложение ELMA365;
  • для параметра ingress.extraTls.secretName укажите наименование secret типа tls для домена, указанного в ingress.extraTls.hosts.
  1. Если нужно обеспечить отказоустойчивость, в параметре replicaCount укажите необходимое количество реплик.
  2. В параметре configuration указана конфигурация HAProxy, с которой он запустится в Kubernetes‑кластере. В секции backend s3_main конфигурации HAProxy укажите список серверов S3, на которые необходимо перенаправить пользовательский трафик.

Пример проксирования пользовательского трафика в хранилище S3 MinIO чартом elma365 dbs без поддержки SSL в Kubernetes-кластере

 

Пример проксирования пользовательского трафика в хранилище S3 MinIO с поддержкой SSL

  1. Если вы устанавливаете S3‑Gateway в закрытом контуре без доступа в интернет, заполните параметры подключения к приватному registry.

Пример заполнения параметров для подключения к приватному registry

Шаг 3: Установка с помощью Helm в Kubernetes-кластер чарта S3-Gateway

Установите чарт S3-Gateway в namespace s3gateway.

Для установки через интернет выполните команду:

helm upgrade --install s3gateway elma365/s3gateway -f values-s3gateway.yaml -n s3gateway --create-namespace 

Для установки без доступа в интернет выполните команду:

helm upgrade --install s3gateway ./s3gateway -f values-s3gateway.yaml -n s3gateway --create-namespace 

Шаг 4: Подключение к S3

Параметры для подключения к S3:

  • address — укажите elma365-server.your_domain;
  • bucket, region, access key ID, secret access key, secret access key и enable SSL — укажите значения согласно параметрам S3-хранилища, для которого настраивается проксирование.

начало внимание

Подготовка инфраструктуры происходит до установки приложения ELMA365. Если была произведена установка чарта S3-Gateway, не забудьте изменить адрес подключения к S3 (elma365.s3.backend.address) в настройках приложения ELMA365. Подробнее об этом читайте в статье «Изменение параметров ELMA365 Enterprise».

конец внимание