Документация по версии 1.4

Материал из ExpertBilling
Перейти к: навигация, поиск

Шаблон:H:h


Введение

Руководство будет полезно как профессионалам, имеющим опыт работы с биллинг-системами, так и пользователям, впервые сталкивающимся с подобными программными комплексами.

Для опытных пользователей порекомендуем ознакомиться с особенностями развертывания системы (раздел «Установка и предварительная настройка»), а затем обратиться к разделу «Решение задач», при необходимости уточняя детали в соответствующих подразделах раздела «Использование системы».

Если вы ранее не занимались настройкой и эксплуатацией подобных систем, советуем вам продолжить чтение по порядку. В случае необходимости, уточняйте значение терминов в глоссарии («Приложение 1»).

Для каждого из разделов системы («Тарифные планы», «Периоды тарификации» и т.п.) описываются особенности их реализации и назначение, интерфейс, а также при необходимости приводятся примеры использования возможностей Expert Billing Admin. Раздел «Решение задач» целиком состоит из пошаговых руководств по решению типовых задач.

Общая информация о биллинг-системах

В современном мире ресурсы каналов интернет-доступа остаются ограниченными, поэтому поставщики услуг (провайдеры) стремятся добиться максимальной эффективности использования доступных интернет-мощностей.

Достичь высокой эффективности невозможно без гибкого управления потреблением интернет-услуг. Для учета и контроля объемов потребленных услуг интернет-доступа используются специализированные системы, которые на основе анализа сетевой статистики отслеживают активность (трафик) каждого пользователя и, в соответствии с установленными правилами, преобразуют её в единицы тарификации (как правило, деньги). Этот процесс называется тарификацией.

Системы биллинга, к которым принадлежит и Expert Billing System, производят учет и тарификацию предоставляемых услуг (в данном случае ­­- интернет-трафика), а также автоматизируют процесс выставления клиентам счетов для оплаты.

Биллинг-системы бывают очень разными и могут классифицироваться по различным признакам: методам авторизации, принципам построения (модульности), особенности сбора статистики и управления серверами доступа.

Один из вариантов классификации современных биллинг-систем представлен на схеме:

Ebs 020.gif

В случае с использованием авторизации пользователей, отличной от RADIUS, практически всегда в биллинг встраиваются собственные средства снятия, обработки и записи наработанной статистики. Если же NAS (Network Access Server) и сам биллинг находятся на разных системах, то для снятия статистики используются проверенные средства: alive-пакеты от NAS-сервера, протокол SNMP (Simple Network Monitoring Protocol) либо NetFlow. Использование протокола NetFlow (протокол, разработанный компанией Cisco специально для мониторинга сети) позволяет получать подробнейшую информацию о сетевой активности пользователей. Данный способ сбора статистики является основным для построения мощных и отказоустойчивых систем.

ExpertBilling относится к виду биллинг-систем с логически разделённой системой управления доступом и системой тарификации, хотя они и могут находиться на одном физическом сервере.

Системные требования

Минимальные системные требования позволят запустить биллинг-систему со всеми компонентами и обеспечат работу систем тарификации и управления доступом при объёме абонентской базы в среднем до 100-150 человек. Запись сырой статистики при этом рекомендуется отключить опцией write_flow = False в файле конфигурации ebs_config.ini

Рекомендуемая конфигурация(см.ниже) подойдёт для абонентской базы до 5000 человек при активном использоваии тарификации трафика и лимитов.

Оптимальная конфигурация компьютера для системы Expert Billing System зависит от ширины обслуживаемого биллингом канала и количества активных пользователей.

При решении типовых задач рекомендуется использовать компьютер с процессором, работающем на тактовой частоте не ниже 1 ГГц, снабженный не менее чем 512 МБ оперативной памяти.

Требования к объёму свободного места на диске напрямую зависят от того, насколько активно эксплуатируется система и требуется ли вам хранить NetFlow статистику. В случае хранения этой статистики мы рекомендуем использовать винчестеры объемом от 80 ГБ.

Обратите внимание: требования к объему свободного дискового пространства вызваны тем, что база данных при активном использовании биллинг-системы может значительно увеличиваться в объеме. Для корректной работы ExpertBilling необходимо обеспечить достаточное количество свободного дискового пространства на разделе с базой данных.

Поддерживаемые ОС

  • Debian 5.1-6 32-bit
  • Ubuntu 9.04-10.10 32-bit. Рекомендуется 10.04
  • Ubuntu Server 9.04-10.10 32-bit - Рекомендуется 10.04
  • Другие операционные системы на кодовой базе Debian/Ubuntu 32-bit

Использование 64-битных операционных систем не рекомендуется по причине наличия в составе биллинга встроеного оптимизатора, который не будет работать на 64-битной операционной системе. Тем самым будет наблюдаться падение производительности до 300% на некоторых задачах.

Минимальные системные требования

  • CPU: 1GHz
  • RAM: 512MB
  • HDD: 20GB

Рекомендуемая конфигурация

  • CPU: 2-4 ядерный процессор от 2 GHz на ядро
  • RAM: 4GB
  • HDD: >250GB

Обзор возможностей

Обзор возможностей

Структурно-логическая схема работы системы

Expert Billing System построена на базе устоявшейся схемы с разделёнными компонентами авторизации, сбора статистики и ядром, отвечающим за логику работы системы. Структура биллинг-системы позволяет легко расширять её за счёт установки дополнительных RADIUS-серверов и коллекторов статистики.

Ebs 029.png

Expert Billing System состоит из серверной и клиентской частей. Серверная часть включает следующие компоненты:

  • Модуль core
  • Модуль rad
  • Модуль nf
  • Модуль nfroutine
  • Модуль rpc
  • Веб-кабинет для пользователей

Модуль core – ядро биллинга, отвечающее за бизнес-логику (тарификация, списание средств, управление состоянием пользователей и др.)

Модуль rad предназначен для взаимодействия с сервером доступа по протоколу RADIUS.

Модуль nf используется в качестве коллектора NetFlow v5 статистики.

Модуль nfroutine производит агрегацию и обработку собранной модулем nf статистики о сетевой активности пользователей.

Модуль rpc предоставляет интерфейс для доступа к ядру биллинга извне (интерфейс администратора, интерфейс кассира, некоторые функции веб-кабинета).

Веб-кабинет пользователя представляет собой веб-приложение, написанное наязыке Python с использованием веб-фреймворка Django.

Клиентская часть Expert Billing System включает следующие компоненты:

  • Интерфейс администриратора Expert Billing Admin
  • Интерфейс кассира

Интерфейс администратора Expert Billing Admin является основным интерфейсом администратора для управления Expert Billing System, она выполнена в качестве отдельного приложения.

Интерфейс кассира также является отдельным приложением, которое позволяет управлять счетами пользователей (списание средств, пополнение счета и др.), переводить пользователей на другие тарифные платы и просматривать статистику по лимитам и остатку предоплаченного трафика.

Структура директорий

 /opt/ebs/
       data/
           dicts/ - RADIUS словари
           ebscab/ - копия веб-кабинета
           fonts/ - шрифты, используемые ядром для генерации графиков
           init.d/ - init-скрипты
           log/ - каталог с лог-файлами
              core_log - лог-файл процесса core(ядра)
              rad_log - лог-файл сервера RADIUS
              nf_log - лог-файл NetFlow коллектора
              nfroutine_log - лог-файл агрегатора и тарификатора NetFlow 
              rpc_log - лог-файл rpc-сервера
           modules/ - каталог системных библиотек
           nf_dump/ - каталог буферного хранения NetFlow статистики.
           scripts/ - каталог с дополнительными скриптами
           sql/ - каталог с первоначальным дампом базы данных
           temp/ - каталог хранения NetFlow статистики
           ebs_config.ini - основной файл настроек биллинг-системы
           ebs_config_runtime.ini - дополнительный внутрисистемный файл настроек биллинг-системы
           core - ядро биллинг-системы
           rad - радиус сервер
           nf - NetFlow коллектор
           nfroutine - NetFlow агрегатор и тарификатор
           rpc - RPC-сервер
           license.lic - файл лицензии
       web/
          ebscab/
                 settings.py - файл настроек веб-кабинета

Настройка действий на сервере доступа

Настройка действий на сервере доступа.


Принцип работы с IPN абонентами(Не актуально для 1.4. В работе.)

ExpertBilling позволяет обслуживать как коммутируемые(PPTP/PPPOE/HoSpot), так и некоммутируемые соединения. В случае работы с IPN(IP Network) тарифными планами, или PPPOE/PPTP тарифными планами с дублированием IPN действий схема работы системы выглядит следующим образом.

Ipn alg.png


Схема работы с IPN тарифными планами

При создании абонента система посылает на сервер доступа команду "Добавить абонента" из настроек сервера доступа в интерфейсе администратора. Команда "Добавить абонента" является шаблоном, в котором служебные слова $access_type, $password, $username, $user_id, $account_ipn_ip, $account_vpn_ip, $account_mac_address заменяются соответствующими значениями. Резальтатом работы команды должны стать добавленные, но неактивированные записи.

Установка скорости производится аналогичным способом через NAS Actions. В дополнение к подстановочным символам из команды на добавление абонента здесь используются $max_limit_tx, $max_limit_rx, $burst_limit_tx, $burst_limit_rx, $burst_treshold_tx, $burst_treshold_rx, $burst_time_tx, $burst_time_rx, $priority, $min_limit_tx, $min_limit_rx. Следуюет обратить внимание, но то, что перед добавлением записи, система должна перестраховаться и удалить уже возможно существующую с таким же идентификатором. Биллинг посылает команду на установку/изменение скорости в случае если скорость ещё не установлена или изменилась.

Активация абонента должна приводить к активации добавленных на сервер доступа записей. Активация происходит в том случае, если абонент не активен и у него нет блокировок или ограничений по размеру баланса. Для активации используется соответствующий NAS Actions из параметров сервера доступа. В данной команде можно использовать те же подстановочные символы, что и для добавления абонента.

Деактивация абонента должна приводить к деактивации добавленных на сервер доступа записей. Деактивация происходит в том случае, если абонент активен и у него появилась одна или несколько блокировок.

Удаление абонента происходит при его удалении из системы. Используемые подстановочные символы аналогичны команде добавления.Обратите внимание, что команда удаления с сервера доступа так же выставляет в системе статус "Не активен на сервере доступа".

Состояние каждого абонента вы можете контроллировать через EBS Admin в списке абонентов.

Account ipn status.png


Статус аккаунта

Четыре иконки напротив каждого абонента означают (слева-направо) "У клиента достаточно средств на лицевом счету для работы в текущем расчётном периоде", "У клиента нет блокировок по лимитам", "Пользователь неактивен на NAS", "Пользователь не добавлен на NAS".

ExpertBilling позволяет использовать IPN действия и для PPTP/PPPOE тарифных планов.

Pptp pppoe ipn.png


Схема использования IPN действий для PPTP/PPPOE тарифных планов.

IPN действия для PPTP/PPPOE тарифных планов отличаются от работы с IPN тарифными планами лиш тем, что настройки скорости для абонентов устанавливаются после каждой RADIUS авторизации.

Использование IPN действий целесообразно тогда, когда вы не хотите запрещать PPTP/PPPOE абонентам авторизацию при их блокировке, однако хотите закрыть доступ к определённым ресурсам или перенаправлять всех таких абонентов на какие-то ресурсы.

Установка и начальная настройка

Установка биллинга

Инструкция по установке серверной части биллинг-системы ExpertBilling 1.4

Установка веб-кабинета

Инструкция по установке веб-кабинета.

Установка и настройка дополнительных скриптов

Вспомогательные скрипты и утилиты

Установка клиентской части

Защита от нелегального копирования =

Внимание!!! Expert Billing System является продуктом интеллектуального труда. Его нелегальное распространение и использование преследуется по закону.

Каждый серверный компонент Expert Billing System при установке привязывается к аппаратной конфигурации сервера. Это означает, что при изменении конфигурации системы (в частности, переразбивке/замене/добавлении/удалении жестких дисков, изменении номера активного интерфейса, добавлении/удалении любых IDE/SATA/SСSI-устройств, добавлении/извлечении USB дисков) и смене ОС система не будет работать из-за ограничений, налагаемых защитой от нелегального копирования. При изменении конфигурации оборудования вам необходимо обратиться к разработчику для получения новой копии Expert Billing System.

В комплекте поставки системы имеется файл license.lic, уникальный для каждого легального пользователя системы. Он является частью системы защиты Expert Billing System от нелегального распространения и не подлежит модификации и удалению. В случае его отсутствия или изменения, биллинг-система не будет работать.

В соответствии с лицензионным соглашением, покупатель получает права на модификацию и распространение кода веб-кабинета. При этом компания-разработчик Expert Billing System не несет никакой ответственности за возможный ущерб, нанесенный по причине использования модифицированного веб-кабинета.

Решение проблем

Решение проблем с интерфейсом администратора

Решение проблем с ядром

Решение проблем с веб-кабинетом

Варианты настройки

Настройка команд сервера доступа для привязки IP к MAC на IPN тарифе