Следующая версия | Предыдущая версия |
dpi:bras_bng:replication [2024/09/26 15:29] – создано - внешнее изменение 127.0.0.1 | dpi:bras_bng:replication [2024/10/25 12:36] (текущий) – [Скрипт синхронизации профилей услуг] elena.krasnobryzh |
---|
- Остановка сервиса: <code bash>systemctl stop fastsrs</code> | - Остановка сервиса: <code bash>systemctl stop fastsrs</code> |
- Проверка логов сервиса: <code bash>journalctl -u fastsrs</code> | - Проверка логов сервиса: <code bash>journalctl -u fastsrs</code> |
| |
| =====Скрипт синхронизации профилей услуг===== |
| Скрипт синхронизирует профили услуг [[dpi:dpi_options:opt_filtration:filtration_ctrl#активация_управления_услуги_фильтрации_на_уровне_абонентов_-_subscriber_management|4 (фильтрация по черному списку)]], [[dpi:dpi_options:opt_capture:capt_mgmt#управление_профилем_по_умолчанию_5_услуга|5 (белый список и Captive Portal)]], [[dpi:dpi_options:opt_shaping:shaping_session|18 (полисинг по сессии и переопределение классов трафика)]] и [[dpi:dpi_components:platform:subscriber_management:policing_mng|полисинга]] между двумя DPI.\\ |
| Скрипт запускается на основном DPI, профили услуг на удаленном DPI будут приведены к виду профилей на основном DPI. Перенос профилей осуществляется с помощью команд ''fdpi_ctrl'' и удаленного доступа по ssh. |
| |
| Требования к системе: |
| * Ssh |
| * Bash |
| * Jq |
| * СКАТ DPI |
| * Rsync |
| |
| Логика работы скрипта:\\ |
| Скрипт получает текущий профиль услуги от главного устройства и затем отправляет его на указанный удаленный DPI. Затем скрипт подключается к удаленному DPI и получает данные для профилей, присутствующих на удаленном DPI, получает данные профиля на текущем DPI, сопоставляет их и удаляет профили, отсутствующие на основном DPI. |
| |
| ====Установка и управление==== |
| - Настроить авторизацию через сертификат: создать сертификат на главном сервере с помощью ''ssh-keygen -t ed25519'', проще всего использовать для авторизации учетную запись root. |
| - Загрузить {{:dpi:bras_bng:profile_sync.sh|скрипт}} на главный сервер и поместить его в каталог ''/usr/local/bin/'' |
| - Добавить разрешения для скрипта с помощью команды <code bash>chmod +x /usr/local/bin/profile_sync.sh</code> |
| - Настроить пользователя и IP удаленного сервера внутри скрипта. Пользователь должен иметь возможность записи в каталог ''/etc/dpi,'' самый простой вариант — использовать пользователя root. Также можно настроить другого пользователя с соответствующими правами. |
| - Настроить cron для выполнения скрипта с желаемыми интервалами **(опционально)**:<code bash>crontab -u root -e |
| 0 * * * * * /bin/bash /usr/local/bin/profile_sync.sh</code> |
| - Добавить псевдоним bash для запуска скрипта по желанию:<code bash>echo "alias dpi_sync='/bin/bash /usr/local/bin/profile_sync.sh'">> ~/.bashrc</code> |
| - Создать каталог ''/etc/dpi/service18'' и сохранить в нем все файлы service 18. |
| |
| Работа скрипта:\\ |
| Скрипт запускается crontab с указанными интервалами или вручную с помощью команды ''dpi_sync''. |
| |
| Обратите внимание, что если профиль сервиса применен к абоненту, он не будет удален. Также обратите внимание, что любые файлы, не сохраненные в папке ''service18'', не будут перенесены на удаленный DPI, и, таким образом, синхронизированный профиль услуги 18 не будет работать. При отсутствии alias ''dpi_sync'' cкрипт следует запускать через ''sudo bash /usr/local/bin/profile_sync.sh''. |