... {toc} h2. Схема взаимодействия служб сбора статистики В биллинге имеются две схемы обработки статистики. Старая и новая. По у молчанию включена *старая* схема. h3. Поддержка IPFIX Carbon Billing 5 поддерживает несколько полей из ipfix, которые совпадают с протоколом Netflow v9, а именно: OBSERVATION_TIME_SECONDS и OBSERVATION_TIME_MILLISECONDS. В CISCO ASA эти поля называются NF_F_EVENT_TIME_MSEC и NF_F_EVENT_TIME Поддержка этих полей делает возможным работу с оборудованием, передающим Netflow в виде ipfix. h3. Старая схема: nf_collector + traf_reporter + bstatd Статистика приходит по протоколу netflow на порт 9996 и обрабатывается демоном nf_collector. Путь трафика от маршрутизатора, до детальной статистики довольно длинный: # Маршрутизатор шлет на биллинг NetFlow определенной версии на определенный порт биллинга (стандартный порт netflow: 9996)
|
# Биллинг слушает с помощью демона *nf_collector* этот порт и собирает статистику в память, и согласно конфигурационному файлу, агрегирует по SRC_IP и отправляет её в директорию */var/stat/raw/* для последующего переноса в детальную статистику, в названии файла содержится тайм-штамп (время в формате [unixtime|https://ru.wikipedia.org/wiki/Unix-время]) первого пакета; данные для [расхода абонента|CarbonBilling:Счетчики услуг. Вкладка "Расход".] отправляются в папку */var/dump/*, в названии файла содержится ip клиента, тайм-штамп. # Демон *bstatd* берёт агрегированную статистику из директории /var/stat/raw/, перемещает в папку */var/stat/agreg/trash*, преобразует формат и сохраняет в директорию */var/stat/binstat/*, разбитую по директориям: месяц/user_id, например 201501/297. В последствии эти данные отображаются в детальной статистике абонента.
|
... !nf_collector_old.png|border=0! h3. Новая схема: nfsen \-> nf_collector + traf_reporter (опционально + bstatd) Статистика приходит по протоколу netflow на порт 9996 и обрабатывается демоном nfcapd. !nf_collector_new.png|border=0! h2. Как настроить сохранение статистики? В большинстве случаев, для сохранения статистики достаточно стандартных настроек NAS и биллинга. Проверьте ваши настройки: # h4. Создайте NAS Статистика собирается только с IP адресов [NAS|Справочник NAS] созданных в биллинге. # h4. Настройте netflow на NAS В каждой [cтандартной схеме|Стандартные схемы] описана настройка netflow. Укажите IP адрес биллинга и порт(по умолчанию 9996). Загрузите конфигурацию на оборудование. # h4. Проверьте netflow поток NAS может отсылать IP пакеты с разных локальных IP адресов. Проверьте, что netflow поток приходит с верного адреса. {code:title=Команда для проверки} tcpdump -pnni any udp port 9996 -c 100 | cut -d ' ' -f 3 | sort -u {code} {code:title=Результат выполнения команды} tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on any, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes 100 packets captured 112 packets received by filter 0 packets dropped by kernel 192.0.2.1.9996 192.0.2.2.9996 {code} В примере на биллинг netflow поток приходит с двух NAS: 192.0.2.1.9996 и 192.0.2.2.9996 порт источника 9996. h2. Основные настройки Для настройки сбора статистики используется web интерфейс. !stat01.png|thumbnail,border=1,width=200! Далее !stat02.png|thumbnail,border=1,width=200! Основные настройки: * *Включить bstatd для детальной статистики (снято с поддержки)* \- Включает использование демона bstatd. В этом случае статистика собирается в формате bstatd её можно увидеть в Разделе [детальная статистика|Детальная статистика] в учётной записи абонента; * *Порт для сбора статистики* \- Порт, на котором будет приниматься netflow трафик. Стандартное значение *9996*; * *IP для дублирования статистики* \- IP для дублирования статистики. Используется для отправки статистики nfcapd в nf_collector. Стандартное значение 169.254.99.95; * *Порт для дублирования статистики* \- Порт для дублирования статистики. Стандартное значение 9995; * *Агрегировать статистику* \- Опция включает использование демона nf_collector; * *Сохранять сырую статистику в формате nfcapd для анализа nfsen* \- Опция включает сохранение сырой статистики в формате nfcapd. Далее её можно просматривать в web интерфейсе [nfsen|nfsen]; * *Отправлять агрегированную статистику на Биллинг* \- Включает подсчёт объёмов трафика для последующей тарификации в биллинге. В биллинг передаются значения ** [тип трафика|Тип трафика]; ** потреблённый объём; ** ID учётной записи; * *Адрес Биллинга для отправки статистики* \- IP адрес службы raddb_traf. Служба принимает значения по объёму трафика по протоколу radius. Стандартное значение 169.254.38.13; * *Порт Биллинга для отправки статистики* \- Порт службы raddb_traf. Стандартное значение 3813. h2. Настойки сохранения сырой статистики Так же web интерфейсе можно настроить параметры сохранения сырой статистики: !stat03.png|thumbnail,border=1,width=200! Настойки сохранения сырой статистики: * *IP адрес для доступа к API биллинга:* \- IP адрес для доступа к API биллинга. По умолчанию: 169.254.80.82. *Недоступно для редактирования*; * *Логин для доступа к API биллинга:* \- Логин для доступа к API биллинга. По умолчанию root. *Недоступно для редактирования*; * *Пароль для доступа к API биллинга:* \- Пароль для доступа к API биллинга. По умолчанию servicemode. *Недоступно для редактирования*; * *Порт для доступа к API биллинга:* \- Порт для доступа к API биллинга. По умолчанию 8082. *Недоступно для редактирования*; * *Объем данных для подтверждения валидности ip адреса клиента, мб.* \- Объем данных для подтверждения валидности ip адреса клиента, мб; * *Интервал экспорта детальной статистики (bstatd):* \- Интервал экспорта детальной статистики (bstatd). По умолчанию 30 секунд; * *Порог для экспорта статистики, мб.* \- Порог для экспорта статистики, мб. По умолчанию 512; * *Интервал проверки массива экспорта в bstatd, сек.* \- Интервал проверки массива экспорта в bstatd, сек. По умолчанию 300; * *Директория сохранения статистики для биллинга* \- Используется для сохранения статистики об объёмах трафика и дальнейшей передачи её в биллинг через службу reporter. По умолчанию /var/dump ; * *Экспорт статистики по времени в Биллинг, сек.* \- Интервал времени, в который служба reporter переносит данные по объёму трафика в БД биллинга. По умолчанию 1800 секунд. Чем меньше параметр, тем быстрее биллинг будет реагировать на учтённый объём трафика. Например, отключать услугу трафика. Вместе с тем уменьшение параметра приведёт к повышению нагрузки на систему. * *Уровень логгирования:* Уровень логирования nf_collector. Используется при поиске проблем. Доступные значения: ERROR, INFO, DEBUG. Значение по умолчанию ERROR; * *Использовать NAT в Netflow v9:* \- В сырую и агрегированную статистику будет сохраняться SNAT адрес; * *Директория сохранения статистики для bstatd:* \- Директория сохранения статистики для bstatd. По умолчанию /var/stat/raw ; * *Сохранять статистику для bstatd:* \- При включённой опции статистика будет сохраняться для обработки демоном bstat; * *Директория для сохранения:* \- Директория для сохранения статистики в формате nfcapd. По умолчанию /var/stat/raw ; * *Сохранять сырую статистику:* При включённой опции статистика будет сохраняться для обработки демоном nfcapd; * *Размер одного файла:* Размер одного файла для сохранения статистики. По умолчанию 50 Мб.
|