Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Лицензирование: различия между версиями

Материал из Платформа Эра. Документации
Новая страница: «Для своей работы система требует активации. Активация производится с помощью файла лицензии, содержащего набор параметров и их значений, привязанных к данному конкретному экземпляру системы и установленному продукту. Файл лицензии создается лиценз...»
 
Нет описания правки
 
(не показаны 23 промежуточные версии 2 участников)
Строка 1: Строка 1:
Для своей работы система требует активации. Активация производится с помощью файла лицензии, содержащего набор параметров и их значений, привязанных к данному конкретному экземпляру системы и установленному продукту.
Учебную лицензию можно найти в [[Учебная лицензия|соответствующей статье]], остальные лицензии могут быть получены через вашего менеджера.


Файл лицензии создается лицензиаром на основании кода активации, сформированного экземпляром системы с помощью API.
=== Общая информация ===
Для начала работы с платформой, после установки необходимо активировать лицензию.


Файл лицензии передается в шифрованном виде и загружается с помощью API в мастер-домен, либо может быть загружен непосредственно на HDD сервера с ролью mdc на мастер-сайте, рабочий каталог ноды в <code>/var/lib/era/_workdir/<NODE>/lic/r.lic</code>.
Лицензия определяет доступную конфигурацию платформы, набор доступного функционала, а также различные количественные параметры. Активация лицензии осуществляется с помощью номера лицензии и пароля, в настройках мастер-домена (начиная с версии 1.9).


Лицензия помимо активации экземпляра системы определяет ограничения.
По-умолчанию выдаётся '''три''' пароля для получения активационного токена, которые позволяют три раза активировать систему. Этого количества достаточно в 90% случаев, однако если по какой-либо причине требуются дополнительные пароли активации, необходимо обратиться к вашему менеджеру.


Лицензия применяется, поддерживается и резервируется на всех серверах с ролью mdc.
При этом, один активационный пароль используется для одного '''инстанса''' системы.


= Лицензируемые параметры =
При применении активационного пароля, экземпляр платформы автоматически получает '''токен''' активации с сервера лицензий.
Файл лицензии в расшифрованном виде представляет собой JSON-структуру, прозрачно отражаемую системой через API управления лицензией.


Следует различать содержимое файла лицензии и состав текущих актуальных значений лицензии. В файле в формате условий могут содержаться временные диапазоны доступности показателей, комбинированные значения и различные варианты конфигураций лицензионных параметров, привязанные к периодам времени.
'''Инстанс''' - основная конфигурационная единица платформы Эра. Он может быть развернут как на одном так и на нескольких физических/виртуальных серверах, для распределения нагрузки от микросервисов. Однако, все распределеннные по серверам микросервисы, реализуют один экземпляр платформы. Один инстанс использует один активационный токен, вне зависимости от количества серверов.


Для удобства API предоставляет возможность просматривать независимо расшифрованное содержимое файла и актуальную действующую в текущий момент лицензию.
Использование нескольких инстансов, как правило, подразумевает резервирование (например, master-slave или hot/cold). Каждый инстанс работает самостоятельно, а их синхронизация достигается механизмами ETL. В данной конфигурации, каждый инстанс требует '''собственный токен активации'''.
[[Файл:Управление лицензиями.png|мини|Управление лицензиями]]


Простой пример содержания лицензии:
<code>{
  "products": "era",
  "topleveldnpolicy": 1,
  "dql": {
    "domains": 100,
    "devices": 15000,
    "siptrunks": 3000
  },
  "sqf": {
  }
}</code>
Сложный пример содержания лицензии:
<code>{
  "products": "era",
  "topleveldnpolicy": 1,
  "dql": {
    "domains": 100,
    "devices": 1000,
    "siptrunks": 1000
  },
  "sqf": {
    "custom_key": true
    },
  "licensed_to": "Компания X",
  "licensed_number": "712158",
  "configurations": [
    {
      "smart": {
        "dtstart": "2017-12-01",
        "dtstop": "2018-01-31"
      },
      "dql": {
        "domains": 100,
        "devices": "5000;10000,tilldt=2018-01-12",
        "siptrunks": "1000;2000,tilldt=2018-01-12"
      }
    },
    {
      "smart": {
        "dtstart": "2017-01-01",
        "dtstop": "2020-12-31"
      },
      "dql": {
        "domains": 100,
        "devices": 3000,
        "siptrunks": 1000
      }
    },
    {
      "smart": {
        "dtstart": "2020-12-31"
      },
      "dlgtimesec": 30,
      "sqf": {
        "custom_key": false
      }
    }
  ]
}</code>


=== Базовые параметры ===
При переносе платформы на новый сервер, необходимо использовать новый пароль активации, так как использованный пароль привязывается к некоторым параметрам конфигурации серверов и не может быть использован повторно.<blockquote>Работа с лицензиями осуществляется в приложении Настройки, раздел Домен -> Лицензия (license).</blockquote>
{| class="wikitable"
!Ключ
!Описание
|-
|<code>products</code>
|Определяет название лицензируемого продукта. Лицензия может быть применена только к экземпляру системы, развернутой из дистрибутива соответствующего продукта.
|-
|<code>topleveldnpolicy</code>
|Ограничение на имена доменов первого уровня.


* <code>0</code> – допускает произвольные имена для доменов первого уровня.
=== Проверка лицензии ===
* <code>1</code> – допускает только дочерние имена мастер-домена по правилам FQDN.
В стандартной ситуации, система раз в несколько минут перепроверяет параметры лицензии и валидирует её на серверах вендора.


По умолчанию <code>1</code>.
Если необходимо использовать платформу Эра в закрытом внутреннем контуре, без доступа ко внешней сети, необходимо запросить у менеджера специализированный токен активации для закрытого контура, так как обычная комбинация паролем в данной ситуации работать не будет. В остальном, отличий по активации лицензий нет.
|-
|<code>dlgtimesec</code>
|Ограничивает время всех разговоров. Может использоваться в тестовых лицензиях.
|-
|<code>dql</code>
|Группа количественных параметров функциональности.
|-
|<code>sqf</code>
|Группа качественных параметров функциональности.
|-
|<code>configurations</code>
|Раздел, содержащий список различных конфигураций и условий их применения.


Содержит список объектов, каждый из которых представляет альтернативную конфигурацию. По ключу <code>smart</code> содержится набор условий применения, среди которых <code>dtstart</code> и <code>dtstop</code> в формате <code>yyyy-MM-dd</code>.
=== Распределение лицензий по доменам ===
[[Файл:Распределение лицензий.png|мини|Распределение лицензий]]
После активации лицензии в мастер-домене, становится доступным распределение количественных параметров лицензии между доменами. Также, непосредственно в настройках каждого домена, необходимо указать количество используемых лицензий из числа доступных.


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


Альтернативная конфигурация может в своем составе иметь все ключи данного раздела (<code>products</code>, <code>topleveldnpolicy</code>, <code>dql</code>, …​).
== Способы активации системы ==
Платформа эра позволяет провести активацию следующими двумя способами:
# Установка лицензии с помощью токена (по умолчанию до версии 1.9). Токен предоставляется менеджером, и вручную задаётся администратором при активации. Токен используется для активации один раз, для повторной активации необходимо запрашивать новый токен у менеджера.
# Установка лицензии с помощью идентификатора и пароля (по умолчанию с версии 1.9). Менеджером предоставляется набор паролей. В интерфейсе лицензии указывается идентификатор лицензии и пароль в формате [license_identifier]/[password]. Один пароль может использован для активации один раз. Для повторной активации необходимо использовать любой из дополнительных паролей активации. В данном режиме, система сама получает и регулярно обновляет токен.


Если какой-то ключ отсутствует, то он берется из базовой структуры.
Начиная с версии 1.9, из интерфейса администрирования мастер-домена доступен только второй способ. Для активации системы токеном (например, в закрытых контурах) необходимо использовать соответствующий [https://vendor.era-platform.ru/docs/era/latest/api/rest/v1/master/license.html метод API].
|-
|<code>licensed_to</code>
|Строка с названием лицензиара.
|-
|<code>license_number</code>
|Номер лицензии.
|}


=== Количественные параметры ===
== Сервера лицензирования ==
Количественные параметры задаются числовыми значениями и расходуются/восстанавливаются при создании/удалении сущностей в доменах. Содержатся в группе свойств <code>dql</code> (domain quantitative limits).
Для взаимодействия с серверами лицензирования, необходимо обеспечить доступ по протоколу HTTPS к поддоменам era-platform.ru (activate.era-platform.ru, activate2.era-platform.ru и другие). Привязка к конкретным IP-адресам возможна только временно, они могут меняться. Список доменов также может меняться в зависимости от версии системы.


Все количественные параметры распределяются по доменному дереву. Каждый домен:
== Полезные ссылки ==
Инструкция по активации лицензии доступна на [https://vendor.era-platform.ru/docs/era/latest/manuals/installation/setup_master.html ресурсе Vendor] (шаг 4).


* резервирует под себя часть полученных от родительского домена количественных лицензий для внутреннего использования,
Детальная информация о параметрах лицензии и активационном токене представлена в [https://vendor.era-platform.ru/docs/era/latest/license/index.html соответствующей статье].
* часть количественных лицензий передает своим дочерним доменам,
[[Категория:Администрирование]]
* остальные не используются и могут быть изъяты администратором родительского домена при необходимости.
[[Категория:Концепция и технологии]]
 
Резервирование производится через API управления настройками домена (ключ <code>licowned</code>), а передача дочернему домену производится через API управления сущностями доменов (поле <code>lic</code>).
{| class="wikitable"
!Ключ
!Описание
|-
|<code>domains</code>
|Количество доменов. Расходуется по одному на каждый домен.
 
При нехватке лицензий в домене невозможно создать новый дочерний домен.
|-
|<code>devices</code>
|Количество зарегистрированных SIP-устройств под учетными записями SIP-пользователей. Распределяется по учетным записям SIP-пользователей. Расходуется по одному на каждое обособленное SIP-устройство в момент прохождения регистрации. Не перераспределяются автоматически между учетными записями.
 
При нехватке лицензий в домене невозможно изменить сущность SIP-пользователя в сторону увеличения количества устройств или создать новую.
 
Достижение ограничения внутри сущности SIP-пользователя приводит к отказу в регистрации нового устройства, если на текущий момент уже зарегистрировано предельное количество. Тем не менее, возможны ситуации, когда устройство инициирует новую регистрацию, не удалив предыдущую на сервере. Во избежание подобных проблем система перед отказом в регистрации по причине недостаточного количества лицензий осуществляет опрос зарегистрированных устройств с помощью SIP-запроса OPTIONS. Отказ в регистрации производится только, если все зарегистрированные устройства корректно ответили. В других случаях регистрация проводится вместо "зомби".
|-
|<code>siptrunks</code>
|Количество одновременно активных транков на учетных записях SIP-провайдеров. Распределяется по учетным записям SIP-провайдеров. Расходуется по одному на каждый вызов через роль esg и освобождается при его завершении. Не перераспределяются автоматически между учетными записями.
 
При нехватке лицензий в домене невозможно изменить сущность SIP-провайдера в сторону увеличения количества транков или создать новую.
 
Достижение ограничения внутри сущности SIP-провайдера приводит к отказу от обслуживания очередного звонка.
|}
 
=== Качественные параметры ===
Качественные параметры задаются булевыми значениями (или эквивалентно <code>0</code> и <code>1</code>) и определяют доступность функционала в рамках экземпляра установленной системы. Содержатся в группе свойств <code>sqf</code> (system qualitative flags).
{| class="wikitable"
!Ключ
!Описание
|}
 
= Передача количественных лицензий по дереву =
Алгоритм распределения следующий:
 
# Мастер-домен получает лицензию непосредственно через API, либо с HDD.
# Мастер-домен передает количественные лицензии дочерним доменам через их свойство <code>lic</code>.
# Каждый рабочий домен получает лицензию от домена родителя.
# Рабочий домен резервирует часть полученных количественных лицензий под внутреннее использование. Через настройки, ключ licowned.
# Рабочий домен передает часть зарезервированных лицензий своим сущностям (например sipuser, provider) через их свойство <code>lic</code>.
# Рабочий домен передает часть полученных и незарезервированных количественных лицензий дочерним доменам через их свойство <code>lic</code>.
 
= Расширение лицензией продукта =
Файл лицензии расширяет показатели продуктовой лицензии.
 
Все количественные показатели суммируются, качественные показатели активируются, если хотя бы в одной из лицензий: продуктовой или
 
== Суффикс <code>tilldt</code> для <code>dql</code> ==
Суффикс может быть добавлен к строковому представлению любого значения в разделе <code>dql</code> файла лицензии и ограничить применение этого значения до указанной даты. Может комбинировать сразу несколько значений.
 
Например, стандартное значение <code>"devices": 100</code> может быть изменено следующим образом:
 
* <code>"devices": "100"</code> : не изменяет поведение.
* <code>"devices": "100,tilldt=2025-10-01"</code> : до 1 октября 2025 года – <code>100</code>, после – <code>0</code>.
* <code>"devices": "100;500,tilldt=2022-10-01;200,tilldt=2023-02-23"</code> : до 1 октября 2022 года – <code>800</code>, до 23 февраля 2023 года – <code>300</code>, после – <code>100</code>.
 
== Особенности ==
С периодичностью в несколько минут лицензия пересчитывается, тем самым обновляя свои условные показатели.
 
В случае изменения значений в меньшую сторону сервером производится перезагрузка доменного дерева.
 
Лицензии могут быть изъяты из дочерних доменов в объеме не большем, чем <code>X = T - O - D</code>, где
 
* <code>T</code> – количество выделенных домену лицензий,
* <code>O</code> – количество зарезервированных лицензий,
* <code>D</code> – количество выделенных дочерним доменам лицензий.
 
Если домен заблокирован (свойство <code>opts.isblocked</code>), то из него могут быть изъяты все лицензии.
 
При потере связи между сайтами, они сохраняют последнюю активную лицензию вплоть до успешной синхронизации с мастер-сайтом. После перезагрузки система также применяет последнюю активную лицензию.
 
Безлимитные значения количественных показателей лицензии (числовые значения больше <code>123456789</code>), устанавливаемые в ассете продукта defaultlic.json, распространяются по дереву доменов автоматически.
 
== Временные лицензии ==
Ограничение количественных показателей может производиться с помощью
 
* суффикса <code>tilldt</code> у конкретных значений;
* настройки альтернативных конфигураций.
 
== Тестовые лицензии ==
В целях ограничений для тестовой эксплуатации могут применяться:
 
* параметр <code>dlgtimesec</code>;
* ограничения во времени:
** уменьшающие количественные показатели, в том числе домены;
** активирующие альтернативные конфигурации с отключенной функциональностью.

Текущая версия от 13:52, 11 августа 2025

Учебную лицензию можно найти в соответствующей статье, остальные лицензии могут быть получены через вашего менеджера.

Общая информация

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

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

По-умолчанию выдаётся три пароля для получения активационного токена, которые позволяют три раза активировать систему. Этого количества достаточно в 90% случаев, однако если по какой-либо причине требуются дополнительные пароли активации, необходимо обратиться к вашему менеджеру.

При этом, один активационный пароль используется для одного инстанса системы.

При применении активационного пароля, экземпляр платформы автоматически получает токен активации с сервера лицензий.

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

Использование нескольких инстансов, как правило, подразумевает резервирование (например, master-slave или hot/cold). Каждый инстанс работает самостоятельно, а их синхронизация достигается механизмами ETL. В данной конфигурации, каждый инстанс требует собственный токен активации.

Управление лицензиями


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

Работа с лицензиями осуществляется в приложении Настройки, раздел Домен -> Лицензия (license).

Проверка лицензии

В стандартной ситуации, система раз в несколько минут перепроверяет параметры лицензии и валидирует её на серверах вендора.

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

Распределение лицензий по доменам

Распределение лицензий

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

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

Способы активации системы

Платформа эра позволяет провести активацию следующими двумя способами:

  1. Установка лицензии с помощью токена (по умолчанию до версии 1.9). Токен предоставляется менеджером, и вручную задаётся администратором при активации. Токен используется для активации один раз, для повторной активации необходимо запрашивать новый токен у менеджера.
  2. Установка лицензии с помощью идентификатора и пароля (по умолчанию с версии 1.9). Менеджером предоставляется набор паролей. В интерфейсе лицензии указывается идентификатор лицензии и пароль в формате [license_identifier]/[password]. Один пароль может использован для активации один раз. Для повторной активации необходимо использовать любой из дополнительных паролей активации. В данном режиме, система сама получает и регулярно обновляет токен.

Начиная с версии 1.9, из интерфейса администрирования мастер-домена доступен только второй способ. Для активации системы токеном (например, в закрытых контурах) необходимо использовать соответствующий метод API.

Сервера лицензирования

Для взаимодействия с серверами лицензирования, необходимо обеспечить доступ по протоколу HTTPS к поддоменам era-platform.ru (activate.era-platform.ru, activate2.era-platform.ru и другие). Привязка к конкретным IP-адресам возможна только временно, они могут меняться. Список доменов также может меняться в зависимости от версии системы.

Полезные ссылки

Инструкция по активации лицензии доступна на ресурсе Vendor (шаг 4).

Детальная информация о параметрах лицензии и активационном токене представлена в соответствующей статье.