odg_assist_5.0:installation
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| odg_assist_5.0:installation [2026/10/05 13:02] – [Функциональные характеристики ПО “OdgAssist”] denis | odg_assist_5.0:installation [2026/10/05 13:48] (текущий) – [Установка supervisor] denis | ||
|---|---|---|---|
| Строка 25: | Строка 25: | ||
| | 200 | 54 | 112 | 800 | | | 200 | 54 | 112 | 800 | | ||
| | 250 | 68 | 136 | 1000 | | | 250 | 68 | 136 | 1000 | | ||
| - | |||
| Рекомендовано использование RAID для обеспечения резервирования и повышения производительности базы данных. | Рекомендовано использование RAID для обеспечения резервирования и повышения производительности базы данных. | ||
| Строка 36: | Строка 35: | ||
| * WEB сервер: | * WEB сервер: | ||
| * Менеджер управления процессами: | * Менеджер управления процессами: | ||
| - | * Интерпретатор языка Python: Python 3.12.3 | + | * Интерпретатор языка Python: Python 3.12.3 |
| **Минимальные требования к программно-аппаратному обеспечению рабочей станции пользователя: | **Минимальные требования к программно-аппаратному обеспечению рабочей станции пользователя: | ||
| Строка 50: | Строка 49: | ||
| Для обслуживания сервера сотрудниками исполнителя к нему необходим прямой доступ по ssh. Сервер должен иметь доступ в интернет. | Для обслуживания сервера сотрудниками исполнителя к нему необходим прямой доступ по ssh. Сервер должен иметь доступ в интернет. | ||
| - | |||
| ====== Установка odgassist 5.0 ====== | ====== Установка odgassist 5.0 ====== | ||
| - | Установить приложение можно вручную или автоматически. | ||
| - | ===== Ручная установка приложения на UBUNTU 20.04: ===== | ||
| - | Для работы приложения | + | ===== Установка |
| - | -Postgres 14 \\ | + | |
| - | -Nginx \\ | + | |
| - | -Supervisor \\ | + | |
| - | -Open jdk 8 \\ | + | |
| - | Команды для установки требуемого программного обеспечения: | + | Для работы приложения odgassist необходимы следующие программы: |
| - | Обновить и установить пакеты программного обеспечения: | + | |
| - | < | + | Команды для установки требуемого программного обеспечения: |
| + | |||
| + | < | ||
| sudo apt-get update && | sudo apt-get update && | ||
| </ | </ | ||
| + | |||
| + | === Установка Java === | ||
| Установить openjdk: \\ | Установить openjdk: \\ | ||
| - | < | + | |
| - | sudo apt-get -y install | + | < |
| + | sudo apt-get | ||
| </ | </ | ||
| + | Проверить <code bash> java -version </ | ||
| + | |||
| + | === Настройка русской локали === | ||
| Проверить наличие русской локали: | Проверить наличие русской локали: | ||
| - | < | ||
| - | В случае если русской локали нет, то установить: | + | < |
| - | < | + | |
| - | </ | + | |
| - | Сделать русскую по умолчанию: | + | Если локали нет — установить языковой пакет |
| - | < | + | |
| - | Выбрать: ru_RU.UTF-8 | + | <code bash> |
| + | |||
| + | Сгенерировать локаль: | ||
| + | <code bash> sudo locale-gen | ||
| Перезапустить сервер для обновления локали. | Перезапустить сервер для обновления локали. | ||
| - | Скачать и установить | + | === Установка Postgres |
| - | < | + | |
| - | wget --quiet -O - https:// | + | |
| - | RELEASE=$(lsb_release -cs) echo "deb http:// | + | |
| - | sudo apt -y install postgresql-14; | + | |
| - | </ | + | |
| + | <code bash> sudo apt install -y postgresql-16 postgresql-client-16 </ | ||
| + | Проверить статус | ||
| + | <code bash> sudo systemctl status postgresql </ | ||
| + | |||
| Добавить базу данных для odgassist: \\ | Добавить базу данных для odgassist: \\ | ||
| - | < | + | |
| - | sudo -u postgres psql -U postgres -d postgres | + | < |
| - | sudo -u postgres psql -U postgres -d postgres | + | sudo -u postgres psql -c " |
| + | sudo -u postgres psql -c "ALTER USER postgres PASSWORD ' | ||
| </ | </ | ||
| + | === Установка NGINX === | ||
| Установить nginx: \\ | Установить nginx: \\ | ||
| - | < | + | < |
| + | |||
| + | Проверить: | ||
| + | <code bash> sudo systemctl status nginx </ | ||
| + | |||
| + | === Установка supervisor === | ||
| Установить supervisor: \\ | Установить supervisor: \\ | ||
| - | < | + | < |
| - | sudo apt-get -y install supervisor; | + | |
| - | </ | + | Проверить статус: |
| + | <code bash> sudo systemctl status supervisor | ||
| Добавьте пользователя runner: \\ | Добавьте пользователя runner: \\ | ||
| - | < | + | < |
| + | sudo useradd -m -p $(openssl rand -base64 12) runner | ||
| + | </ | ||
| Добавьте необходимые директории для работы приложения odgassist: \\ | Добавьте необходимые директории для работы приложения odgassist: \\ | ||
| - | < | + | < |
| sudo mkdir /home/dumps && chmod 777 / | sudo mkdir /home/dumps && chmod 777 / | ||
| sudo mkdir / | sudo mkdir / | ||
| sudo mkdir / | sudo mkdir / | ||
| sudo mkdir / | sudo mkdir / | ||
| - | </ | + | </ |
| Скачайте необходимые файлы для работы приложения odgassist: \\ | Скачайте необходимые файлы для работы приложения odgassist: \\ | ||
| - | < | + | < |
| wget https:// | wget https:// | ||
| ; | ; | ||
| Строка 136: | Строка 143: | ||
| </ | </ | ||
| - | {{ : | + | {{ : |
| Добавьте в конфигурацию supervisor | Добавьте в конфигурацию supervisor | ||
| - | < | + | < |
| [program: | [program: | ||
| command=java -Xms5G -Xmx5G -jar app.jar -port 9090 | command=java -Xms5G -Xmx5G -jar app.jar -port 9090 | ||
| Строка 152: | Строка 159: | ||
| Обновите конфигурацию supervisor: \\ | Обновите конфигурацию supervisor: \\ | ||
| - | < | + | < |
| sudo supervisorctl reread && sudo supervisorctl update; | sudo supervisorctl reread && sudo supervisorctl update; | ||
| sudo supervisorctl status; | sudo supervisorctl status; | ||
| </ | </ | ||
| + | |||
| Статус приложения cuba должно быть RUNNING \\ | Статус приложения cuba должно быть RUNNING \\ | ||
| Строка 161: | Строка 169: | ||
| Затем переходите к следующему [[https:// | Затем переходите к следующему [[https:// | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== Установка в автоматическом режиме. ===== | ||
| - | \\ | ||
| - | Будут установлены следующие пакеты: | ||
| - | -Postgres 12 | ||
| - | -Nginx | ||
| - | -Supervisor | ||
| - | -Open jdk 8 | ||
| - | |||
| - | Скачайте файл автоматической установки через терминал сервера: | ||
| - | |||
| - | < | ||
| - | |||
| - | или по ссылке: | ||
| - | |||
| - | Разархивируйте документ и запустите его в терминале сервера: | ||
| - | |||
| - | '' | ||
| - | '' | ||
| - | '' | ||
| - | |||
| - | |||
| - | После выполнения скрипта подождите 5 минут пока производится настройка базы данных. \\ | ||
| - | Затем переходите к следующему этапу. | ||
| - | |||
| - | |||
| - | ====== Настройка приложения ====== | ||
| - | |||
| - | |||
| - | После выполнения скрипта перейдите по ссылке: | ||
| - | |||
| - | < | ||
| - | |||
| - | Отобразится форма авторизации: | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Войдите в систему. Логин admin, пароль: | ||
| - | |||
| - | Для работы приложения требуется добавить лицензионный ключ. \\ | ||
| - | Нажмите пункт меню " | ||
| - | В фильтре поиска вставьте имя ru.licen. | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Щелкните дважды по записи и введите ключ в открывшуюся форму: | ||
| - | |||
| - | < | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Добавить ключ, кол-во конкурентных пользователей: | ||
| - | |||
| - | {{: | ||
| - | |||
| - | < | ||
| - | B8yA7lLZQCcmg9dhqChbKM6LDlzzEuZQ/ | ||
| - | </ | ||
| - | После добавления ключа необходимо перезапустить приложение через терминал сервера: | ||
| - | '' | ||
| - | |||
| - | Ознакомится с интерфейсом приложения можно перейдя по ссылке: | ||
| - | [[https:// | ||
| - | |||
| - | Ссылка на скачивание приложения и необходимых файлов: | ||
| - | |||
| - | {{: | ||
| - | |||
| - | {{: | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | {{ : | ||
| - | |||
| - | === Настройка после установки === | ||
| - | ---- | ||
| - | |||
| - | После установки проверить время сохраняемых и изменяемых сущностей. Например добавить папку и проверить время ее создания или изменения. | ||
| - | |||
| - | ==== Назначенные задания ==== | ||
| - | |||
| - | |||
| - | Пункт меню " | ||
| - | Подпункт меню позволяет настраивать автоматическое выполнение рутинных задач. \\ | ||
| - | Например обработка документов, | ||
| - | |||
| - | // | ||
| - | |||
| - | <color brown> Описание: | ||
| - | После активации каждой задачи на нее назначается исполнитель. Исполнитель добавляется в список для рассылки оповещений о новых задачах. Рассылка осуществляется всем пользователям из списка каждые 60 секунд. | ||
| - | |||
| - | <color brown> | ||
| - | |||
| - | Нажмите пункт меню " | ||
| - | Заполните поля формы: \\ | ||
| - | Defined By: '' | ||
| - | Bean Name: '' | ||
| - | Method Nmae: '' | ||
| - | Sheduling Type: '' | ||
| - | Cron Expression: '' | ||
| - | Singleton: '' | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Пример содержимого письма: | ||
| - | {{: | ||
| - | |||
| - | // | ||
| - | |||
| - | <color brown> Описание: | ||
| - | Если у пользователя нет просроченных задач, то ему отправляется весь список задач каждый понедельник. \\ | ||
| - | Если есть просроченные задачи или задачи близкие к крайнему сроку, то оповещения отправляются каждое утро в 9:00. | ||
| - | |||
| - | <color brown> | ||
| - | Нажмите пункт меню " | ||
| - | Заполните поля формы: \\ | ||
| - | Defined By: '' | ||
| - | Bean Name: '' | ||
| - | Method Nmae: '' | ||
| - | Sheduling Type: '' | ||
| - | Cron Expression: '' | ||
| - | |||
| - | {{: | ||
| - | |||
| - | Пример содержимого письма: | ||
| - | |||
| - | {{: | ||
| - | |||
| - | **Отправка оповещений по действиям** | ||
| - | |||
| - | <color brown> Описание: | ||
| - | В список на отправку попадают отчеты: | ||
| - | * крайний срок выполнения сегодня | ||
| - | * крайний срок выполнения наступит через '' | ||
| - | * просроченные действия | ||
| - | |||
| - | '' | ||
| - | Настройка производится через пункт меню " | ||
| - | В поле " | ||
| - | |||
| - | {{: | ||
| - | |||
| - | |||
| - | |||
| - | <color brown> | ||
| - | Нажмите пункт меню " | ||
| - | Заполните поля формы: \\ | ||
| - | Bean Name: '' | ||
| - | Method Nmae: '' | ||
| - | |||
| - | {{: | ||
| - | |||
| - | |||
| - | |||
| - | **Описание полей формы настройки " | ||
| - | * Defined by - каким программным объектом реализуется задание. Возможные значения: | ||
| - | * Bean - задание реализуется методом бина Spring. Дополнительные атрибуты: | ||
| - | * Bean name - имя бина. Бин отображается в списке и доступен для выбора, | ||
| - | * Method name - метод интерфейса бина для выполнения. Метод должен либо не иметь параметров, | ||
| - | * Method parameters - параметры выбранного метода. Поддерживаются только параметры типа String. | ||
| - | * Class - задание представляет собой класс, реализующий интерфейс java.util.concurrent.Callable. Класс должен иметь открытый конструктор без параметров. Дополнительные атрибуты: | ||
| - | * Class name - имя класса | ||
| - | * Script - задание представляет собой скрипт Groovy. Скрипт выполняется через Scripting.runGroovyScript(). Дополнительные атрибуты: | ||
| - | * Script name - имя скрипта. | ||
| - | * User name - имя пользователя, | ||
| - | * Singleton - признак, | ||
| - | * Scheduling type - способ планирования задачи: | ||
| - | * Cron - с помощью Cron-выражения, | ||
| - | * секунда, | ||
| - | < | ||
| - | 0 0 * * * * - начало каждого часа каждого дня. | ||
| - | */10 * * * * * - каждые 10 секунд. | ||
| - | 0 0 8-10 * * * - в 8, 9 и 10 часов каждого дня. | ||
| - | 0 0/30 8-10 * * * - 8:00, 8:30, 9:00, 9:30 и 10 часов каждого дня. | ||
| - | 0 0 9-17 * * MON-FRI - каждый час с 9 до 17 по рабочим дням. | ||
| - | 0 0 0 7 1 ? - каждое Рождество в полночь. | ||
| - | </ | ||
| - | * Period - с помощью интервала между выполнениями. | ||
| - | * Fixed Delay - задача будет запускаться с указанной в Period задержкой после окончания предыдущего выполнения. | ||
| - | * Period - период или задержка запуска задания в секундах если Scheduling type установлен в Period или Fixed Delay. | ||
| - | * Start date - дата/ | ||
| - | Start date имеет смысл указывать только для " | ||
| - | * Timeout - время в секундах, | ||
| - | Для Singleton-задач в кластерном деплойменте рекомендуется всегда устанавливать таймаут в реалистичное значение. Если останавливается узел кластера, | ||
| - | * Time frame - в случае заданного Start date или Cron expression определяет временное окно в секундах, | ||
| - | Если Start date не указано, | ||
| - | * Start delay - задержка выполнения в секундах после запуска сервера и активации выполнения задач. Используйте данный параметр для тяжелых задач, если вы считаете что они тормозят запуск сервера. | ||
| - | * Permitted servers - список перечисленных через запятую идентификаторов серверов, | ||
| - | Для синглтон-заданий порядок перечисления серверов указывает их приоритет - первый имеет больший приоритет чем последний. Сервер с большим приоритетом перехватит выполнение синглтона следующим образом: | ||
| - | Приоритет серверов работает только в случае Scheduling type равного Period и | ||
| - | не указанного атрибута Start date. В противном случае, | ||
| - | одно и то же время, и перехват невозможен. | ||
| - | * Log start - признак регистрации факта запуска задания в таблице SYS_SCHEDULED_EXECUTION, | ||
| - | Если задание является синглтоном, | ||
| - | * Log finish - признак регистрации факта завершения задания в таблице SYS_SCHEDULED_EXECUTION, | ||
| - | Если задание является синглтоном, | ||
| - | * Description - произвольное текстовое описание задания. | ||
| - | Задание также имеет признак активности, | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
odg_assist_5.0/installation.1791205320.txt.gz · Последнее изменение: — denis
