Установка коробочной версии на одной машине (single-node deployment)
Введение
Запуск сервиса на одной виртуальной машине это самый простой способ развертывания приложения. Так же такой подход является самым простым для поддержки, но имеет повышенный риск отказа сервиса (при недоступности сервера по техническим причинам, проведения обновлений и других причинах).
Далее приведен пример взаимодействия компонентов при работе с коробочной версией
Перед началом установки
Минимальные системные требования
Для простой установки в таком режиме необходим
одна или несколько deb/rpm совместимая машина на Linux OS, мы рекомендуем ubuntu 20.04
8+ GB RAM на каждую машину
4+ CPU для каждой машины
60+ GB свободного места на диске
Для запуска необходимо, чтобы у машин был выход в интернет. Минимальный набор доступных внешних сервисов для работы системы будет рассмотрен далее в этой статье (в разделе FAQ)
У пользователя, под которым запускается установка приложения, должен быть sudo доступ
Минимальные требования к виртуальной машине, на которой запущена система может меняться по мере добавления функционала в новых версиях.
Какие шаги нужно будет предпринять?
Установку и внедрение можно разбить на несколько этапов:
Подготовка к установке и установка Qolio. Эту работу чаще всего может выполнить системный администратор организации, которая устанавливает приложение
Обеспечение интеграций с сервисами компании (телефонией, тикетными системами и другими). На этом шаге необходимо участие администратора системы со стороны организации, например администратор Amocrm или администратор Oktell.
Дальнейшая эксплуатация системы. На этом этапе мы помогаем вам настроить Qolio, получать новые версии приложения и обеспечиваем тех. поддержку.
На всех этапах компания Qolio предоставляет техническую поддержку и консультации в требуемом объеме.
1. Подготовка к установке и установка 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. Обеспечение интеграций с сервисами компании
Для этого шага понадобится администратор телефонии, тикетной системы организации или другой системы с которой работает организация. Есть 2 способа передавать данные о коммуникациях организации в Qolio:
Передавать данные из телефонии/тикетной системы напрямую через API Qolio. В этом случае интеграция реализуется специалистами со стороны организации, которая обслуживает телефонию/тикетную системы.
Так же есть возможность подключить готовые интеграции с SaaS системами, такими как Zendesk, Kayako, Bitrix, Infinity X и другие. Для получения списка таких интеграций проконсультируйтесь с поддержкой.
3. Эксплуатация системы
На этом этапе:
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 со следующей структурой:
Поля конфигурации
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) |
🚨 Обратите внимание, что 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
Дальнейшая работа с сервисом Qolio
Проверить работу сервиса можно с помощью команды 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. Спасибо 😊
Last updated