Конфигурация "Тоника Медиа БД" предназначена для установки на собственных серверах радиостанций и включает в себя программные сервисы, служащие для создания и наполнения схемы данных и для взаимодействия приложений Программного комплекса Тоника с используемыми в нем медиа данными.
Программа работает в фоновом режиме и обеспечивает взаимосвязь других приложений комплекса. Прямого взаимодействия пользователя с Программой не осуществляется, возможно управление Программой через командную строку администратором системы.
Основные функции, которые обеспечивает Программа для других приложений Программного комплекса:
- взаимодействие приложений Программного комплекса Тоника с медиа данными и между собой,
- хранение медиа данных,
- поиск медиа данных,
- редактирование метаданных и свойств медиа данных,
- экспорт метаданных мультимедиа файлов (аудио, видео, графических), эфирных расписаний, шаблонов эфирных расписаний, сеток вещания, специфических свойств, параметров и настроек приложений, работающих с этими данными, в другие системы.
Обеспечивается одновременная параллельная работа неограниченного количества пользователей с учетом заданных прав доступа.
1. Установка необходимых компонентов и создание схемы данных
Руководство по установке Программы написано для операционной системы AstraLinux версии «Орел» Common Edition. Установка на другие операционные системы может иметь особенности, не рассмотренные в данном руководстве. Для помощи в установке Программы на другие ОС вы можете отправить запрос на почту info@trv-technology.ru .
Для большей части операций по установке и настройке Программы на ОС AstraLinux «Орел» Common Edition необходимо обладать привилегиями администратора (root).
1.1 Добавление расширенного репозитория Astra и установка Postgresql¶
Программа требует версию Postgreslq не ниже 14. Для ОС AstraLinux можно установить Postgreslq 14 из расширенного репозитория, для этого используйте команды:
sudo su
echo "deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 astra-ce" >> /etc/apt/sources.list
apt update
apt install postgresql
exit
1.2 Первоначальная настройка Postgresql¶
В файле /etc/postgresql/14/main/postgresql.conf необходимо настроить:
listen_addresses = '0.0.0.0'
unix_socket_directories = '/tmp'
port = 5432
В файле /etc/postgresql/14/main/pg_hba.conf необходимо настроить правила подключения к СУБД (добавить строку):
host all all all scram-sha-256
Перезапустить сервис:
sudo systemctl restart postgresql.service
Далее необходимо создать пользователя СУБД:
sudo su - postgres
createuser test_user1
psql -c "alter user test_user1 with password ‘<указать_пароль>’"
exit
1.3. Подключение PgAdmin к Postgres БД¶
Если PgAdmin не установлен, необходимо скачать его по ссылке https://www.pgadmin.org/download/pgadmin-4-apt/ и следовать указаниям установщика.
Далее необходимо добавить СУБД в PgAdmin:
Открыть PgAdmin, в дереве слева через контекстное меню выбрать:
Servers->Register->server...
На закладке Connection указать IP адрес Postgresql.
1.4. Создание схемы данных¶
Необходимо открыть PgAdmin и в дереве слева через контекстное меню выбрать зарегистрированный сервер.
В контекстном меню Databases->Create->Database... создать базу данных.
На созданной базе из контекстного меню открыть Query tool и выполнить tonika_mbd_create_pg.sql для создания схемы данных.
2. Установка и настройка Программы
2.1 Установка¶
В командной строке необходимо выполнить команду
sudo dpkg -i ./tonika-db-service_1.0.0_amd64.deb
В ОС сервис устанавливается как демон systemd. Проверить, что сервис успешно установился можно с помощью команды:
systemctl status tonika-db-service.service
Дополнительно можно проверить, что сервис слушает на указанном адресе и порту:
sudo netstat -tlpn
2.2 Настройка¶
Для настройки необходимо зайти в /usr/share/tonika/db-service/storage и отредактировать файл ServiceConfig-ServiceConfig.json
{
"key": "ServiceConfig",
"type": "ServiceConfig",
"value": {
"DbHost": "192.168.0.140", //адрес postgresql
"DbName": "test_db", //имя базы
"DbPassword": "пароль бд",
"DbPort": 5432, //порт postgresql
"DbType": "Postgresql",
"DbUser": "test_user1", //пользователь postgresql
"Driver": "",
"IpAddr": "0.0.0.0", //адрес сервиса
"SrvLogin": "admin", //пользователь для подключения к сервису Тоника
"SrvPassword": "admin", //пароль для подключения к сервису Тоника
"TcpServerPort": 9345 //порт сервиса
}
}
После изменения настроек сервиса необходимо перезапустить демон, выполнив команду:
sudo systemctl restart tonika-db-service.service
Программа работает в фоновом режиме и обеспечивает взаимосвязь других приложений комплекса. Прямого взаимодействия пользователя с Программой не осуществляется, возможно управление Программой через командную строку администратором системы.
При возникновении вопросов по эксплуатации Программы вы можете отправить запрос на почту info@trv-technology.ru
3.1 Команды управления
Администратору системы доступны следующие команды управления:
- Отображение текущего состояния Программы:
systemctl status tonika-db-service.service
- Перезагрузка Программы:
systemctl restart tonika-db-service.service
- Остановка Программы:
systemctl stop tonika-db-service.service
- Запуск Программы после остановки:
systemctl start tonika-db-service.service
3.2 Настройки Программы
Настройки Программы хранятся в /usr/share/tonika/db-service/storage/ServiceConfig-ServiceConfig.json .
Для изменения настроек необходимо отредактировать файл:
{
"key": "ServiceConfig",
"type": "ServiceConfig",
"value": {
"DbHost": "192.168.0.140", //адрес postgresql
"DbName": "test_db", //имя базы
"DbPassword": "пароль бд",
"DbPort": 5432, //порт postgresql
"DbType": "Postgresql",
"DbUser": "test_user1", //пользователь postgresql
"Driver": "",
"IpAddr": "0.0.0.0", //адрес сервиса
"SrvLogin": "admin", //пользователь для подключения к сервису Тоника
"SrvPassword": "admin", //пароль для подключения к сервису Тоника
"TcpServerPort": 9345 //порт сервиса
}
}
После изменения настроек необходимо перезапустить Программу.
Логи Программы по умолчанию записываются в /var/log/tonika_db_service.out.logs/
Поведение логов можно настроить в конфигурационном файле:
/usr/share/tonika/db-servicer/tonika_db_service.out.log_settings.json
{
"EntriesPerMinute": 10000,
"LogFolderPath": "/var/log/",
"LogSegmentSize": 1048576,
"LogStates": [
{
"TestLogStreamId": false
}
],
"LoggingLevel": 2,
"MaxDaysKeepAlive": 30,
"ThreadIdLogging": true,
"TimeLogging": true,
"TotalBytesLimit": 31457280,
"UseFilesFilter": true,
"WriteToDisk": true
}