Установка коробочной версии на одной машине (single-node deployment)
Last updated
Last updated
Запуск сервиса на одной виртуальной машине это самый простой способ развертывания приложения. Так же такой подход является самым простым для поддержки, но имеет повышенный риск отказа сервиса (при недоступности сервера по техническим причинам, проведения обновлений и других причинах).
Далее приведен пример взаимодействия компонентов при работе с коробочной версией
Для простой установки в таком режиме необходим
одна или несколько deb/rpm совместимая машина на Linux OS, мы рекомендуем ubuntu 20.04
8+ GB RAM на каждую машину
4+ CPU для каждой машины
60+ GB свободного места на диске
Для запуска необходимо, чтобы у машин был выход в интернет. Минимальный набор доступных внешних сервисов для работы системы будет рассмотрен далее в этой статье (в разделе FAQ)
У пользователя, под которым запускается установка приложения, должен быть sudo доступ
Минимальные требования к виртуальной машине, на которой запущена система может меняться по мере добавления функционала в новых версиях.
Установку и внедрение можно разбить на несколько этапов:
Подготовка к установке и установка Qolio. Эту работу чаще всего может выполнить системный администратор организации, которая устанавливает приложение
Обеспечение интеграций с сервисами компании (телефонией, тикетными системами и другими). На этом шаге необходимо участие администратора системы со стороны организации, например администратор Amocrm или администратор Oktell.
Дальнейшая эксплуатация системы. На этом этапе мы помогаем вам настроить Qolio, получать новые версии приложения и обеспечиваем тех. поддержку.
На всех этапах компания Qolio предоставляет техническую поддержку и консультации в требуемом объеме.
Эту работу чаще всего может выполнить системный администратор организации, которая устанавливает приложение Qolio. Для установки требуется сделать настройки инфраструктуры, описанные далее:
Компания Qolio передает Клиенту необходимые для установки ресурсы:
Ключ доступа к docker репозиторию с образами программы
Лицензионный код
email и пароль админа, с помощью которого можно будет войти в систему (вы можете сообщить нам какой email хотите использовать для первого админского доступа Qolio, далее этот email и пароль можно будет сменить только через обращение в тех. поддержку)
Админ со стороны Клиента создает виртуальную машину и настраивает ее доступ в сеть и интернет. Минимальный набор ресурсов необходимых для установки описан далее.
Админ создает 2 доменных имени внутри сети - один для фронтенда Qolio, другой - для бэкенда. Фронтенд это домен через который будет осуществляться доступ сотрудников ОКК, а бэкенд это API сервис, на котором размещены сервисы для обеспечения работы программы. Например, это могут быть следующие варианты: qolio.example.io для доступа сотрудников и qolio-api.example.io для API сервера.
(необязательно) Админ выпускает ssl сертификаты для доменов (для фронтенда и бэкенда). Эти сертификаты понадобятся далее при установке. Поддерживаются ssl_protocols TLSv1.2 TLSv1.3.
Админу необходимо запустить базу данных PostgreSQL с версией 12+ в сети организации и создать базу данных и пользователя для работы Qolio. Далее следуют важные замечания по настройке базы:
Пользователь базы данных, через которого подключается приложение Qolio, должен обладать правами на создание базы данных. Если в PostgreSQL уже есть база данных и ее создание не нужно, нужно проставить в config.yml
настройку create_database: false
Обязательный компонент PostgreSQL - postgresql12-contrib
и расширение pgcrypto
Если база находится на одной и той же виртуальной машине с qolio, нужно указать network_mode: host
в config.yml
(необязательно) Создать пользователя для доступа к SMTP серверу, который будет использоваться для рассылки оповещений.
Админ заполняет конфигурационный файл на виртуальной машине, предназначенной для работы Qolio и запускает скрипты установки приложения. Процесс Установки рассмотрен детальнее далее в этой статье.
Для этого шага понадобится администратор телефонии, тикетной системы организации или другой системы с которой работает организация. Есть 2 способа передавать данные о коммуникациях организации в Qolio:
Передавать данные из телефонии/тикетной системы напрямую через API Qolio. В этом случае интеграция реализуется специалистами со стороны организации, которая обслуживает телефонию/тикетную системы.
Так же есть возможность подключить готовые интеграции с SaaS системами, такими как Zendesk, Kayako, Bitrix, Infinity X и другие. Для получения списка таких интеграций проконсультируйтесь с поддержкой.
На этом этапе:
Customer Success отдел Qolio помогает сконфигурировать систему в соответсвии с требованиями бизнес процессов организации. Для этого требуется взаимодействие ОКК организации и Qolio Customer Success отдела
Мы помогаем вам получить обновления версий Qolio. Qolio оповещает через email рассылку о выходе новых версий. Для обновления версии приложения нужен системный администратор со стороны организации с доступом к виртуальной машине c Qolio. Как это делать рассмотрено в разделе FAQ.
Техническая поддержка осуществляется через чат на сайте qolio.io и доступна в рабочее время компании Qolio.
Для установки на Ubuntu 18.04 или более поздние версии можно использовать стандартный инсталятор.
Для запуска инсталятора необходимо иметь следующие материалы:
файл с ключом доступа к docker registry (key.json), этот файл предоставляется со стороны компании DealApp по запросу
код лицензии (license_code), который так же предоставляется со стороны компании DealApp по запросу
файл конфигурации (config.yml
) с настройками лицензии и доступа к
Вся настройка установки происходит через YML файл конфигурации
Файл конфигурации должен быть в формате YAML со следующей структурой:
Поля конфигурации
🚨 Обратите внимание, что backend_url и frontend_url должны быть разными значениями.
Если вы хотите запустить подключение к почтовому сервису без авторизации, установите smtp_port в 25 (или ваше значение) и не указывайте smtp_username и smtp_password.
Инсталятор выполняет следующие действия:
Установка пакетов зависимостей: docker, docker-compose, nginx, ruby и yc cli
Логин docker в Docker Registry с помощью ключа доступа (key.json)
Настройка docker compose и nginx исходя из предоставленного конфига (config.yml). Конфигурация docker-compose.yml сохраняется в папку /etc/dealapp
Установка systemd сервис для DealApp
Запуск необходимых сервисов в Ubuntu
После того, как подготовлены ключ доступа к Docker Registry (demo-registry-key.json
) и файл конфигурации (config.yml
) готовы, можно приступать к установке. Установка запускается одной командой, в которой передается путь к файлам конфигурации и ключу от Docker Registry:
Значения параметров:
--config-file
- путь к файлу конфигурации
--registry-key
- путь к файлу с ключом для доступа к Docker Registry
Проверить работу сервиса можно с помощью команды sudo service dealapp status
Перезапустить сервис можно с помощью команды sudo service dealapp restart
Логи сервиса можно получить с помощью команды sudo docker-compose logs -f
внутри папки /etc/dealapp
или команды sudo journalctl -u docker.service
Настроить опции для эндпоинтов (в том числе получить более гибкую возможность настроить сертификатов) можно через конфигурацию nginx в файле /etc/nginx/conf.d/nginx.conf
Для того, чтобы обновить настройки сервиса нужно запустить заново установку с обновленным файлом конфигурации (config.yml
).
Процесс установки можно увидеть в этом видео:
При возникновении вопросов обращайтесь в нашу службу поддержки через окошко диалога на нашем сайте qolio.io. Спасибо 😊
version
Версия Qolio (текущая активная release-1.25.0), о появлении новых версий мы оповещаем в рассылке и в документации
license_code
Лицензионный код, который предоставляется со стороны DealApp, с помощью него осуществляется предварительная конфигурация системы
backend_url
Адрес, по которому будет доступен API сервер (обратите внимание, что backend_url и frontend_url должны быть разными значениями)
frontend_url
Адрес, по которому доступен фронтенд (обратите внимание, что backend_url и frontend_url должны быть разными значениями)
database_host
Адрес хоста с базой данных Postgresql 12
database_name
Имя базы данных (ее можно не создавать, DealApp сам создаст и настроит ее при первом старте)
database_user
Имя пользователя для подключения к базе данных, у пользователя должны быть права создавать базу данных
database_password
Пароль пользователя для подключения к базе данных
database_port
Порт для подключения к базе данных
smtp_address
Адрес SMTP сервера, который используется для рассылки уведомлений
smtp_domain
Домен, который используется для рассылки
smtp_username
Имя пользователя для подключения к SMTP серверу. Если не указывать smtp_username и smtp_password, то подключение будет производиться без авторизации
smtp_password
Пароль для подключения к SMTP серверу, используется вместе с smtp_username
smtp_port
Порт для подключения к почтовому серверу. По умолчанию это 465.
default_email
email, который будет использоваться для рассылки уведомлений
common_ssl_certificate_path
Сертификат для доменов frontend_url и backend_url (файл certificate.crt), который будет использоваться nginx (поддерживаются ssl_protocols TLSv1.2 TLSv1.3)
common_ssl_certificate_key_path
Приватный ключ сертификата (файл certificate.key), который будет использоваться nginx
create_database
Конфигурационная опция, которая говорит о том, будет ли создаваться база или нет
http_proxy / https_proxy
Поля для настройки http proxy, ожидается, что оба этих значения будут заполнены
ldap_enabled
метка о том, что установка работает LDAP
network_mode
установите в "host", чтобы докер контейнеры использовали сеть инстанса, на котором они запущены. это даст возможность создать базу и подключиться базу данных на том же хосте что и qolio
support_chart
добавить в приложении чат поддержки (который работает через intercom.com)