ELMA365 On-Premises > ELMA365 On-Premises Enterprise / Установка ELMA365 Enterprise

Установка ELMA365 Enterprise

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

С 30.05.2024 заблокирован доступ из РФ к Docker Hub. Ознакомьтесь с официальным заявлением компании.

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

Приложение ELMA365 On-Premises устанавливается в Kubernetes-кластер. В работе используются СУБД PostgreSQL, MongoDB, Redis, шина событий RabbitMQ и объектное хранилище данных S3 (MinIO). Подробнее об этом читайте в статье «Архитектура».

Установка состоит из пяти этапов:

  1. Подготовка инфраструктуры (опционально).
  2. Скачивание Helm-чарта и конфигурационного файла.
  3. Заполнение конфигурационного файла.
  4. Установка с помощью Helm в Kubernetes-кластер приложения ELMA365.
  5. Установка дополнений для приложения ELMA365 (опционально).

Перед началом установки ознакомьтесь с системными требованиями ELMA365 On-Premises Enterprise.

Шаг 1: Подготовка инфраструктуры (опционально)

Под инфраструктурой понимаются необходимые для работы приложения ELMA365 On-Premises компоненты.

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

Предполагается, что зависимые компоненты должны быть развёрнуты заказчиком самостоятельно. Все работы по организации отказоустойчивой локальной архитектуры, настройке отказоустойчивости зависимых компонентов также остаются на стороне заказчика.

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

Компоненты, необходимые для работы приложения ELMA365 On-Premises:

  • Kubernetes-кластер;
  • PostgreSQL;
  • MongoDB;
  • RabbitMQ;
  • Redis;
  • S3 (MinIO).

В рамках текущей статьи базы данных и S3-хранилище установлены в kubernetes-кластер по статье «Подготовка встроенных баз данных» и используют стандартные строки подключения и пароли.

Требования к конфигурациям компонентов

Данный раздел можно пропустить, если требования к конфигурациям компонентов соблюдены и потребности в развёртывании необходимых для работы приложения ELMA365 On-Premises компонентов нет.

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

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

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

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

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

Для быстрого старта приложения заполните основные параметры:

  • global.host — домен (FQDN) или ip-адрес, по которому будет доступна система;
  • bootstrapCompany.email — электронная почта администратора;
  • bootstrapCompany.password — пароль администратора;
  • db.psqlUrl — строка подключения к БД PostgreSQL;
  • db.mongoUrl — строка подключения к БД MongoDB для приложения;
  • db.vahterMongoUrl — строка подключения к БД MongoDB для сервера авторизации;
  • db.redisUrl — строка подключения к Redis;
  • db.amqpUrl — строка подключения к RabbitMQ;
  • db.s3.method — метод запросов к S3;
  • db.s3.accesskeyid — имя пользователя S3;
  • db.s3.secretaccesskey — пароль для пользователя S3;
  • db.s3.bucket — бакет S3;
  • db.s3.backend.address — адрес S3;
  • db.s3.backend.region — регион S3;
  • db.s3.ssl.enabled — включение SSL S3.

Заполните переменные в файле values-elma365.yaml, выполнив следующие действия:

  1. Задайте домен FQDN или ip-адрес, по которому будет доступна система в параметре global.host.

В статье «Подготовка встроенных баз данных» на шаге 1 было подготовлено хранилище S3 MinIO, которое доступно по домену (FQDN) elma365_server.your_domain. При использовании встроенного хранилища S3, доступного по домену (FQDN), приложение ELMA365 должно быть доступно по этому же доменному имени. Чтобы это сделать, в global.host необходимо указать elma365_server.your_domain и включить привязку ingress к домену elma365_server.your_domain. Для этого в параметре ingress.hostEnabled установите значение true.

global:
  ## домен (FQDN) или ip-адрес, по которому будет доступна система
  host: 'elma365_server.your_domain'
  ingress:
    hostEnabled: true

  1. Заполните параметры создания компании в разделе bootstrapCompany. Компания создастся при установке ELMA365.
  1. Задайте адрес электронной почты администратора в параметре bootstrapCompany.email. Этот адрес будет являться логином для входа главного администратора.

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

Логин главного администратора нельзя изменить после установки системы.

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

  1. Укажите согласно вашей политики безопасности, пароль для входа главного администратора в параметре bootstrapCompany.password.
  1. Задайте язык компании в параметре bootstrapCompany.locale, например ru-RU:

bootstrapCompany:
  ## эл. почта администратора
  email: "admin@mail.com"
  ## пароль администратора
  password: "test"
  ## язык установленной системы, возможные варианты: "ru-RU", "en-US", "sk-SK"
  locale: "ru-RU"

  1. Задайте язык устанавливаемой системы в параметре language.default, например ru-RU:

language:
  ## язык установленной системы, возможные варианты: "ru-RU", "en-US", "sk-SK"
  default: "ru-RU"

  1. Заполните строки подключения к базам данных PostgreSQL, MongoDB, RabbitMQ, Redis, используя параметры db.psqlUrl, db.mongoUrl, db.vahterMongoUrl, db.redisUrl, db.amqpUrl:

db:
 ## строка подключения к БД Postgres, формат: postgresql://user:password@hostname:5432/databaseName
 psqlUrl: 'postgres://postgres:pgpassword@postgres.elma365-dbs.svc.cluster.local:5432/elma365?sslmode=disable'
 ## строка подключения к БД Postgres только для чтения, формат: postgresql://user:password@hostname:5432/databaseName
 roPsqlUrl: ''
 ## cтрока подключения к БД MongoDB для приложения, формат: mongodb://user:password@hostname:27017/databaseName
 mongoUrl: 'mongodb://elma365:mongopassword@mongo.elma365-dbs.svc.cluster.local:27017/elma365?ssl=false&replicaSet=rs0&readPreference=secondaryPreferred'
 ## cтрока подключения к БД MongoDB для сервера авторизации, формат: mongodb://user:password@hostname:27017/databaseName
 vahterMongoUrl: 'mongodb://elma365:mongopassword@mongo.elma365-dbs.svc.cluster.local:27017/elma365?ssl=false&replicaSet=rs0&readPreference=secondaryPreferred'
 ## cтрока подключения к Redis, формат: redis://user:password@redis.local:6379/databaseName
 redisUrl: 'redis://redis.elma365-dbs.svc.cluster.local:6379/0'
 ## cтрока подключения к Rabbit, формат amqp://user:password@hostname:5672/vhost
 amqpUrl: 'amqp://elma365:rmqpassword@rabbitmq.elma365-dbs.svc.cluster.local:5672/elma365'

  1. Заполните параметры подключения к S3 хранилищу файлов:
  • db.s3.method — метод запросов к S3;
  • db.s3.accesskeyid — имя пользователя S3;
  • db.s3.secretaccesskey — пароль для пользователя S3;
  • db.s3.bucket — бакет S3;
  • db.s3.backend.address — адрес S3;
  • db.s3.backend.region — регион S3;
  • db.s3.ssl.enabled — включение SSL S3.

db:
 s3:
   method: PUT
   accesskeyid: PZSF73JG72Ksd955JKU1HIA
   secretaccesskey: aFDkj28Jbs2JKbnvJH678MNwiz88zKjsuNBHHs
   bucket: s3elma365
   backend:
     address: elma365_server.your_domain
     region: us-east-1
   ssl:
     enabled: "false"

Заполнение параметров подключения к приватному registry для установки в закрытом контуре без доступа в интернет

Конфигурационный файл values-elma365.yaml содержит большое количество параметров приложения ELMA365 On-Premises. Полное руководство по заполнению переменных в этом файле читайте в статье «Изменение параметров ELMA365 Enterprise».

Шаг 4: Установка с помощью Helm в Kubernetes-кластер приложения ELMA365

  1. Установите приложение ELMA365 Enterprise с использованием конфигурационного файла values-elma365.yaml. Если требуется установить приложение в отдельный namespace, укажите его в команде установки:

helm upgrade --install elma365 elma365/elma365 \
-f values-elma365.yaml \
--timeout=30m --wait [-n namespace]

Чтобы установить приложение ELMA365 Enterprise в закрытом контуре без доступа в интернет, выполните следующую команду:

helm upgrade --install elma365 ./elma365 \
-f values-elma365.yaml \
--timeout=30m --wait [-n namespace]

Время установки приложения ELMA365 Enterprise занимает 10-30 минут. Дождитесь обновления параметров приложения ELMA365 Enterprise.

  1. Запустите браузер и откройте страницу входа в приложение ELMA365 Enterprise по адресу http://global.host. Параметр global.host был указан в конфигурационном файле values-elma365.yaml на шаге скачивание helm-чарта и конфигурационного файла.

В приведённом примере используется следующий адрес страницы входа в приложение ELMA365 Enterprise: http://example.ru.

installing-elma365-enterprise-1

  1. В качестве логина и пароля укажите адрес электронной почты администратора и пароль, который использовали в конфигурационном файле values-elma365.yaml  в параметрах bootstrapCompany.email и bootstrapCompany.password.

В приведённом примере используются:

  • Логинadmin@mail.com;
  • Парольtest.
  1. Нажмите кнопку Войти в систему.

Откроется окно активации системы ELMA365.

  1. Активируйте систему. Подробнее об этом читайте в статье «Активация On-Premises».

Установка приложения ELMA365 редакции Enterprise успешно закончена.

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

Сохраните конфигурационный файл values-elma365.yaml для последующих обновлений.

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

Шаг 5: Установка дополнений для приложения ELMA365 (опционально)

Под дополнениями для приложения ELMA365 понимаются компоненты, расширяющие функциональные и инфраструктурные возможности приложения ELMA365, включающие в себя:

  • систему маршрутизации (Service Mesh) Linkerd;
  • систему мониторинга Prometheus + Grafana;
  • Descheduler;
  • NodeLocal DNSCache;
  • Kyverno;
  • KEDA;
  • модуль Аудит безопасности.

Устанавливаются дополнения по необходимости, с учётом имеющейся инфраструктуры. Принять решение о необходимости установки компонента дополнений помогут статьи раздела «Администрирование ELMA365 Enterprise».