Администратору DCImanager

Интеграция с WHMCS

WHMCS — биллинговая система для продажи услуг различных типов. С помощью WHMCS вы сможете продавать выделенные серверы клиентам в автоматическом режиме. Основные возможности биллинговой системы:

  • регистрация клиентов и учёт их финансовых средств;
  • создание тарифов на услуги;
  • приём платежей от клиентов;
  • автоматическое управление услугами: открытие, остановка, продление.

Настройка интеграции происходит в WHMCS и DCImanager.

Обратите внимание!

Работа модуля интеграции не тестировалась с WHMCS версии 7.8.3 и выше.

Установка модуля


Для установки модуля интеграции с DCImanager перейдите в корневую директорию установки WHMCS. Скачайте и распакуйте в эту директорию файлы модуля интеграции:

cd /var/www/html/whmcs/
wget http://download.ispsystem.com/extras/whmcs/7/whmcs_isp_dci6.tar.gz
tar -xzvf whmcs_isp_dci6.tar.gz

После распаковки файлов перейдите в интерфейс WHMCS и активируйте загруженный модуль: SetupAddon Modules → модуль ISPsystem global module → кнопка Activate.

Настройка интеграции


Для подключения к DCImanager в WHMCS нажмите SetupProducts/ServicesServers → кнопка Add New Server.

Блок Servers

4.png

Настройка блока Servers


Укажите следующие параметры:

  • Name — имя подключения к DCImanager;
  • Hostname — доменное имя сервера с DCImanager;
  • IP address — IP-адрес для подключения к серверу.

Блок Server Details

Настройка блока Servers Details

Укажите следующие параметры:

  • Type — тип сервера. Укажите "DCImanager 6";
  • Username — имя пользователя в подключаемом DCImanager. Для интеграции используется учётная запись с уровнем доступа "Администратор". От имени указанной учётной записи WHMCS будет управлять серверами в DCImanager;
  • Password — пароль учётной записи.

Настройка тарифного плана


Для настройки тарифа в WHMCS нажмите SetupProduct/ServicesProduct/Services → кнопка Create a New Product.

Вкладка Details

Настройка вкладки Details

Укажите следующие параметры:

  • Product Type — тип продаваемого продукта. Выбранное значение влияет на способ обработки услуги. Укажите "Server/VPS";
  • Product Group — группа услуг, в которой будет находиться тариф на форме заказа;
  • Product Name — имя продукта.

Вкладка Module Setting

Настройка вкладки Module Settings

Укажите следующие параметры:

  • Module Name — используемый модуль интеграции. Выберите "DCImanager 6";
  • Server Group — группа серверов услуг;
  • Server configuration type — наименование конфигурации серверов из DCImanager;

    Обратите внимание!

    Чтобы получить наименование конфигурации сервера в DCImanager, проведите на этом сервере операцию диагностики. Подробнее см. в статье Как запустить диагностику.

  • Operation system — наименование шаблона операционной системы (ОС) из DCImanager;
  • Don't wait the OS install — опция активации заказа до установки ОС;
  • IP address group — наименование пула IP-адресов из DCImanager;
  • OS Installation timeout (minute) — время ожидания установки ОС. Параметр используется только при отключенной опции Don't wait the OS install;
  • Location ID — ID локации в DCImanager. Если серверы располагаются в разных локациях, оставьте параметр пустым. В противном случае для заказа будут доступны только серверы в выбранной локации.
  • User email verifying option check — проверка email клиента. Если опция включена, клиент без верифицированного email не сможет управлять подключенными услугами через WHMCS. Чтобы уведомить клиента о необходимости верификации email, перейдите в SetupGeneral SettingsSecurity → Email Verification и включите опцию Request users to confirm their email address on signup or change of email address.

Настраиваемые опции

Опции тарифного плана в WHMCS — дополнительные ресурсы, которые клиент может заказать за отдельную плату. Биллинг этих ресурсов выполняется отдельно от основной услуги. Количество дополнительных ресурсов клиент определяет самостоятельно на форме заказа услуги.

Настраиваемые опции тарифа объединяются в группы. Каждая группа опций может быть подключена к нескольким продуктам. Рекомендуем для каждого подключения к панели управления использовать отдельную группу опций.

Для управления группами опций перейдите в раздел SetupProducts/ServicesConfigurable Options. Добавьте в тарифный план на выделенные серверы опции:

  • операционная система:
    1. В поле Option Name укажите "OS", "os" или "ostemplate". Другие имена опций не поддерживаются.
    2. В поле Option Type выберите Dropdown.

      Настройка опции "Операционная система"

  • IP-адреса:
    1. В поле Option Name укажите "ip", "IP", "ipv4" или "IPv4". Другие имена опций не поддерживаются.
    2. В поле Option Type выберите Quantity.
    3. В поле Minimum Quantity Required укажите количество IP-адресов, выделяемых серверу. Минимальное значение — 1.

      Настройка опции "IP-адреса"

Настройка DCImanager


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

  1. Убедитесь, что на сервере может быть выполнена диагностика. Подробнее см. в статье Проведение диагностики.
  2. Создайте пул IP-адресов для проведения диагностики:
    1. Перейдите в СетьПулы IP-адресовСоздать пул IP-адресов.
    2. Укажите произвольное Название пула.
    3. В поле IP-адрес или диапазон укажите диапазон, из которого будут назначаться адреса диагностируемым серверам. С этих IP-адресов должна быть доступна локация, к которой относятся диагностируемые серверы.
    4. Включите опцию Создать физическую сеть.
    5. Укажите Сеть, которую будет использовать модуль диагностики. Сеть должна входить в заданный диапазон IP-адресов.
    6. Укажите адрес Шлюза для сети.
    7. Нажмите Создать пул.
  3. Отметьте созданный пул IP-адресов в качестве пула для проведения диагностики:
    1. Перейдите в СетьПулы IP-адресов → Общие настройки пулов.
    2. Выберите созданный пул в поле Пул для освобождения серверов.
    3. Нажмите Сохранить.

Алгоритм работы модуля


Открытие услуги

При открытии новой услуги модуль интеграции выполняет следующие действия:

  1. Находит в базе данных DCImanager свободный сервер со следующими параметрами:
    • конфигурация сервера соответствует указанной в параметре Server configuration type на вкладке Module Settings;
    • у сервера нет владельца;
    • последняя операция с сервером была выполнена успешно или отменена в ходе выполнения.
  2. Осуществляет поиск пользователя DCImanager по Email, указанному в настройках аккаунта WHMCS. Если пользователь с таким адресом не найден, создаёт нового.
  3. Назначает пользователя владельцем сервера.
  4. Включает порты коммутатора, к которым подключен сервер.
  5. Включает сервер, если он выключен.
  6. Останавливает операцию на сервере, если она запущена.
  7. Удаляет IP-адреса из конфигурации сервера.
  8. Добавляет в конфигурацию сервера новый IP-адрес из пула, указанного в параметре IP address group на вкладке Module Settings.
  9. Запускает операцию установки ОС.
  10. Ожидает завершения установки ОС, если опция Don't wait the OS install была отключена. По прошествии времени, указанного в параметре OS Installation timeout (minute) завершает операцию установки.

Остановка услуги

При остановке услуги DCImanager выключает порты коммутатора, к которым подключен сервер. Услуга не может быть остановлена, если в настройках сервера не были указаны порты коммутатора.

Возобновление услуги

При возобновлении услуги DCImanager включает порты коммутатора, к которым подключен сервер.

Удаление услуги

При удалении услуги модуль интеграции выполняет следующие действия:

  1. Включает порты коммутатора, к которым подключен сервер.
  2. Включает сервер, если он выключен.
  3. Останавливает операцию на сервере, если она запущена.
  4. Удаляет IP-адреса из конфигурации сервера.
  5. Удаляет данные о владельце сервера.
  6. Запускает диагностику с опцией очистки дисков.

Логирование

Чтобы посмотреть лог-файл модуля интеграции, в интерфейсе WHMCS перейдите в UtilitiesLogsModule Log.