Действия

URS. Руководство администратора: различия между версиями

Материал из Флора AI

Нет описания правки
Нет описания правки
Строка 109: Строка 109:
Для своей работы сервис использует порт 6180/tcp.
Для своей работы сервис использует порт 6180/tcp.
==='''Журналы работы'''===
==='''Журналы работы'''===
Для проверки состояния сервиса выполните <code>sudo systemctl status urs</code>. Журнал ошибок пишется в системный журнал, для удобства можно воспользоваться командой <code>sudo journalctl -u 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>sudo journalctl -u urs</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" — параметры подключения к базе данных с токенами авторизации и данными о звонках

Настройки интерфейса Флоры

Для правильной работы прокси сервера необходимо:

  • настроить для ролей пользователей разрешения для доступа к отчетам и конструктору создания отчетов (настройка->безопасность->роли):

Urs1.jpg

  • внести в настройки адрес страницы с отчетами и страницы конструктора отчетов:
     Адрес страницы с отчетами можно сформировать зайдя напрямую (по стандартному порту kibana) на страницу, выбрав 

и настроив параметры отчета, затем скопировать адрес страницы заменив в нем порт на 6180, а адрес на 127.0.0.1,

так как сервис URS рекомендуется располагать на одном сервере с вэб частью Флоры
     Адрес страницы  с конструктором отчетов можно сформировать аналогично адресу отчетов, выбрав

в качестве исходной страницы домашнюю страницу kibana

     Настройки располагаются по пути:

настройки->система->основные->настройка модулей

Urs2.jpg

Настройка kibana

В Kibana необходимо выставить часовой пояс UTC±0:00:

Urs3.jpg

Также в 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.