Лицензии
Бесплатное ядро Arkvory работает без лицензии на платные модули. Лицензия включает платные функции ProAnimaStudio, в том числе Arkvory Pro. Истечение лицензии не делает существующие данные Pro нечитаемыми; при недоступности платных функций новые загрузки используют хранилище ядра и обычную передачу. Пока вы не активировали лицензию, Arkvory никуда не отправляет ничего о лицензиях.
Команды этой страницы выполняются на хосте установки: от root в Linux или от администратора в Windows. Установки Docker Compose не загружают модули, поэтому эти команды там отклоняются.
Активация онлайн
Сохраните ключ лицензии с сайта ProAnimaStudio в файл, который можете читать только вы, например
/root/arkvory.key.Активируйте:
bashsudo arkvory license activate --key-file /root/arkvory.key --root /opt/proanima-arkvoryУдалите локальный файл ключа после активации. Сохраните доступ к ключу в личном кабинете: он может понадобиться для восстановления.
Arkvory отправляет запрос в хаб установки (адрес из config/hub.json, тот же, что для обновлений) по HTTPS с проверкой сертификата. Ответ принимается, только если его подписал ключ лицензий ProAnimaStudio — для этой установки и этого запроса. Ключ с опечаткой отклоняется до отправки. Повторная активация той же установки тем же ключом не занимает нового места лицензии.
Что отправляется
| Запрос | Содержимое |
|---|---|
| Активация | Ключ лицензии, id установки, случайное значение, версия Arkvory, id и версии установленных платных модулей, время запроса |
| Обновление | Id активации и её секрет, случайное значение, порядковый номер, версии |
Название владельца лицензии, имена людей, адреса, сведения о машине, объёмы данных, имена репозиториев, содержимое, metadata и статистика использования не отправляются никогда. Выключенная статистика ничего здесь не добавляет и не убирает. При выключенном хабе (--hub-off) используйте офлайн-активацию.
Что хранится
- Токен — подписанный документ хаба — в базе данных и в резервных копиях.
- Секрет активации — файл в
config/licenses/, который читает только учётная запись служб. Его нет в базе данных, журналах и резервных копиях. - Ключ лицензии — нигде.
Проверка состояния
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 | в режиме модуля до его конца |
expired | trial_expired, licence_expired или activation_stale (токен кончился) | в форме ядра |
revoked | Подписанный отзыв; причина показана | в форме ядра |
invalid | Сохранённый документ не проходит проверку | в форме ядра |
В любом состоянии данные остаются читаемыми, резервное копирование и восстановление работают, а публикация никогда не отказывает из-за лицензии: без лицензии платный модуль пишет новые данные в форме бесплатного ядра. Запись в режиме модуля возобновляется сама после успешного обновления.
Обновление и офлайн-окно
Worker обновляет каждую активацию примерно раз в сутки и при запуске. Каждое обновление приносит новый токен и новый секрет; прежний секрет перестаёт действовать.
Если хаб недоступен, worker повторяет попытку через 15 минут, затем каждый раз ждёт дольше, до 6 часов. Лицензия остаётся valid; через сутки без обновления она offline-grace; когда токен кончается (офлайн-окно: по умолчанию 30 дней, у пробного периода 7), она expired с activation_stale. Отказ хаба, например licence_expired или activation_suspended, не повторяется: устраните причину и выполните:
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. Деактивируйте другую установку и обновите.
Деактивация
sudo arkvory license deactivate lic_0123456789ABCDEFGHJKMNPQRS --root /opt/proanima-arkvoryУкажите лицензию или одну активацию. Хаб освобождает место, а Arkvory удаляет секрет.
Офлайн-активация
Для хостов без доступа к хабу:
Создайте файл запроса:
bashsudo arkvory license request --key-file /root/arkvory.key --out /root/request.json --root /opt/proanima-arkvoryВ файле SHA-256 ключа, а не сам ключ. Arkvory для этого не обращается к сети.
Загрузите файл в личном кабинете ProAnimaStudio и скачайте ответ.
Установите ответ:
bashsudo 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 повторит попытку |