Документация по версии 1.4 — различия между версиями
Admin (обсуждение | вклад) (→Установка биллинга) |
Admin (обсуждение | вклад) |
||
(не показано 10 промежуточных версий этого же участника) | |||
Строка 36: | Строка 36: | ||
* CPU: 1GHz | * CPU: 1GHz | ||
− | * RAM: | + | * RAM: 1GB |
* HDD: 20GB | * HDD: 20GB | ||
Строка 123: | Строка 123: | ||
== Работа с документами и отчётами == | == Работа с документами и отчётами == | ||
[[Создание отчётов]] | [[Создание отчётов]] | ||
+ | |||
+ | == Работа с субаккаунтами и аккаунтами == | ||
+ | |||
+ | [[Accounts and Subaccounts|Работа с субаккаунтами и аккаунтами]] | ||
== Принцип работы с IPN абонентами == | == Принцип работы с IPN абонентами == | ||
Строка 129: | Строка 133: | ||
== Установка и начальная настройка == | == Установка и начальная настройка == | ||
+ | === Установка Ubuntu === | ||
+ | [[Руководство по установке Ubuntu 10.04]] | ||
+ | |||
=== Настройка MikroTik для работы с ExpertBilling === | === Настройка MikroTik для работы с ExpertBilling === | ||
[[Статья по настройке RouterOS MikroTik 5.7]] | [[Статья по настройке RouterOS MikroTik 5.7]] | ||
Строка 140: | Строка 147: | ||
tar -xvzf путь к архиву с биллингом | tar -xvzf путь к архиву с биллингом | ||
</pre> | </pre> | ||
− | В итоге у вас должен распаковаться файл ebs_manage.py | + | В итоге у вас должен распаковаться файл ebs_manage.py, архив с биллинг-системой, который будет иметь вид ebs-номер сборки.tar.gz, и инструкция по установке в файле install.txt. |
Далее установим требуемые библиотеки и создадим начальные папки: | Далее установим требуемые библиотеки и создадим начальные папки: | ||
<pre> | <pre> | ||
apt-get update | apt-get update | ||
− | apt-get install mc openssh-server python-twisted python-psycopg2 openssl python-paramiko python-dateutil python-pytils python-crypto libpython2.6 | + | apt-get install postgresql postgresql-contrib mc openssh-server python-twisted python-psycopg2 openssl python-paramiko python-dateutil python-pytils python-crypto libpython2.6 libapache2-mod-wsgi python-jsonpickle python-simplejson rrdtool snmp python-pexpect python-pip |
+ | |||
+ | pip install ipaddr mako IPy | ||
+ | |||
mkdir /opt/ebs | mkdir /opt/ebs | ||
− | + | ||
− | |||
</pre> | </pre> | ||
Создадим базу данных и импортируем функции для работы с типами данных. После команды '''createuser -P -s ebs''' система спросит у вас пароль для пользователя базы данных ebs. Запишите и запомните его. | Создадим базу данных и импортируем функции для работы с типами данных. После команды '''createuser -P -s ebs''' система спросит у вас пароль для пользователя базы данных ebs. Запишите и запомните его. | ||
<pre> | <pre> | ||
su postgres | su postgres | ||
− | createuser -P -s ebs | + | $createuser -P -s ebs |
− | createdb -O ebs ebs | + | $createdb -O ebs ebs |
− | psql ebs -f /usr/share/postgresql/8.4/contrib/int_aggregate.sql | + | Для версии postgresql<9 |
− | psql ebs -f /usr/share/postgresql/8.4/contrib/_int.sql | + | $psql ebs -f /usr/share/postgresql/8.4/contrib/int_aggregate.sql |
+ | $psql ebs -f /usr/share/postgresql/8.4/contrib/_int.sql | ||
+ | Для версии postgresql>9 | ||
+ | $psql ebs | ||
+ | ebs=# create extension intagg; | ||
+ | ebs=# create extension intarray; | ||
+ | ebs=# exit; | ||
+ | $exit | ||
exit | exit | ||
</pre> | </pre> | ||
Строка 165: | Строка 181: | ||
</pre> | </pre> | ||
Часть установки веб-кабинета инсталлятор выполнит автоматически. Для окончания настройки укажите параметры подключения к базе данных и свою временную зону в файле /opt/ebs/web/ebscab/settings.py. | Часть установки веб-кабинета инсталлятор выполнит автоматически. Для окончания настройки укажите параметры подключения к базе данных и свою временную зону в файле /opt/ebs/web/ebscab/settings.py. | ||
− | + | Затем пара простых команд: | |
+ | <pre> | ||
+ | cd /opt/ebs/web/ebscab/ | ||
+ | ln -s ../django django | ||
+ | python manage.py syncdb --noinput | ||
+ | </pre> | ||
После этого выполните команду billing start и проверьте лог-файлы биллинг-системы на предмет наличия ошибок. Остановить все процессы биллинг-системы можно командой billing stop или billing force-stop. Для корректного завершения рекомендуем пользоваться первым вариантом команды. | После этого выполните команду billing start и проверьте лог-файлы биллинг-системы на предмет наличия ошибок. Остановить все процессы биллинг-системы можно командой billing stop или billing force-stop. Для корректного завершения рекомендуем пользоваться первым вариантом команды. | ||
Сейчас откройте EBSAdmin, укажите IP-адрес сервера с биллингом, имя admin, пароль admin, и попробуйте подключиться. | Сейчас откройте EBSAdmin, укажите IP-адрес сервера с биллингом, имя admin, пароль admin, и попробуйте подключиться. | ||
[[Инструкция по установке серверной части биллинг-системы ExpertBilling 1.4]](устаревшее, вариант ручной установки) | [[Инструкция по установке серверной части биллинг-системы ExpertBilling 1.4]](устаревшее, вариант ручной установки) | ||
+ | |||
+ | === Обновление системы === | ||
+ | '''Внимание!!!''' | ||
+ | Перед обновлением системы убедитесь, что папка /opt/ebs/data/temp пуста, иначе создание бэкапа может длиться очень долго. | ||
+ | |||
+ | Для обновления версии 1.4.1 на более свежую ревизию необходимо распаковать архив, полученный от разработчика. Обычно он имеет вид XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.tar.gz, где XXXXX - ключ keygetter-а. | ||
+ | <pre> | ||
+ | tar -xvzf XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.tar.gz | ||
+ | </pre> | ||
+ | В результате чего появятся файлы: | ||
+ | <pre> | ||
+ | ebs-XXXXM.tar.gz | ||
+ | install.txt | ||
+ | ebs_manage.py | ||
+ | </pre> | ||
+ | Необходимо просмотреть файл install.txt на предмет появления новых зависимостей и удовлетворить их. | ||
+ | После чего нужно посмотреть в файле /opt/ebs/data/ebs_config.ini параметры подключения к БД и запустить обновление: | ||
+ | <pre> | ||
+ | python ebs_manage.py upgrade ebs-XXXXM.tar.gz | ||
+ | </pre> | ||
+ | Система несколько раз спросит данные от БД. Введите их. | ||
+ | Во время обновления могут возникнуть ошибки обновления схемы базы данных, после чего система спросить продолжать ли обновление. В таких случаях желательно проимпортировать проблемные запросы руками через консоль psql и продолжить обновление, или обратиться к разработчику. | ||
+ | В процессе обновления скрипт спросит обновлять ли веб-кабинет. Как правило, это необходимое действие. После обновления веб-кабинета нужно его заново настроить (/opt/ebs/web/ebscab/settings.py). | ||
+ | Повторной настройки после каждого обновления можно избежать, если создать рядом с settings.py файл settings_local.py и переопределить в нём нужные настройки из settings.py. | ||
+ | |||
+ | После окончания обновления выполните команду billing start. | ||
+ | |||
+ | В случае, если потребовалось откатиться - дамп папки data, ebscab и базы данных скрипт обновления создаёт в /opt/ebs/backup/. | ||
+ | |||
=== Установка веб-кабинета === | === Установка веб-кабинета === | ||
Строка 176: | Строка 226: | ||
[[Инструкция по установке веб-кабинета]]. | [[Инструкция по установке веб-кабинета]]. | ||
+ | |||
+ | === Настройка HelpDesk === | ||
+ | [[HelpDeskSetup|Настройка HelpDesk]] | ||
=== Установка и настройка дополнительных скриптов === | === Установка и настройка дополнительных скриптов === | ||
Строка 183: | Строка 236: | ||
== Установка клиентской части == | == Установка клиентской части == | ||
+ | |||
+ | == Формат хранения сырой статистики == | ||
+ | [[RawNetFlowStat| Формат хранения сырой статистики]] | ||
+ | |||
+ | == Установка и настройка HotSpot == | ||
+ | |||
+ | [[HotSpot Mikrotik|Настройка и описание работы MikroTik HotSpot]] | ||
== Защита от нелегального копирования === | == Защита от нелегального копирования === | ||
Строка 200: | Строка 260: | ||
[[Решение проблем с веб-кабинетом]] | [[Решение проблем с веб-кабинетом]] | ||
+ | |||
+ | [[Перетарификация]] | ||
[[Monit|Настройка мониторинга процессов биллинга]] | [[Monit|Настройка мониторинга процессов биллинга]] | ||
[[qiwi|Настройка приёма платежей QiWi]] | [[qiwi|Настройка приёма платежей QiWi]] | ||
+ | |||
+ | [[WebmoneyMerchantSetup|Настройка приёма платежей WebMoney]] | ||
== Варианты настройки == | == Варианты настройки == |
Текущая версия на 13:41, 8 июня 2012
Содержание
- 1 Введение
- 2 Системные требования
- 3 Поддерживаемые ОС
- 4 Обзор возможностей
- 5 Структурно-логическая схема работы системы
- 6 Структура директорий
- 7 Настройка действий на сервере доступа
- 8 Работа с документами и отчётами
- 9 Работа с субаккаунтами и аккаунтами
- 10 Принцип работы с IPN абонентами
- 11 Установка и начальная настройка
- 12 Установка клиентской части
- 13 Формат хранения сырой статистики
- 14 Установка и настройка HotSpot
- 15 Защита от нелегального копирования =
- 16 Решение проблем
- 17 Варианты настройки
- 18 Пользовательские статьи
Введение
Руководство будет полезно как профессионалам, имеющим опыт работы с биллинг-системами, так и пользователям, впервые сталкивающимся с подобными программными комплексами.
Для опытных пользователей порекомендуем ознакомиться с особенностями развертывания системы (раздел «Установка и предварительная настройка»), а затем обратиться к разделу «Решение задач», при необходимости уточняя детали в соответствующих подразделах раздела «Использование системы».
Если вы ранее не занимались настройкой и эксплуатацией подобных систем, советуем вам продолжить чтение по порядку. В случае необходимости, уточняйте значение терминов в глоссарии («Приложение 1»).
Для каждого из разделов системы («Тарифные планы», «Периоды тарификации» и т.п.) описываются особенности их реализации и назначение, интерфейс, а также при необходимости приводятся примеры использования возможностей Expert Billing Admin. Раздел «Решение задач» целиком состоит из пошаговых руководств по решению типовых задач.
Общая информация о биллинг-системах
Общая информация о биллинг-системах
Системные требования
Минимальные системные требования позволят запустить биллинг-систему со всеми компонентами и обеспечат работу систем тарификации и управления доступом при объёме абонентской базы в среднем до 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: 1GB
- HDD: 20GB
Рекомендуемая конфигурация
- CPU: 2-4 ядерный процессор от 2 GHz на ядро
- RAM: 4GB
- HDD: >250GB
Обзор возможностей
Структурно-логическая схема работы системы
Expert Billing System построена на базе устоявшейся схемы с разделёнными компонентами авторизации, сбора статистики и ядром, отвечающим за логику работы системы. Структура биллинг-системы позволяет легко расширять её за счёт установки дополнительных RADIUS-серверов и коллекторов статистики.
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/ - каталог с дополнительными скриптами paymentgateways/ -система импорта платежей из текстовых файлов sql/ - каталог с первоначальным дампом базы данных upgrade/ - каталог с sql файлами для апгрейда биллинг-системы на новые версии temp/ - каталог хранения NetFlow статистики ebs_config.ini - основной файл настроек биллинг-системы ebs_config_runtime.ini - дополнительный внутрисистемный файл настроек биллинг-системы core - ядро биллинг-системы rad - радиус сервер nf - NetFlow коллектор nfroutine - NetFlow агрегатор и тарификатор rpc - RPC-сервер license.lic - файл лицензии web/ ebscab/ settings.py - файл настроек веб-кабинета django/ - веб-фреймворк django django.wsgi - скрипт для работы apache с веб-кабинетом backup/ - бэкапы биллинг-системы, осуществляемые скриптом апгрейда stats/ - rrd файлы о трафике пользователей для построения графиков
Настройка действий на сервере доступа
Настройка действий на сервере доступа.
Работа с документами и отчётами
Работа с субаккаунтами и аккаунтами
Работа с субаккаунтами и аккаунтами
Принцип работы с IPN абонентами
Работа с IPN абонентами и тарифными планами.
Установка и начальная настройка
Установка Ubuntu
Руководство по установке Ubuntu 10.04
Настройка MikroTik для работы с ExpertBilling
Статья по настройке RouterOS MikroTik 5.7
Установка биллинга
Установка и апгрейд биллинга ExpertBilling 1.4 изменена и теперь осуществляется скриптом, идующим в комплекте.
Для установки выполните в консоли с правами суперпользователя:
cd ~ tar -xvzf путь к архиву с биллингом
В итоге у вас должен распаковаться файл ebs_manage.py, архив с биллинг-системой, который будет иметь вид ebs-номер сборки.tar.gz, и инструкция по установке в файле install.txt.
Далее установим требуемые библиотеки и создадим начальные папки:
apt-get update apt-get install postgresql postgresql-contrib mc openssh-server python-twisted python-psycopg2 openssl python-paramiko python-dateutil python-pytils python-crypto libpython2.6 libapache2-mod-wsgi python-jsonpickle python-simplejson rrdtool snmp python-pexpect python-pip pip install ipaddr mako IPy mkdir /opt/ebs
Создадим базу данных и импортируем функции для работы с типами данных. После команды createuser -P -s ebs система спросит у вас пароль для пользователя базы данных ebs. Запишите и запомните его.
su postgres $createuser -P -s ebs $createdb -O ebs ebs Для версии postgresql<9 $psql ebs -f /usr/share/postgresql/8.4/contrib/int_aggregate.sql $psql ebs -f /usr/share/postgresql/8.4/contrib/_int.sql Для версии postgresql>9 $psql ebs ebs=# create extension intagg; ebs=# create extension intarray; ebs=# exit; $exit exit
Запустите утилиту установки биллинга и вводите требуемые значения для доступа к БД. Скрипт 3 раза спросит пароль для доступа к базе данных, имя и параметры подключения к базе данных. Введите пароль, указанный выше при создании пользователя базы данных.
python ebs_manage.py install имя распакованного архива с биллингом(вид ebs-*****.tar.gz)
Часть установки веб-кабинета инсталлятор выполнит автоматически. Для окончания настройки укажите параметры подключения к базе данных и свою временную зону в файле /opt/ebs/web/ebscab/settings.py. Затем пара простых команд:
cd /opt/ebs/web/ebscab/ ln -s ../django django python manage.py syncdb --noinput
После этого выполните команду billing start и проверьте лог-файлы биллинг-системы на предмет наличия ошибок. Остановить все процессы биллинг-системы можно командой billing stop или billing force-stop. Для корректного завершения рекомендуем пользоваться первым вариантом команды.
Сейчас откройте EBSAdmin, укажите IP-адрес сервера с биллингом, имя admin, пароль admin, и попробуйте подключиться. Инструкция по установке серверной части биллинг-системы ExpertBilling 1.4(устаревшее, вариант ручной установки)
Обновление системы
Внимание!!! Перед обновлением системы убедитесь, что папка /opt/ebs/data/temp пуста, иначе создание бэкапа может длиться очень долго.
Для обновления версии 1.4.1 на более свежую ревизию необходимо распаковать архив, полученный от разработчика. Обычно он имеет вид XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.tar.gz, где XXXXX - ключ keygetter-а.
tar -xvzf XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.tar.gz
В результате чего появятся файлы:
ebs-XXXXM.tar.gz install.txt ebs_manage.py
Необходимо просмотреть файл install.txt на предмет появления новых зависимостей и удовлетворить их. После чего нужно посмотреть в файле /opt/ebs/data/ebs_config.ini параметры подключения к БД и запустить обновление:
python ebs_manage.py upgrade ebs-XXXXM.tar.gz
Система несколько раз спросит данные от БД. Введите их. Во время обновления могут возникнуть ошибки обновления схемы базы данных, после чего система спросить продолжать ли обновление. В таких случаях желательно проимпортировать проблемные запросы руками через консоль psql и продолжить обновление, или обратиться к разработчику. В процессе обновления скрипт спросит обновлять ли веб-кабинет. Как правило, это необходимое действие. После обновления веб-кабинета нужно его заново настроить (/opt/ebs/web/ebscab/settings.py). Повторной настройки после каждого обновления можно избежать, если создать рядом с settings.py файл settings_local.py и переопределить в нём нужные настройки из settings.py.
После окончания обновления выполните команду billing start.
В случае, если потребовалось откатиться - дамп папки data, ebscab и базы данных скрипт обновления создаёт в /opt/ebs/backup/.
Установка веб-кабинета
Обратите внимание, что файл ebs_manage.py проводит всю работу и данное руководство нужно только, если вы будете устанавливать веб-кабинет руками.
Инструкция по установке веб-кабинета.
Настройка HelpDesk
Установка и настройка дополнительных скриптов
Вспомогательные скрипты и утилиты
Система мониторинга загрузки серверов доступа
Установка клиентской части
Формат хранения сырой статистики
Формат хранения сырой статистики
Установка и настройка HotSpot
Настройка и описание работы MikroTik HotSpot
Защита от нелегального копирования =
Внимание!!! Expert Billing System является продуктом интеллектуального труда. Его нелегальное распространение и использование преследуется по закону.
Каждый серверный компонент Expert Billing System при установке привязывается к аппаратной конфигурации сервера. Это означает, что при изменении конфигурации системы (в частности, переразбивке/замене/добавлении/удалении жестких дисков, изменении номера активного интерфейса, добавлении/удалении любых IDE/SATA/SСSI-устройств, добавлении/извлечении USB дисков) и смене ОС система не будет работать из-за ограничений, налагаемых защитой от нелегального копирования. При изменении конфигурации оборудования вам необходимо обратиться к разработчику для получения новой копии Expert Billing System.
В комплекте поставки системы имеется файл license.lic, уникальный для каждого легального пользователя системы. Он является частью системы защиты Expert Billing System от нелегального распространения и не подлежит модификации и удалению. В случае его отсутствия или изменения, биллинг-система не будет работать.
В соответствии с лицензионным соглашением, покупатель получает права на модификацию и распространение кода веб-кабинета. При этом компания-разработчик Expert Billing System не несет никакой ответственности за возможный ущерб, нанесенный по причине использования модифицированного веб-кабинета.
Решение проблем
Решение проблем с интерфейсом администратора
Решение проблем с веб-кабинетом
Настройка мониторинга процессов биллинга
Настройка приёма платежей QiWi
Настройка приёма платежей WebMoney
Варианты настройки
Настройка команд сервера доступа для привязки IP к MAC на IPN тарифе
Решение для провайдеров, предоставляющих безлимитные тарифные планы
Решение для провайдеров, предоставляющих тарифные планы с тарификацией трафика