Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  1. Обновляем  список пакетов

    Блок кода
    languagebash
    themeDJango
    # apt update


  2. Устанавливаем пакет 

    Блок кода
    languagebash
    themeDJango
    # apt install eltex-sorm2-replicator


  3. После установки пакет нужно настроить и перезапустить сервис. При обновление пакета требуется ручной запуск. Конфигурационный файл лежит в директории /etc/eltex-sorm2-replicator/eltex-sorm2-replicator.json

    Блок кода
    languageyml
    themeDJango
    {
      "acct.address" : "0.0.0.0",
      "acct.port" : [41813],
      "acct.receive.buffer.byte" : 134217728,
    
      "web.monitoring.port" : 7071,
    
      "cluster.enable" : false,
      "cluster.eventBusPort" : 5802,
    
      "radius" : {
        "url": "jdbc:mysql://localhost/radius?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&socketTimeout=5000&autoReconnect=true&useSSL=false",
        "user": "javauser",
        "password": "javapassword",
        "max_pool_size": 16
      },
    
      "sql.ems" : {
        "url": "jdbc:mysql://localhost/eltex_ems?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&socketTimeout=5000&autoReconnect=true&useSSL=false",
        "user": "javauser",
        "password": "javapassword",
        "max_pool_size": 16
      },
    
      "sql.wireless" : {
        "url": "jdbc:mysql://localhost/wireless?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&socketTimeout=5000&autoReconnect=true&useSSL=false",
        "user": "javauser",
        "password": "javapassword",
        "max_pool_size": 16
      },
    
      "mongosql.sorm2" : {
        "connection_stringurl": "mongodbjdbc:mysql://localhost:27017/eltex_sorm2?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&socketTimeout=5000&autoReconnect=true&useSSL=false",
        "user": "javauser",
        "password": "javapassword",
        "max_pool_size": 16
      },
    
      "mongosql.pcrf" : {
        "connection_stringurl": "mongodbjdbc:mysql://localhost:27017/eltex_pcrf?useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000&socketTimeout=5000&autoReconnect=true&useSSL=false",
        "user": "javauser",
        "password": "javapassword",
        "max_pool_size": 16
      },
    
      "global.clients" : {
        "enabled" : false,
        "clients" : [
          { "host" : "127.0.0.1", "port" : 11813, "secret": "eltex" }
        ]
      },
    
      "sorm3" : {
        "enabled" : true,
        "host" : "127.0.0.1",
        "port" : 21,
        "period_s" : 900,
        "user" : "ftp",
        "pass" : "ftp",
        "acct_dir" : null
      },
    
      "sorm2" : {
        "enabled" : true,
        "federated" : false
      },
    
      "dpi.step.logic" : {
        "enabled" : false,
        "verbose" : false
      }
    }
    
    


  • Блок «radius» содержит адрес подключения к БД radius в MySQL;
  • Блок «sql.ems» содержит адрес подключения к БД eltex_ems в MySQL;
  • Блок «sql.wireless» содержит адрес подключения к БД wireless в MySQL;
  • Блок «mongoБлок «sql.sorm2» содержит адрес подключения к БД sorm2 в MongoDBMySQL;
  • Блоке «mongoБлоке «sql.pcrf» содержит адрес подключения к БД pcrf в MongoDBMySQL;
  • Блок «global.clients» активирует пересылку входящего потока RADIUS accounting на дополнительный сервер;
  • Блок «sorm3» содержит настройки для подключения к FTP серверу;
  • Блок «sorm2» активирует пересылку копии RADIUS accounting на региональные съемники. Активация требуется если оригинальные RADIUS accounting не проходит через съемник.
    • "federated" :  true/false, при включенной опции ищет съемники которые были заданны в личном кабинете в "Настройки" , затем вкладка "СОРМ-2
  • Блок «dpi.step.logic» активирует обогащение траффика для DPI.
    • enabled=false - не вычитывает SSID, высылает все пакеты, не подставляет новые статусы
      enabled=true - вычитывает SSID, подcтавляет аргументы dpi и cms в radius

    • verbose=false - высылает пакет только если dpi = 1 (точка и ссид)
      verbose=true - всегда высылает пакет, в пакете значения dpi 0 или 1


Для корректной работы модуля нужно изменить адреса подключения к БД и FTP серверу. Для подключения к кластеру MongoDB нужно указать адреса серверов через запятую, пример:

"connection_string": "mongodb://100.110.22.36:27017,100.110.22.37:27017/pcrf?replicaSet=WIFI"

Eltex-sorm2-replicator распределяет файл в папках FTP сервера по дням, чтобы не столкнуться с проблемой Все файлы в одной директории на FTP. Имя директории имеет вид yyyyMMdd (годМесяцДень). Если бы все файлы сохранялись в одной директории, то рано или позно мы бы уперлись в Maximum number of files per directory, значение которого варьируется в зависимости от типа файловой системы, или банальные неудобства (задержки) при навигации по файлам. Таким образом путь к файлу будет иметь вид yyyyMMdd/file.csv. Корневую директорию для файлоы на FTP сервере можно изменить в параметре acct_dir. Например, acct_dir: ACCO. Тогда путь к файлу будет иметь вид ACCO/yyyyMMdd/file.csv. По умолчанию acct_dir: null, путь к файлу yyyyMMdd/file.csv.

...

Для активации подключения к БД mongo SORM2 и подключения к API интерфейсу Eltex-sorm2-replicator, в конфигурационном файле "radius_nbi_config.txt" необходимо исправить следующие строки:

...

Нужно активировать подключение к БД mongo SORM2 и подключение к API интерфейсу Eltex-sorm2-replicator

Блок кода
languagebash
themeDJango
#Eltex# Eltex.SORM2.replicator MongoDBMariaDB 'sorm2' connect*
sorm2.mongodbjdbc.enabled=truedriver=org.gjt.mm.mysql.Driver
sorm2.mongodbjdbc.uridbUrl=mongodbjdbc:mysql://localhost:270173306/eltex_sorm2
#Eltex.?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf8&relaxAutoCommit=true&connectTimeout=5000
sorm2.jdbc.username=javauser
sorm2.jdbc.password=javapassword
sorm2.jdbc.maxPoolSize=48
sorm2.jdbc.inUse=yes


# Eltex.SORM2.replicator host to use API*
sorm2.enabled=true
sorm2.url=http://192100.168110.1073.21180:7071
sorm2.username=admin
sorm2.password=password
#Для подключения к кластеру MongoDB нужно указать адреса серверов через запятую, пример:
sorm2.mongodb.uri=mongodb://10.62.18.36:27017,10.62.18.37:27017/sorm2?replicaSet=WIFI


Для применения конфигурации нужно перезапустить Tomcat7

...

nbi:

Блок кода
languagebash
themeDJango
sudo service eltex-radius-nbi restart

5.6 Настройка IP-адресов региональных съемников в ЛК B2B

...

Далее заполняем все поля.  "Кодовое слово" - кодовое слово radius, будет передаваться вместе с атрибутами radius. Данные профилей сохраняются в коллекцию MongoDB сохраняются в  БД eltex_sorm2.profiles.

1. "Имя" : имя съемника, обязательный параметр, после сохранения его изменить нельзя.

...

и нажимаем "Сохранить". Данные привязок профилей к доменам сохраняются MongoDB в БД eltex_sorm2.links. Один съемник может быть использован многократно в различных доменах.

...

Предупреждение
titleВажно!

Большая часть параметров кэшируется и инвалидируется только по времени. 

таблицаtime to live (TTL) в кэшеинвалидация кэша по запросу
MongoDB sorm2eltex_sorm2 sorm2.profiles1200 сevict после редактирования, удаления в NBI
MongoDB eltex_sorm2.links1200 сevict после добавления, удаления в NBI
информация об объекте (ap domain, dpi, cms)
MySQL eltex-ems.ELTEX_OBJ_GEO
600 cнет
информация о домене (region_id)
MySQL eltex-ems.DOMAINS, DOMAIN_PARAMS
600 снет
подсети (ap domain)
MongoDB eltex_pcrf.subnets
600 снет
ssid (dpi)
MySQL wireless.SSID, SSID_PARAMS
600 cнет

Там где инвалидации кэша по запросу нет, запись будет жить со старыми параметрами в течение TTL, потом удалиться и при следующем обращении заново закачается из БД с новыми параметрами. То есть параметры DPI например, применяются не мгновенно, а в ближайшие 600 секунд.

...