Перейти к содержимому

Лицензии ​

Бесплатное ядро Arkvory работает без лицензии на платные модули. Лицензия включает платные функции ProAnimaStudio, в том числе Arkvory Pro. Истечение лицензии не делает существующие данные Pro нечитаемыми; при недоступности платных функций новые загрузки используют хранилище ядра и обычную передачу. Пока вы не активировали лицензию, Arkvory никуда не отправляет ничего о лицензиях.

Команды этой страницы выполняются на хосте установки: от root в Linux или от администратора в Windows. Установки Docker Compose не загружают модули, поэтому эти команды там отклоняются.

Активация онлайн ​

  1. Сохраните ключ лицензии с сайта ProAnimaStudio в файл, который можете читать только вы, например /root/arkvory.key.

  2. Активируйте:

    bash
    sudo arkvory license activate --key-file /root/arkvory.key --root /opt/proanima-arkvory
  3. Удалите локальный файл ключа после активации. Сохраните доступ к ключу в личном кабинете: он может понадобиться для восстановления.

Arkvory отправляет запрос в хаб установки (адрес из config/hub.json, тот же, что для обновлений) по HTTPS с проверкой сертификата. Ответ принимается, только если его подписал ключ лицензий ProAnimaStudio — для этой установки и этого запроса. Ключ с опечаткой отклоняется до отправки. Повторная активация той же установки тем же ключом не занимает нового места лицензии.

Что отправляется ​

ЗапросСодержимое
АктивацияКлюч лицензии, id установки, случайное значение, версия Arkvory, id и версии установленных платных модулей, время запроса
ОбновлениеId активации и её секрет, случайное значение, порядковый номер, версии

Название владельца лицензии, имена людей, адреса, сведения о машине, объёмы данных, имена репозиториев, содержимое, metadata и статистика использования не отправляются никогда. Выключенная статистика ничего здесь не добавляет и не убирает. При выключенном хабе (--hub-off) используйте офлайн-активацию.

Что хранится ​

  • Токен — подписанный документ хаба — в базе данных и в резервных копиях.
  • Секрет активации — файл в config/licenses/, который читает только учётная запись служб. Его нет в базе данных, журналах и резервных копиях.
  • Ключ лицензии — нигде.

Проверка состояния ​

bash
sudo arkvory license status --root /opt/proanima-arkvory

Для скриптов добавьте --json. Глобальный администратор видит то же в GET /api/v1/system/license (справочник). Arkvory каждый раз заново проверяет каждый сохранённый документ; документ без подписи ProAnimaStudio — invalid и ничего не включает.

СостояниеЗначениеПлатная запись
validЛицензия действует; refreshFailing, если хаб какое-то время не отвечаетв режиме модуля
offline-graceОбновления нет больше суток; токен действует до offlineGraceUntilв режиме модуля
graceСрок лицензии кончился; льготный период продления до graceUntilв режиме модуля
mismatchТокен принадлежит другой установке (восстановление в другом месте); льготный период до graceUntilв режиме модуля до его конца
expiredtrial_expired, licence_expired или activation_stale (токен кончился)в форме ядра
revokedПодписанный отзыв; причина показанав форме ядра
invalidСохранённый документ не проходит проверкув форме ядра

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

Обновление и офлайн-окно ​

Worker обновляет каждую активацию примерно раз в сутки и при запуске. Каждое обновление приносит новый токен и новый секрет; прежний секрет перестаёт действовать.

Если хаб недоступен, worker повторяет попытку через 15 минут, затем каждый раз ждёт дольше, до 6 часов. Лицензия остаётся valid; через сутки без обновления она offline-grace; когда токен кончается (офлайн-окно: по умолчанию 30 дней, у пробного периода 7), она expired с activation_stale. Отказ хаба, например licence_expired или activation_suspended, не повторяется: устраните причину и выполните:

bash
sudo arkvory license refresh --root /opt/proanima-arkvory

Перевод часов назад ничего не продлевает: Arkvory судит по самому позднему времени, которое видел. Если часы базы данных отстают от него больше чем на сутки, показывается clockRollback.

Если запрос обновления мог дойти до хаба, но ответ потерян, Arkvory допускает только один повтор в пределах 10-минутного окна, включая перезапуск. Если исход остался неизвестен, бюджет повтора исчерпан, окно закончилось или полученный токен недействителен, activation_recovery_required останавливает дальнейшие обновления. Текущий токен действует до своего срока. Получите ключ и повторите license activate --key-file <file>; команда license refresh это состояние не устраняет.

Копии и восстановление ​

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

Резервная копия, восстановленная на другой установке, сохраняет токен, который принадлежит прежней установке: состояние mismatch с льготным периодом. Активируйте новую установку ключом, затем деактивируйте прежнюю.

Активация, которая не обновлялась дольше своего офлайн-окна и ещё 30 дней, истекает, и её место освобождается. Следующее обновление занимает место снова, пока свободное есть; иначе оно отклоняется с activation_lapsed. Деактивируйте другую установку и обновите.

Деактивация ​

bash
sudo arkvory license deactivate lic_0123456789ABCDEFGHJKMNPQRS --root /opt/proanima-arkvory

Укажите лицензию или одну активацию. Хаб освобождает место, а Arkvory удаляет секрет.

Офлайн-активация ​

Для хостов без доступа к хабу:

  1. Создайте файл запроса:

    bash
    sudo arkvory license request --key-file /root/arkvory.key --out /root/request.json --root /opt/proanima-arkvory

    В файле SHA-256 ключа, а не сам ключ. Arkvory для этого не обращается к сети.

  2. Загрузите файл в личном кабинете ProAnimaStudio и скачайте ответ.

  3. Установите ответ:

    bash
    sudo arkvory license install /root/answer.json --root /opt/proanima-arkvory

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

Ошибки ​

КодЗначение
licence_key_invalidХаб не знает этот ключ
activation_limit_reachedВсе места лицензии заняты; деактивируйте другую установку
answer_invalidОтвет не подписан ProAnimaStudio или относится к другой установке или запросу; ничего не сохраняется
installation_mismatch, nonce_unknownОфлайн-ответ относится к другой установке или ни к одному ожидающему запросу
seq_replayedДокумент старше сохранённого; отклонён
revocation_rollbackСписок отзыва старше сохранённого
unreachable, timeout, tls_failed, hub_errorХаб недоступен; worker повторит попытку

Arkvory · ProAnimaStudio