Инструкция по установке приложений на уже настроенную VM
Подготовка кластера microk8s
Для работы ELMA Bot нужно включить два аддона: ingress и hostpath-storage. Для их включения выполните команды:
Создание TLS-секрета в kubectl
Перед установкой бота в helm-чартах в values.yaml нужно будет указать имя TLS-секрета с файлами сертификатов. Для создания этого секрета выполните команду:
Text Only | |
---|---|
Создание секрета для монтирования в контейнеры
Перед установкой бота в helm-чартах в values.yaml нужно будет указать имя конфигмапа с файлом корневого сертификата, который будет монтироваться в контейнеры для правильной работы сервисов. Для создания этого конфигмапа выполните команду:
Text Only | |
---|---|
Название конфигмапа указывается в настройке global.tlsCAConfigMapName
в чартах бота.
Установка ELMA Bot
Загрузка файлов для оффлайн установки
Перед установкой ELMA Bot в закрытом контуре необходимо сначала выкачать файлы установки для последующего переноса в закрытый контур.
Обратите внимание: Выкачивание всех требуемых для установки файлов может занять много времени и около 20 ГБ места на диске
Для выкачивания файлов выполните команду:
Text Only | |
---|---|
Загрузка образов в Harbor
Перед загрузкой образов нужно сначала создать в Harbor проект "elma-bot" и сделать его публичным (свойство public).
Затем можно перейти в папку elma-bot-X.Y.Z
, в которую загрузились оффлайн-файлы скриптом и выполнить команду:
Text Only | |
---|---|
Измените в команде пароль администратора, если меняли его при установке Harbor. Операция потребует еще около 10 ГБ дискового пространства.
Установка баз данных
Для работы ELMA Bot требуется установка баз данных и других стандартных компонентов: mongoDb, redis, rabbitmq, elasticsearch и minio.
Существует три способа их установки:
-
Самостоятельная установка или использование уже установленных компонентов.
-
Установка с помощью helm-чартов elma365-dbs. Это удобно, если планируется также установка ELMA 365.
-
Установка с помощью helm-чартов elma-bot-dbs. В этом случае устанавливаются только компоненты, необходимые для работы ELMA Bot.
В первом случае необходимо прописывать строки подключения и учетные данные сторонних сервисов в чартах elma-bot, во втором и в третьем случаях стандартные значения должны подходить, но их также можно изменить, например, поменять стандартные пароли.
Установка чартов elma-bot-dbs
Перейдите в папку elma-bot-X.Y.Z/charts/elma-bot-dbs
и отредактируйте файл values-dbs.yaml:
- Настройте логины, пароли и размеры хранилищ для сервисов, если нужно
- Настройте параметры приватного репозитория для загрузки образов
- В значениях
[сервис].image.registry
для каждого сервиса укажите адрес проекта в Harbor:harbor.[домен]:8443/elma-bot
- В значениях
- Если необходимо, укажите адрес хоста в настройках minio (требуется для ELMA 365 и необязательно для работы ELMA Bot)
Важно: Некоторые реализации хранилища S3, например, Yandex Object Storage, требуют уникальных имен бакетов среди всех пользователей хранилища. Поэтому рекомендуется для имен бакетов в настройке
minio.defaultBuckets
добавлять уникальный префикс, напримерcompany-name-product-name-
.
Для установки выполните команду:
Text Only | |
---|---|
Установка чартов elma-bot
Перейдите в папку elma-bot-X.Y.Z/charts/elma-bot
и отредактируйте файл values.yaml:
- Если планируется установка ELMA 365, заполните найстройки:
global.elma365Integration
- в настройке
elma365TlsSecret
укажитеelma-bot-tls
(или другое имя, если у ELMA 365 отдельный сертификат) - в настройке
global.hydra.enabled
должно бытьtrue
- Для установки в закрытом контуре установите значение
global.useInPrivateNetwork
вtrue
- И укажите полный путь к папке
elma-bot-X.Y.Z/data
в настройкеglobal.storage.offlineDataPath
- И укажите полный путь к папке
- Если необходимо монтировать файл сертификата в качестве доверенного, укажите название конфигмапа с сертификатом в настройке
global.tlsCAConfigMapName
(как создать конфигмап см. выше) - Укажите имя хоста в настройке
global.host
- Укажите полный путь к локальному репозиторию Harbor в настройке
global.image.repository
. Путь должен заканчиваться наcrph9k6gr6scu5er72ha
, например:harbor.[домен]:8443/elma-bot/crph9k6gr6scu5er72ha
- Замените имя секрета в настройке
global.ingress.existingTLSSecret
наelma-bot-tls
- При необходимости использования режима подпутей вместо поддоменов, замените значение настройки
global.routing.mode
сDOMAIN
наPATH
(подробнее в README.md в папке с чартами) - При необходимости замените пароли пользователей по умолчанию в настройке
global.defaultUserPasswords
Важно: Некоторые реализации хранилища S3, например, Yandex Object Storage, требуют уникальных имен бакетов среди всех пользователей хранилища. Поэтому рекомендуется для имен бакетов в настройке
db.s3.buckets
добавлять уникальный префикс, напримерcompany-name-product-name-
.
Для установки выполните команду:
Text Only | |
---|---|
Установка ELMA 365
Установка ELMA 365 производится в соответствии с документацией ELMA 365, например https://elma365.com/ru/help/platform/downloadin-images-elma365.html
Не забудьте внести изменения в чарты elma365 и elma365-dbs, необходимые для включения интеграции с ELMA Bot.