Конфигурация
Для каждого сервера ниже указаны: расположение ключевых файлов, основные сервисы, их назначение и примеры конфигураций. Пути и имена сервисов могут варьироваться в зависимости от дистрибутива Linux и выбранной версии ПО.
Сервер СУБД
На сервере СУБД разворачиваются следующие сервисы:
- СУБД PostgreSQL (ядро АСР Platex®: тарификатор, справочники, абонентская база и т.д.);
- pgbouncer (пул соединений для оптимизации подключений к СУБД);
- etcd (распределённое key‑value хранилище для хранения состояния кластера PostgreSQL);
- patroni (демон, управляющий кластером PostgreSQL).
Размещения и настройки по умолчанию:
1. СУБД PostgreSQL
| Параметр | Значение |
|---|---|
| Назначение | Ядро АСР Platex: тарификатор, справочники, абонентская база и т. д. |
| Основной системный пользователь | postgres |
| Порт по умолчанию | TCP 5432 |
Директория PG_DATA |
/var/lib/postgresql/16/main |
| Табличные пространства Platex | /var/lib/postgresql/16/platex |
| Файлы конфигурации | /etc/postgresql/16/main/pg_hba.conf, /etc/postgresql/16/main/postgresql.conf |
Важные замечания:
Поскольку PostgreSQL управляется Patroni, не рекомендуется изменять файлы конфигурации вручную.
Все изменения конфигурации должны выполняться через Patroni для сохранения согласованности кластера.
Проверка статуса сервиса:
$ sudo systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; preset: enabled)
Active: active ...
Перезапуск сервиса выполняется через Patroni (не напрямую через systemctl).
2. pgbouncer (пул соединений)
| Параметр | Значение |
|---|---|
| Назначение | Пул соединений. ЛК оператора и ЛК абонента взаимодействуют через пул для предотвращения превышения лимитов подключений к СУБД. |
| Основной системный пользователь | postgres |
| Порт по умолчанию | TCP 6432 |
| Файл конфигурации | /etc/pgbouncer/pgbouncer.ini |
| Файл списка пользователей (для подключения через пул) | /etc/pgbouncer/userlist.txt |
Команды управления:
- Проверка статуса:
$ sudo systemctl status pgbouncer
● pgbouncer.service - connection pooler for PostgreSQL
Loaded: loaded (/usr/lib/systemd/system/pgbouncer.service; enabled; preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart pgbouncer
- Остановка сервиса:
$ sudo systemctl stop pgbouncer
3. etcd (распределённое key‑value хранилище)
| Параметр | Значение |
|---|---|
| Назначение | Распределённое key‑value хранилище для хранения состояния кластера PostgreSQL. |
| Основной системный пользователь | etcd |
| Порт по умолчанию | TCP 2379, 2380 |
| Файл конфигурации | /etc/etcd/etcd.conf |
| Расположение данных | /var/lib/etcd |
Команды управления:
- Проверка статуса:
$ sudo systemctl status etcd
● etcd.service - etcd key-value store
Loaded: loaded (/etc/systemd/system/etcd.service; enabled; preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart etcd
- Остановка сервиса:
$ sudo systemctl stop etcd
4. patroni (управление кластером PostgreSQL)
| Параметр | Значение |
|---|---|
| Назначение | Демон, управляющий кластером PostgreSQL (автоматическое переключение мастер‑реплик, мониторинг состояния). |
| Основной системный пользователь | postgres |
| Порт по умолчанию | TCP 8008 |
| Файл конфигурации | /etc/patroni/config.yml |
Команды управления:
- Проверка статуса:
$ sudo systemctl status patroni
● patroni.service - Runners to orchestrate a high-availability PostgreSQL
Loaded: loaded (/usr/lib/systemd/system/patroni.service; enabled; preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart patroni
- Остановка сервиса:
$ sudo systemctl stop patroni
- Проверка состояния кластера PostgreSQL:
$ sudo patronictl -c /etc/patroni/config.yml list postgres_cluster
+ Cluster: postgres_cluster (7432695316554254795) -----------+
| Member | Host | Role | State | TL | Lag in MB |
+--------+------------+---------+-----------+----+-----------+
| db1 | 10.10.10.11 | Leader | running | 18 | |
| db2 | 10.10.10.12 | Replica | streaming | 18 | 0 |
| db3 | 10.10.10.13 | Replica | streaming | 18 | 0 |
+--------+------------+---------+-----------+----+-----------+
Сервер приложений + балансировщик
На сервере приложений развёрнуты следующие сервисы:
- HAProxy (балансировщик для перенаправления запросов к PostgreSQL);
- pgAgent (планировщик периодических заданий в PostgreSQL);
- Генератор печатных форм (генерация платёжных документов и договоров);
- Сервис рассылки Email (отправка электронных писем).
Размещения и настройки по умолчанию:
1. HAProxy
| Параметр | Значение |
|---|---|
| Назначение | Балансировщик для перенаправления запросов к PostgreSQL. |
| Основной системный пользователь | haproxy |
| Порты | 5432, 6432 |
| Файл конфигурации | /etc/haproxy/haproxy.cfg |
Команды управления:
- Проверка статуса:
$ sudo systemctl status haproxy
● haproxy.service - HAProxy Load Balancer
Loaded: loaded (/usr/lib/systemd/system/haproxy.service; enabled; preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart haproxy
- Остановка сервиса:
$ sudo systemctl stop haproxy
2. pgAgent (планировщик заданий)
| Параметр | Значение |
|---|---|
| Назначение | Планировщик периодических заданий в PostgreSQL (задания тарификации, выгрузки в 1С и т. д.). |
| Основной системный пользователь | pgagent |
| Порт по умолчанию | — |
| Файл конфигурации | /etc/pgagent.conf |
| Файл настройки подключения к БД | /home/pgagent/.pgpass |
Команды управления:
- Проверка статуса:
$ sudo systemctl status pgagent
● pgagent.service - PgAgent for PostgreSQL
Loaded: loaded (/etc/systemd/system/pgagent.service; enabled; preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart pgagent
- Остановка сервиса:
$ sudo systemctl stop pgagent
3. Генератор печатных форм
| Параметр | Значение |
|---|---|
| Назначение | Генерация печатных форм платёжных документов и договоров. |
| Основной системный пользователь | pgagent |
| Размещение | /usr/local/PLATEX/pgascripts |
| Требования | Xvfb.service, шрифты /usr/share/fonts/msttcore |
Компоненты:
bill_file_generator- исполняемый файл генератора платёжных документов.bill_file_generator.sh- wrapper для запуска задания через pgAgent.bill_file_generator.cfg- файл конфигурации генератора платёжных документов.report_file_generator- исполняемый файл генератора договоров.report_file_generator.sh- wrapper для запуска задания через pgAgent.report_file_generator.cfg- файл конфигурации генератора договоров.
Основные параметры файлов конфигурации:
| Параметр | Значение |
|---|---|
debug |
Режим отладки (0/1) |
host |
Хост СУБД (IP/FQDN) |
port |
Порт СУБД (5432) |
db |
Имя базы данных (platex) |
login |
Логин подключения к СУБД. Должен быть bill_file_generator для bill_file_generator, report_file_generator для report_file_generator. |
password |
Пароль для подключения к СУБД |
Запуск вручную (производится от пользователя pgagent):
$ /usr/local/PLATEX/pgascripts/bill_file_generator.sh
Или:
$ /usr/local/PLATEX/pgascripts/report_file_generator.sh
4. Сервис рассылки Email
| Параметр | Значение |
|---|---|
| Назначение | Отправка электронных писем. |
| Основной системный пользователь | pgagent |
| Размещение | /usr/local/PLATEX/pgascripts |
| Требования | Доступ к SMTP-серверу |
Компоненты:
mail_sender- исполняемый файл сервиса рассылки Email.mail_sender.sh- wrapper для запуска задания через pgAgent.mail_sender.cfg- файл конфигурации сервиса рассылки Email.
Основные параметры файла конфигурации:
| Параметр | Значение |
|---|---|
dbhost |
Хост СУБД (IP/FQDN) |
dbport |
Порт СУБД (5432) |
dbname |
Имя базы данных (platex) |
dbuser |
Логин подключения к СУБД (mail_sender). |
password |
Пароль для подключения к СУБД |
smtphost |
Адрес SMTP-сервера |
smtpport |
Порт для подключения к SMTP-серверу |
smtplogin |
Логин для подключения к SMTP-серверу |
smtppassword |
Пароль для подключения к SMTP-серверу |
Важные замечания (в случае использования облачных SMTP-серверов):
На SMTP-сервере должен быть создан ящик, который указан в
smtplogin.В настройках ящика должно быть разрешено подключение по SMTP и создан "пароль приложения".
Ящик, от имени которого ведется рассылка в биллинге, должен также присутсвовать на SMTP-сервере.
Запуск вручную (производится от пользователя pgagent):
$ /usr/local/PLATEX/pgascripts/mail_sender.sh
RADIUS-сервер
На RADIUS-сервере разворачиваются следующие сервисы:
- СУБД PostgreSQL (база для автономной работы RADIUS‑сервера);
- pgbouncer (пул соединений для оптимизации подключений к СУБД);
- Сервер RADIUS на базе FreeRADIUS (основной сервис аутентификации и авторизации).
Размещения и настройки по умолчанию:
1. СУБД PostgreSQL
| Параметр | Значение |
|---|---|
| Назначение | База для автономной работы RADIUS‑сервера. |
| Основной системный пользователь | postgres |
| Порт по умолчанию | TCP 5432 |
Директория PG_DATA |
/var/lib/postgresql/16/main |
| Файлы конфигурации | /etc/postgresql/16/main/pg_hba.conf, /etc/postgresql/16/main/postgresql.conf |
Команды управления:
- Проверка статуса:
$ sudo systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
Active: active (exited) ...
- Перезапуск сервиса:
$ sudo systemctl restart postgresql
- Остановка сервиса:
$ sudo systemctl stop postgresql
2. pgbouncer (пул соединений)
| Параметр | Значение |
|---|---|
| Назначение | Пул соединений. |
| Основной системный пользователь | postgres |
| Порт по умолчанию | TCP 6432 |
| Файл конфигурации | /etc/pgbouncer/pgbouncer.ini |
| Файл списка пользователей (для подключения через пул) | /etc/pgbouncer/userlist.txt |
Команды управления:
- Проверка статуса:
$ sudo systemctl status pgbouncer
● pgbouncer.service - connection pooler for PostgreSQL
Loaded: loaded (/usr/lib/systemd/system/pgbouncer.service; enabled; preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart pgbouncer
- Остановка сервиса:
$ sudo systemctl stop pgbouncer
3. Сервер RADIUS (на базе FreeRADIUS)
| Параметр | Значение |
|---|---|
| Назначение | RADIUS-сервер. |
| Основной системный пользователь | freerad |
| Порт по умолчанию | UDP 1812 (авторизация), UDP 1813 (аккаунтинг) |
| Файл конфигурации | /etc/freeradius/3.0/radiusd.conf |
| Файл списка клиентов (подключающихся устройств) | /etc/freeradius/3.0/clients.conf |
| Файл словаря атрибутов | /etc/freeradius/3.0/dictionary |
| Модуль Platex | /etc/freeradius/3.0/mods-config/perl/platex.pl |
| Настройки модуля Platex | /etc/freeradius/3.0/mods-available/perl |
| Настройки виртуального сервера | /etc/freeradius/3.0/sites-available/default |
| Лог-файл | /var/log/freeradius/radius.log |
Команды управления:
- Проверка статуса:
$ sudo systemctl status freeradius
● freeradius.service - FreeRADIUS multi-protocol policy server
Loaded: loaded (/lib/systemd/system/freeradius.service; enabled; vendor preset: enabled)
Active: active (running) ...
- Перезапуск сервиса:
$ sudo systemctl restart freeradius
- Остановка сервиса:
$ sudo systemctl stop freeradius
Порядок настройки и важные замечания:
Перезапуск сервисов:
- При любом изменении конфигурации FreeRADIUS обязательно перезапускайте сервис:
sudo systemctl restart freeradius - После перезапуска PostgreSQL (например, после изменения конфигурации) также перезапускайте
freeradius.
Требования для модуля Platex:
- Установите библиотеки:
libdbd-pg-perlиlibpq-dev - В директории
/etc/freeradius/3.0/mods-enabledдолжна быть символическая ссылка на/etc/freeradius/3.0/mods-available/perl:
$ sudo ln -s /etc/freeradius/3.0/mods-available/perl /etc/freeradius/3.0/mods-enabled/
- В директории
/etc/freeradius/3.0/sites-enabledдолжна быть символическая ссылка на/etc/freeradius/3.0/sites-available/default:
$ sudo ln -s /etc/freeradius/3.0/sites-available/default /etc/freeradius/3.0/sites-enabled/
Настройка пула соединений:
- Модуль Platex подключается к локальной СУБД PostgreSQL через пул коннектов (pgbouncer)
- По умолчанию может быть открыто от 10 до 20 соединений
- При увеличении размера пула настройте параметр max_connections в файле
/etc/postgresql/16/main/postgresql.conf.
Проверка работоспособности модуля Platex:
- Убедитесь, что скрипт
/etc/freeradius/3.0/mods-config/perl/platex.plимеет права на выполнение (chmod +x) - Проверьте логи (
/var/log/freeradius/radius.log) на наличие ошибок при запуске и обработке запросов.
Тестирование конфигурации:
- Перед перезапуском сервиса проверьте конфигурацию FreeRADIUS на синтаксические ошибки:
$ sudo freeradius -XC
- Протестируйте подключение клиента с помощью утилиты
radtest:
$ radtest username password localhost 1812 testing123
Сервер-коллектор
Сервер‑коллектор предназначен для сбора и предварительной обработки тарификационных данных (ПТД), в том числе по протоколам SNMP и Netflow с последующей загрузкой в АСР.
На коллекторе могуть разворачиваются следующие сервисы:
- Коллектор SNMP (сбор и обработка данных по протоколу SNMP);
- Коллектор Netflow (сбор и обработка данных по протоколу Netflow);
- Сервис загрузки CDR (телефония) в БД (загрузка файлов CDR в АСР).
Общие директории по умолчанию и компоненты:
| Директория | Назначение |
|---|---|
/usr/local/PLATEX/converters/bin |
Исполняемые файлы загрузчиков |
/usr/local/PLATEX/converters/etc |
Конфигурационные файлы загрузчиков |
/usr/local/PLATEX/converters/data/<ИМЯ ИСТОЧНИКА> |
Файлы в очереди на загрузку в БД |
/usr/local/PLATEX/converters/cdr/<ИМЯ ИСТОЧНИКА> |
Файлы, загруженные в БД |
/usr/local/PLATEX/converters/spool/<ИМЯ ИСТОЧНИКА> |
Сырые файлы, которые ещё не преобразованы для загрузки в БД |
/usr/local/PLATEX/converters/lib |
Библиотеки и зависимости |
/usr/local/PLATEX/converters/share |
Общие файлы |
/usr/local/PLATEX/converters/var |
Файлы процессов |
/usr/local/PLATEX/converters/tmp |
Временные файлы |
/var/log/platex |
Логи |
Вспомогательные скрипты:
/usr/local/PLATEX/converters/bin/Renamer.sh— вспомогательный скрипт для загрузки ПТД в БД;/usr/local/PLATEX/converters/bin/plx_converters.sh— дополнительные функции дляRenamer.sh
1. Коллектор SNMP
| Параметр | Значение |
|---|---|
| Назначение | Сбор ПТД по протоколу SNMP. |
| Основной системный пользователь | postgres, influxdb, telegraf |
| Порт по умолчанию | TCP 8086 (InfluxDB) |
| Конфигурационный файл InfluxDB | /etc/influxdb/config.toml |
| Конфигурационный файл Telegraf | /etc/telegraf/telegraf.conf |
Компоненты:
- InfluxDB — TSDB для хранения метрик, собранных по SNMP;
- Telegraf — агент для опроса конечных устройств SNMP;
/usr/local/PLATEX/converters/bin/InfluxSNMPExporter— файловый экспортер данных из InfluxDB для загрузки в БД;/usr/local/PLATEX/converters/etc/InfluxSNMPExporter.json— конфигурационный файл экспортера;/usr/local/PLATEX/converters/bin/InfluxSNMPParser— парсер‑загрузчик сформированных файлов в БД;/usr/local/PLATEX/converters/etc/InfluxSNMPParser.json— конфигурационный файл парсера‑загрузчика;/usr/local/PLATEX/converters/etc/Renamer_snmp.cfg— конфигурационный файл Renamer.sh для загрузки ПТД, собранных по SNMP.
Параметры конфигурации:
Параметры файла InfluxSNMPExporter.json:
| Параметр | Значение |
|---|---|
credentials.token |
Токен для подключения к InfluxDB |
credentials.org |
Имя организации (в терминологии InfluxDB) |
credentials.url |
Хост для подключения к InfluxDB |
credentials.bucket |
Бакет с данными |
credentials.filepath |
Директория для формирования файлов |
logging.file |
Лог‑файл (/var/log/platex/InfluxSNMPExporter.log) |
filtering.ips |
Список IP‑адресов хостов (если нужно сформировать файл только по конкретному хосту) |
Параметры файла InfluxSNMPParser.json:
| Параметр | Значение |
|---|---|
database.host |
Хост СУБД (IP/FQDN) |
database.port |
Порт СУБД (5432) |
database.database |
Имя базы данных (platex) |
database.user |
Логин подключения к СУБД (cdr_loader) |
database.password |
Пароль для подключения к СУБД |
fileExport.delimiter |
Разделитель (по умолчанию ";") |
fileExport.header |
true (если первая строка файла не является данными), false (если является) |
fileExport._comment |
Комментарий (пояснение к предыдущему параметру) |
logging.file |
Лог‑файл (/var/log/platex/InfluxSNMPParser.log) |
Алгоритм работы:
- Данные для расчёта ПП (полоса пропускания) собираются по протоколу SNMP агентом Telegraf с конечных устройств и сохраняются в InfluxDB (список устройств указан в конфиге Telegraf).
- В InfluxDB данные хранятся сутки. Раз в 5 минут через демон
crondзапускаетсяInfluxSNMPExporter, который формирует файл для загрузки данных в БД со статистикой за 5 минут. Данные попадают в папку/usr/local/PLATEX/converters/data/snmp. - Раз в пять минут через
crondтакже запускается загрузчик полученных файлов в базу — скриптRenamer.sh, который проверяет директорию/usr/local/PLATEX/converters/data/snmpи при наличии файлов рекурсивно запускает парсерInfluxSNMPParser. - Загруженный файл перемещается в папку
/usr/local/PLATEX/converters/cdr/snmp.
Настройка crontab (пример):
*/5 * * * * /usr/local/PLATEX/converters/bin/InfluxSNMPExporter -c /usr/local/PLATEX/converters/etc/InfluxSNMPExporter.json; /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_snmp.cfg
Полезные команды:
- Запуск вручную (от пользователя
postgres):
# Формирование файла (экспорт из InfluxDB)
$ /usr/local/PLATEX/converters/bin/InfluxSNMPExporter -c /usr/local/PLATEX/converters/etc/InfluxSNMPExporter.json
# Загрузка файлов в БД
$ /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_snmp.cfg
- Проверка статуса сервисов:
$ sudo systemctl status influxdb
● influxdb.service - InfluxDB is an open-source, distributed, time series database
Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor preset: enabled)
Active: active ...
$ sudo systemctl status telegraf
● telegraf.service - Telegraf
Loaded: loaded (/lib/systemd/system/telegraf.service; enabled; vendor preset: enabled)
Active: active ...
2. Коллектор Netflow
| Параметр | Значение |
|---|---|
| Назначение | Сбор ПТД по протоколу Netflow (поддерживаются IPv4 и IPv6). |
| Основной системный пользователь | postgres |
| Порт по умолчанию | UDP 9996 (диапазон обычно 9991–9999, зависит от количества источников трафика) |
Компоненты:
/usr/local/PLATEX/converters/bin/nfcapd— сборщик Netflow;usr/local/PLATEX/converters/bin/nfdump— утилита для преобразования сырых данных Netflow;/usr/local/PLATEX/converters/bin/nfdump2csv.sh— скрипты для запуска преобразования сырых данных;/usr/local/PLATEX/converters/bin/NetflowParser— парсер‑загрузчик преобразованных файлов Netflow в БД;/usr/local/PLATEX/converters/etc/NetflowParser.conf— конфигурационный файл парсера;/usr/local/PLATEX/converters/etc/Renamer_netflow_— конфигурационный файл.cfg Renamer.shдля загрузки Netflow с источника с определенным IP-адресом;/usr/local/PLATEX/converters/etc/Renamer_nfdump_— конфигурационный файл.cfg Renamer.shдля преобразования сырых данных Netflow с источника с определенным IP-адресом.
Параметры конфигурации:
Параметры файла NetflowParser.conf:
| Параметр | Значение |
|---|---|
dbname |
Имя базы данных (platex) |
dbport |
Порт СУБД (5432) |
dbhost |
Хост СУБД (IP/FQDN) |
dbuser |
Логин подключения к СУБД (cdr_loader) |
dbpassword |
Пароль для подключения к СУБД |
Алгоритм работы:
- Трафик Netflow собирается с помощью утилит пакета
nfdump. Со стороны источников сбора (маршрутизаторов) трафик должен быть направлен на IP коллектора на один из открытых портов UDP. Один процесс‑коллектор (nfcapd) прослушивает один порт (процессы запускаются черезsystemctl, под каждый источник настраивается отдельный процесс на отдельном порту. - Сырые данные собираются в директорию
/usr/local/PLATEX/converters/spool/<ИМЯ ИСТОЧНИКА>. Раз в час с помощью демонаcrondзапускается преобразователь сырых данных в файлы, пригодные для загрузки в БД. Это делается путём запуска скриптаRenamer.sh, который, в свою очередь, запускает скриптnfdump2csv.sh. Преобразованные данные помещаются в каталог/usr/local/PLATEX/converters/data/netflow. - После преобразования файла
Renamer.shзапускается ещё раз, но уже с вызовомNetflowParser. На данном этапе файл попадает в БД. - Загруженный файл сжимается с помощью
gzipи перемещается в папку/usr/local/PLATEX/converters/cdr/netflow/<ИМЯ ИСТОЧНИКА>.
Настройка crontab (пример):
5 * * * * /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_nfdump_<IP-адрес источника>.cfg; /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_netflow_<IP-адрес источника>.cfg
Полезные команды:
- Запуск вручную (от пользователя
postgres):
# Преобразование сырых файлов
$ /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_nfdump_<IP-адрес источника>.cfg;
# Загрузка файлов в БД
$ /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_netflow_<IP-адрес источника>.cfg
- Проверка статуса сборщика (в зависимости от порта):
$ sudo systemctl status platex_nfcapd_9996
● platex_nfcapd_9996.service - NFCapd 9996
Loaded: loaded (/etc/systemd/system/platex_nfcapd_9996.service; enabled; vendor preset: enabled)
Active: active (running) ...
3. Сервис загрузки CDR в БД
| Параметр | Значение |
|---|---|
| Назначение | Загрузка файлов CDR в БД. |
| Основной системный пользователь | postgres |
| Размещение | /usr/local/PLATEX/converters/bin |
Компоненты:
/usr/local/PLATEX/converters/bin/cdr_loader— исполняемый файл сервиса;/usr/local/PLATEX/converters/etc/cdr_loader_eltex.json— файл конфигурации для загрузки тестового формата CDR (на примере АТС Eltex).
Параметры конфигурации:
Параметры файла cdr_loader_eltex.json:
| Параметр | Значение |
|---|---|
Секция database |
Настройки подключения к БД |
Секция destParams |
Настройка представления для загрузки данных в БД |
Секция fileParams |
Параметры файла |
Секция fileColumns |
Параметры колонок файла |
Секция logging |
Настройка логирования |
debug |
Настройка режима отладки |
Полезные команды:
- Запуск вручную (от пользователя
postgresчерезRenamer.sh):
$ /usr/local/PLATEX/converters/bin/Renamer.sh /usr/local/PLATEX/converters/etc/Renamer_eltex.cfg
Веб‑сервер
Веб‑сервер предназначен для размещения:
- ЛК Оператора (интерфейс для оператора биллинга);
- ЛК Абонента (внешний интерфейс для абонентов);
- REST API.
Рекомендация: размещать ЛК Оператора и ЛК Абонента на разных виртуальных машинах (ВМ) для повышения безопасности и удобства администрирования. Каждый ЛК работает со своим экземпляром REST API.
Требования к SSL‑сертификатам:
- для ЛК Оператора — 2 внутренних домена (под UI и REST API);
- для ЛК Абонента — 2 внешних домена (под UI и REST API).
Настройки на серверах идентичны для обоих ЛК.
Технические требования:
- PHP версии не ниже 7.2;
- модули Apache:
mod_rewrite,mod_ssl; - пакет
wkhtmltopdf(для экспорта PDF‑отчётов); - SSL‑сертификаты для доменов.
Общие директории по умолчанию:
| Директория | Назначение |
|---|---|
/etc/apache2 |
Настройки веб‑сервера Apache |
/etc/ssl |
SSL‑сертификаты |
/var/www |
Директории веб‑сервера |
/var/log/apache2 |
Логи веб‑сервера |
Общие конфигурационные файлы по умолчанию:
| Файл | Назначение |
|---|---|
/etc/pgdbs |
Настройки подключения REST API к СУБД |
/etc/platex.conf |
Прочие настройки REST API (включая токен для подключения к dadata.ru) |
1. REST API
| Параметр | Значение |
|---|---|
| Назначение | REST API АСР Platex. |
| Основной системный пользователь | www-data |
| Размещение | /var/www/api |
| Порт по умолчанию | TCP 443 (HTTPS) |
| Расположение конфигурационного файла Apache | /etc/apache2/sites-available |
2. ЛК Оператора
| Параметр | Значение |
|---|---|
| Назначение | Веб‑интерфейс оператора биллинга. |
| Основной системный пользователь | www-data |
| Размещение | /var/www/operator |
| Порт по умолчанию | TCP 443 (HTTPS) |
| Расположение конфигурационного файла Apache | /etc/apache2/sites-available |
3. ЛК Абонента
| Параметр | Значение |
|---|---|
| Назначение | Веб‑интерфейс абонента. |
| Основной системный пользователь | www-data |
| Размещение | /var/www/abonent |
| Порт по умолчанию | TCP 443 (HTTPS) |
| Расположение конфигурационного файла Apache | /etc/apache2/sites-available |