Рецепты: указания по обновлению BILLmanager для реселлеров

В ближайшее время изменится принцип работы шаблонов, и для тарифов добавится новая сущность — рецепты. Рецепт — это набор ПО, устанавливаемый на виртуальную машину после её запуска и установки шаблона. Шаблоны операционных систем со встроенным ISPmanager упраздняются, а панель управления теперь устанавливается через рецепт.

Внимание! Статус этой статьи — черновик. Прочитайте для ознакомления с темой, но не применяйте указания на практике.

 

Как нововведение повлияет на реселлеров? Реселлеры могут продолжать работу, как раньше. Вам будут доступны старые тарифы и шаблоны — без рецептов. Старые шаблоны больше не будут обновляться. Если же обновить биллинг, то станут доступны новый процесс заказа, а также обновленные тарифы с более привлекательными ценами.

Чтобы перейти на новые шаблоны и тарифы, необходимо обновиться. Если вы используете:

  • собственный BILLmanager — необходимо обновиться до самой новой версии и синхронизировать тарифы
  • собственный сайт — в некоторых случаях требуется обновить сайт (подробности ниже)
  • только биллинг FirstVDS (продаете вручную) — никаких действий не требуется, прочитайте только раздел «Что изменится в заказе сервера»

Что изменится в заказе сервера

В BILLmanager изменения отобразятся только на одном шаге — шаге конфигурации сервера. Поле «Шаблоны» теперь называется «Операционная система» и содержит образы только чистых операционных систем — без дополнительного ПО.

Также появляется поле «Предустановленное ПО» — это и есть рецепты. Здесь можно выбрать панель ISPmanager, набор LAMP и другие популярные платформы. Выбранное ПО уже будет установлено на сервере к моменту начала работы. Если оставить поле пустым, то получите «чистую» операционную систему.

Новое поле при заказе сервера

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

Если вы перепродаете серверы в ручном режиме, то это вся информация об изменениях, которую вам необходимо знать. Читайте дальше, если используете собственный BILLmanager и/или собственный сайт для продажи услуг.

Обновление собственного BILLmanager

Чтобы без перебоев в работе перейти на новую версию BILLmanager, необходимо выполнить ряд действий в порядке, описанном ниже. Если у вас нет root-доступа к серверу с BILLmanager или у вас возникнут какие-либо затруднения — обращайтесь в поддержку FirstVDS.

План действий:

  • Обновить BILLmanager до последней версии
  • Синхронизировать тарифы
  • Обновить сайт (если используете)

Обновите BILLmanager

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

  • Старые шаблоны перестают обновляться. Это означает, что в перспективе ваши клиенты будут запускать сайты на устаревшем программном обеспечении.
  • Вам будут доступны только старые версии тарифов.

Обновление в графическом интерфейсе:

---

Обновление в консоли:

1. Обновите лицензию
Выполните в консоли команду /usr/local/mgr5/sbin/licctl fetch billmgr

5. Обновите пакеты системы
yum update

Готово! Вы обновились до самой новой версии, и теперь ваш BILLmanager поддерживает рецепты.

Синхронизируйте тарифы

Синхронизировать тарифы необходимо, чтобы добавить к существующим в вашем BILLmanager тарифам новую информацию: обновлённый список шаблонов, список рецептов, совместимость рецептов и шаблонов.

Внимание! Синхронизировать тарифы прямо сейчас не надо. Синхронизацию следует произвести <конкретная дата-время>. Раньше этой даты обновленные тарифы не будут доступны публично, и процесс пройдет вхолостую. После обозначенного времени синхронизацию следует сделать как можно скорее, т.к. заказы старых тарифов перестанут обрабатываться биллингом FirstVDS — очередь на открытие будет расти, но серверы открываться не будут. После синхронизации проверьте настройки каждого тарифа, убедитесь, что всё в порядке.

Для обновления тарифов используйте команду:
/usr/local/mgr5/sbin/mgrctl -m billmgr pricelist.sync elid=<id тарифа>

Запустите команду для каждого своего тарифного плана, подставляя в качестве elid идентификатор тарифа.

Как узнать идентификатор тарифа elid? Откройте ПродуктыТарифные планы, значение в столбце Id и будет идентификатором тарифа. Возможно, столбец не отображается. Тогда откройте настройки таблицы и включите столбец Id.

Идентификатор тарифа (elid)
Кнопка настроек таблицы
Показывать столбец Id в таблице

Обновите сайт

В некоторых случаях потребуется обновить сайт, чтобы обеспечить безошибочную работу после обновления.

В каких случаях НЕ нужно обновлять сайт (всё будет работать и после обновления):

  • После заказа на сайте вы отправляете клиента в BILLmanager на шаг настройки сервера БЕЗ каких-либо предустановленных настроек сервера, отличающихся от стандартных (процессор, память, диск, шаблон ОС). Разные конфигурации у вас представлены разными тарифами.

В каких случаях придется обновить сайт:

  • Разные конфигурации на сайте представлены специальными ссылками в BILLmanager с предустановленными нестандартными параметрами тарифа (процессор, память, диск, шаблон ОС)
  • Настройка параметров сервера прямо на сайте (использование pricelist.export)

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

Раньше информация об ОС и наличии панели управления извлекалась из названия шаблона: Debian-8-amd64-ispmgr5. Разбор строки давал название ОС Debian-8-amd64 и наличие панели -ispmgr5. После обновления за наличие панели будет отвечать отдельный параметр recipe.

Шаблон отвечает только за выбор операционной системы, шаблонов с суффиксом -ispmgr5 больше не будет. Пример названия шаблона после обновления:
ostempl=ISPsystem__CentOS-7-amd64

Пример параметра recipe с установленной панелью:
recipe=ISPsystem__ispmanager.sh

Покупка на сайте тарифа с нестандартными параметрами

После заказа на сайте вы отправляете клиента в BILLmanager на шаг настройки сервера, где уже предустановлены параметры (диск, память, процессор). Для формирования заказа вы, скорее всего, используете специальные ссылки:

https://my.firstvds.ru/billmgr?clicked_button=order&datacenter=6&itemtype=&period=1&pricelist=14105&progressid=false&skipbasket=&snext=ok&stylesheet=&startform=vds.order.param&recipe=null

Если вы не задаете определенный набор предустановленного ПО, то необходимо задать параметр recipe=null как в примере выше. Чтобы клиент заказал сервер с предустановленной панелью задайте параметр recipe=ISPsystem__ispmanager.sh.

Настройка тарифа прямо на сайте

Для реализации на сайте подобной функциональности вы должны использовать API для получения данных из BILLmanager — pricelist.export.

Параметр тарифа, отвечающий за набор шаблонов, остался тем же: ostempl. Добавился новый параметр, отвечающий за предварительную установку ПО на сервере: recipe.

Совместимость шаблонов и рецептов

Не с любым шаблоном можно заказать панель управления. Например, Windows не поддерживается панелью управления ISPmanager. Для проверки соответствия рецепта шаблону используются теги — параметры шаблонов и рецептов.

Например, шаблон имеет теги:
tag: "debian, lic_ISPmanager_5_Lite, linux"

Рецепт с панелью управления ISPmanager имеет теги
tag: "centos, debian, lic_ISPmanager_5_Lite, linux"

Рецепт считается совместимым с операционной системой в том случае, если у обоих параметров имеется как минимум один одинаковый тэг. В данном случае, совпадение произошло по тэгу debian — ОС и рецепт подходят друг другу и могут использоваться вместе.

Дополнительные материалы: