URS. Руководство администратора: различия между версиями
Материал из Флора AI
Нет описания правки Метка: визуальный редактор отключён |
Нет описания правки Метка: визуальный редактор отключён |
||
| Строка 109: | Строка 109: | ||
Для своей работы сервис использует порт 6180/tcp. | Для своей работы сервис использует порт 6180/tcp. | ||
==='''Журналы работы'''=== | ==='''Журналы работы'''=== | ||
Для проверки состояния сервиса выполните <code>sudo systemctl status urs</code>. Журнал ошибок пишется в системный журнал, для | Для проверки состояния сервиса выполните <code>sudo systemctl status urs</code>. Журнал ошибок пишется в системный журнал, для просмотра можно воспользоваться командой <code>sudo journalctl -u urs</code> | ||
Для увеличения информативности журналов можно выполнить от суперпользователя команду: | Для увеличения информативности журналов можно выполнить от суперпользователя команду: | ||
<code>sed -i 's/log-level error/log-level debug/g' /etc/systemd/system/urs.service && systemctl daemon-reload && systemctl restart urs.service</code> | <code>sed -i 's/log-level error/log-level debug/g' /etc/systemd/system/urs.service && systemctl daemon-reload && systemctl restart urs.service</code> | ||
При возникновении проблем в работе сервиса и недостаточной информативности журналов, можно запустить сервис вручную с привилегиями суперпользователя и выводом информации в stdout: | При возникновении проблем в работе сервиса и недостаточной информативности журналов, можно запустить сервис вручную с привилегиями суперпользователя и выводом информации в stdout: | ||
<code> | <code>systemctl stop urs.service && source /opt/urs/pve/bin/activate && cd /opt/urs/ && python3 api.py && deactivate</code> | ||
Завершить - <code>Ctrl + C</code> | |||
Журналы отправки данных в elasticsearch расположены по адресам: | |||
<code>/opt/urs/import/ucdialogs.py.log</code> | |||
<code>/opt/urs/import/ucinteractions.py.log</code> | |||
==='''Удаление и обновление'''=== | |||
Для удаления выполните команду: | |||
<code>/opt/urs/uninstall</code> | |||
Команда удалит сервис и рабочий каталог, включая все файлы конфигурации. Для обновления запустите скрипт установки как указано в п 4. При этом, обновление не изменяет файл params.conf. | |||
Версия от 08:07, 15 июня 2023
Общее описание
Сервис предназначен для обеспечения контроля доступа к отчетам и элементам интерфейса системы kibana на основании стандартных механизмов безопасности системы Флора.
Термины и определения
Universal Report Service (URS) – сервис проксирования запросов к отчетам kibana с авторизацией через Флору. Сервис позволяет фильтровать возвращаемые элементы интерфейса kibana согласно конфигурационным файлам
Требования к окружению
Для нормальной работы сервис должен быть установлен на сервере с вэб частью Флоры. В процессе работы сервис взаимодействует со следующими сервисами:
• вэб часть Флоры – настройка осуществляется в интерфейсе Флоры • Kibana – настраивается через файл параметров params.conf • elasticsearch - настраивается через файл параметров params.conf • MySQL - настраивается через файл параметров params.conf
Установка
Дистрибутив распространяется в виде универсального установочного пакета.
Пакет может быть установлен в онлайн режиме (при наличии доступа к репозиториям) или оффлайн (с предварительно собранными пакетами).
Для установки в оффлайн режиме сперва нужно запустить экземпляр скрипта на копии целевой системы (версия и ядро ОС) с доступом к репозиториям.
Для установки пакета запустить инсталлятор с требуемыми ключами. При запуске без ключей инсталлятор выдаст короткую справку.
Например
-Установить urs онлайн
./urs-X.XXX-universal.sh -i -on
-Установить urs оффлайн
./urs-X.XXX-universal.sh -i -off
-Собрать все пакеты для установки оффлайн urs и elasticsearch
./urs-X.XXX-universal.sh --build
-Собрать пакеты для установки оффлайн только elasticsearch
./urs-X.XXX-universal.sh -b -e
-Установить elasticsearch онлайн
./urs-X.XXX-universal.sh -i -e -on
-Установить elasticsearch оффлайн(необходимо предварительно собрать с ключами -b -e)
./urs-X.XXX-universal.sh -i -e -off
-Прописать параметры в конфиг файл elasticsearch
./urs-X.XXX-universal.sh -e -c ip_elastic_host
-Установить kibana оффлайн(не надо собирать с ключем -b)
./urs-X.XXX-universal.sh -i -k -off
-Прописать параметры в конфиг файл kibana
./urs-X.XXX-universal.sh -k -c ip_kibana_host ip_elastic_host
-Импортировать шаблоны kibana
./urs-X.XXX-universal.sh -k -it ip_kibana_host
-Скопировать внутренний архив рядом со скриптом не распаковывая в папку
./urs-X.XXX-universal.sh --extract
-Распаковать внутренний архив рядом со скриптом в каталог
./urs-X.XXX-universal.sh -x -d
-Запаковать архив в скрипт
./urs-X.XXX-universal.sh --pack urs-offline.tgz
-Сжать каталог и запаковать архив в скрипт
./urs-X.XXX-universal.sh --pack -d archive
-Удалить внутренний архив из скрипта
./urs-X.XXX-universal.sh --null
Не забудьте включить сервис в системе и запустить команду:
.sudo systemctl enable urs.service && sudo systemctl start urs.service
Удостоверьтесь, что сервис стартовал. Разрешите доступ к порту 6180 на нужном интерфейсе по протоколу tcp.
Настройка
Файл params.conf
Основной файл конфигурации сервиса URS - /opt/urs/params.conf состоит из нескольких разделов:
- "proxy" – основной раздел
| Параметр | Назначение |
|---|---|
| ip,port | адрес и порт на котором сервис слушает запросы |
| useAuth | для совместимости с устаревшими версиями ПО, которые не поддерживают авторизацию (принимает значение 0 в таком случае) |
| replace | раздел настроек фильтров, состоит по умолчанию с 3 подразделов: |
| show_module_reportbuilder | подключает к страничке создания отчетов стили из файла "admin.css" |
| kbnGlobalNav-isOpen | в этом разделе отключается панель навигации kibana |
| show_module_reports | подключает к страничке с отчетами стили из файла "user.css" |
- "cron" - раздел с настройками периодичности отправки данных о звонках в elasticsearch (по умолчанию ежедневно, каждые 3600 секунд)
- "kibana" — адрес и порт сервиса Kibana. Как правило располагается на другом сервере.
- "elasticsearch" — адрес и порт сервиса elasticsearch. Как правило располагается на другом сервере.
- "MySQL" — параметры подключения к базе данных с токенами авторизации и данными о звонках
Настройки интерфейса Флоры
Для правильной работы прокси сервера необходимо:
- настроить для ролей пользователей разрешения для доступа к отчетам и конструктору создания отчетов (настройка->безопасность->роли):
- внести в настройки адрес страницы с отчетами и страницы конструктора отчетов:
Адрес страницы с отчетами можно сформировать зайдя напрямую (по стандартному порту kibana) на страницу, выбрав
и настроив параметры отчета, затем скопировать адрес страницы заменив в нем порт на 6180, а адрес на 127.0.0.1,
так как сервис URS рекомендуется располагать на одном сервере с вэб частью Флоры
Адрес страницы с конструктором отчетов можно сформировать аналогично адресу отчетов, выбрав
в качестве исходной страницы домашнюю страницу kibana
Настройки располагаются по пути:
настройки->система->основные->настройка модулей
Настройка kibana
В Kibana необходимо выставить часовой пояс UTC±0:00:
Также в Kibana необходимо импортировать файлы dashboard-calls.json
и index-patterns.json из комплекта поставки URS.
Настройка отправки информации в elasticsearch
В URS можно настроить переиодичность отправки. Периодичность может быть не чаще чем раз в час, чтобы не нагружать систему.
Протоколы и порты
Для своей работы сервис использует порт 6180/tcp.
Журналы работы
Для проверки состояния сервиса выполните sudo systemctl status urs. Журнал ошибок пишется в системный журнал, для просмотра можно воспользоваться командой sudo journalctl -u urs
Для увеличения информативности журналов можно выполнить от суперпользователя команду:
sed -i 's/log-level error/log-level debug/g' /etc/systemd/system/urs.service && systemctl daemon-reload && systemctl restart urs.service
При возникновении проблем в работе сервиса и недостаточной информативности журналов, можно запустить сервис вручную с привилегиями суперпользователя и выводом информации в stdout:
systemctl stop urs.service && source /opt/urs/pve/bin/activate && cd /opt/urs/ && python3 api.py && deactivate
Завершить - Ctrl + C
Журналы отправки данных в elasticsearch расположены по адресам:
/opt/urs/import/ucdialogs.py.log
/opt/urs/import/ucinteractions.py.log
Удаление и обновление
Для удаления выполните команду:
/opt/urs/uninstall
Команда удалит сервис и рабочий каталог, включая все файлы конфигурации. Для обновления запустите скрипт установки как указано в п 4. При этом, обновление не изменяет файл params.conf.