Документация

bpm'online sales enterprise
PDF

Установка сервиса машинного обучения

Сервис машинного обучения предназначен для прогнозирования значений на основании больших объемов исторических данных и текущих фактов. Подробнее >>> 

В статье представлена инструкция по установке и настройке сервиса машинного обучения для пользователей bpm’online версий 7.12.2 и выше.

Важно

Для настройки сервиса машинного обучения необходимы базовые знания администрирования Docker, Linux или Windows.

Содержание

Подготовка к установке сервиса машинного обучения

Установка сервиса машинного обучения

Обновление компонентов сервиса машинного обучения

Подготовка к установке сервиса машинного обучения

Для настройки сервиса необходим сервер (физический или виртуальный компьютер) с установленной ОС Linux или Windows. Установка компонентов сервиса выполняется с помощью ПО Docker. Скачать архив с конфигурационными файлами и скриптами установки можно по ссылке.

Важно

Для промышленной среды следует использовать сервер с ОС Linux. Сервер на базе Windows можно использовать только для среды разработки. Для получения Docker-контейнеров, предназначенных для Windows, обратитесь в службу поддержки.

На заметку

В зависимости от потребностей вашей компании можно использовать Docker Community Edition (CE) или Enterprise Edition (EE). Подробную информацию вы найдете в документации Docker.

Рекомендуемые системные требования к серверу

Процессор

64-битный процессор, минимум 4 ядра.

ОЗУ (RAM)

8 ГБ и выше.

НЖМД (HDD)

20 ГБ и выше свободного места на жестком диске.

ОС

Дистрибутив Linux, в котором поддерживается Docker. Поддерживаемые семейства Linux вы найдете в документации Docker. Рекомендуются стабильные (stable) версии Ubuntu или Debian.

64-битные версии Windows 10, WIndows Server 2016 с поддержкой технологии Hyper-V.

Docker

v.18.03.1 и выше.

Компоненты сервиса машинного обучения

Сервис машинного обучения использует следующие компоненты (Рис. 1):

ML Service — web-сервис машинного обучения. Единственный компонент, доступный извне.

R Engine — движок машинного обучения на основе системы OpenCPU. Подробнее >>> 

Redis — сервер хранения сессий и кэша. Подробнее >>> 

ML Task Scheduler — планировщик задач.

MySQL— база данных MySQL. Доступна по стандартному порту 3306.

Рис. 1 — Компоненты сервиса машинного обучения

scr_chapter_setup_machine_learning_ml_components.png 

Для удобства установки сервиса on-site все компоненты упакованы в Docker-образы.

Установка сервиса машинного обучения

Последовательность действий для установки сервиса машинного обучения:

1.Установить Docker. Подробнее >>> 

2.Установить Docker Compose. Подробнее >>> 

3.Установить и настроить компоненты сервиса. Подробнее >>> 

4.Выполнить проверку установки. Подробнее >>> 

Установка Docker

Для установки Docker на операционную систему Linux воспользуйтесь инструкцией в документации Docker.

Для проверки установленной версии Docker выполните команду docker --version в терминале (консоли) Linux-машины.

Установка Docker Compose

Для установки Docker Compose на операционную систему Linux воспользуйтесь инструкцией в документации Docker.

Для проверки установленной версии Docker Compose выполните команду docker-compose --version в терминале (консоли) Linux-машины.

Настройка компонентов сервиса машинного обучения

Все контейнеры компонентов сервиса машинного обучения развертываются с помощью утилиты Docker Compose. Конфигурационные файлы и скрипты, необходимые для развертывания и настройки компонентов сервиса, доступны по ссылке.

На заметку

Конфигурационные файлы содержат все необходимые настройки по умолчанию для сервера на базе Linux.

Структура архива с конфигурационными файлами и скриптами:

\etc\

..\db\sql\ — папка со скриптами развертывания и обновления структуры базы данных (БД) сервиса.

..\db\migrate-after-mysql-connected.sh — скрипт запуска обновления БД.

..\ml-service\appsettings.json — конфигурация web-сервиса.

..\ml-service\log4net.config — настройка уровня логирования web-сервиса.

..\opencpu\config.yml — конфигурация R Engine.

..\redis\redis.conf — файл настройки Redis-сервера.

..\task-scheduler\appsettings.json — конфигурация утилиты ML Task Scheduler.

..\task-scheduler\log4net.config — настройка уровня логирования ML Task Scheduler.

docker-compose.yml — конфигурация утилиты Docker Compose.

.env — файл с переменными окружения для запуска компонентов. Например, содержит пароль для MySql.

Важно

Если необходимо изменить пароль к базе данных MySql, то его нужно обновить не только в файле .env, но и в других конфигурационных файлах, содержащих секции настройки доступа к базе данных.

Установка компонентов сервиса машинного обучения

1.Скачайте и разархивируйте содержимое архива с конфигурационными файлами и скриптами в произвольный каталог, например, /opt/ml.

2.Используя терминал Linux, перейдите в каталог docker-compose распакованного архива, например, /opt/ml/docker-compose.

3.Выполните команду sudo docker-compose pull в терминале. Дождитесь завершения загрузки необходимых образов с компонентами сервиса с Docker Hub.

Важно

Если на сервере запрещен доступ в интернет, скачайте на машине с открытым доступом все необходимые образы вручную (см.конфигурационный файл docker-compose.yml). Затем воспользуйтесь командами sudo docker export и sudo docker import для переноса образов в виде файлов на целевую машину.

4.Выполните команду sudo docker-compose run dbmigration для инициализации структуры базы данных. Дождитесь завершения выполнения команды.

5.Выполните команду sudo docker-compose up -d для запуска сервисов. Также в текущем каталоге будет создана папка logs.

Проверка установки компонентов сервиса машинного обучения

1.Для проверки установки веб-сервиса ML service выполните в терминале Linux команду:

curl -d '' -H 'Content-Type:application/json' -X POST localhost:5005/ping

Сервис должен вернуть ответ:

{“output”:”Ok”}

2.Для проверки запуска планировщика ML Task Scheduler удостоверьтесь в наличии записей в файле ../docker-compose/logs/task-scheduler/MLTaskScheduler.log.

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

docker exec -it [DB Container Id] mysql -u root --password=Supervisor ml -e "show tables;"

Где [DB Container Id] — идентификатор контейнера с компонентом базы данных. Узнать идентификатор контейнера можно с помощью команды sudo docker ps.

Пример

Проверка создания таблиц:

docker exec -it 7с9de07b53e8 mysql -u root --password=Supervisor ml -e "show tables;

В результате должны отобразиться названия основных таблиц сервиса: “modelinstance”, “traindata”, “trainsession” и т. д.

Обновление компонентов сервиса машинного обучения

Важно

Перед обновлением сервисов рекомендуется сохранить резервную копию базы данных MySQL. Подробнее >>> 

1.Используя терминал Linux, перейдите в каталог docker-compose с настроечными файлами, например, /opt/ml/docker-compose.

2.Выполните команду sudo docker-compose stop для остановки контейнеров компонентов сервиса.

3.Выполните команду sudo docker-compose pull в терминале. Дождитесь завершения загрузки необходимых образов с компонентами сервиса с Docker Hub.

4.Выполните команду sudo docker-compose run dbmigration для инициализации структуры базы данных. Дождитесь завершения выполнения команды.

5.Выполните команду sudo docker-compose up -d для запуска сервисов.

Смотрите также

Предиктивный анализ данных

Сервис машинного обучения (документация по разработке)

 

Был ли данный материал полезен?

Как можно улучшить эту статью?