---
title: Эксплуатация
description: Обновление до последнего образа, ротация учётных данных, поведение при остановке, масштабирование и резервное копирование базы данных для установки Human Plugin.
canonical: https://developer.unico.io/ru/human-plugin/self-hosting/operations
locale: ru
generated_by: markdown-export
---

# Эксплуатация

Повседневная работа с Human Plugin.

## Обновления

Используйте образ `latest` и обновляйтесь, когда Unico объявляет о новом релизе:

- **Docker Compose:** `docker compose pull && docker compose up -d`.
- **Kubernetes:** `kubectl -n human-plugin rollout restart deployment/human-plugin` с `imagePullPolicy: Always`.

Новый релиз при запуске подготавливает нужные ему таблицы до приёма трафика, поэтому ручные действия с базой данных не требуются. Сделайте резервную копию базы данных перед обновлением в продакшене, а затем проверьте `/health/ready` и реальный запрос на создание.

## Ротация учётных данных

**Ключ доступа.** Unico выдаёт новый ключ с периодом перекрытия. Обновите `HUMAN_API_ACCESS_KEY` в вашем `.env` или Secret, перезапустите Human Plugin (`docker compose up -d --force-recreate` или `kubectl -n human-plugin rollout restart deployment/human-plugin`), убедитесь, что создание процесса проходит успешно, а затем попросите Unico отозвать старый ключ.

**Учётные данные реестра.** Unico выдаёт новый токен, пока старый ещё работает. Выполните вход заново с новым токеном (или пересоздайте pull secret в Kubernetes), загрузите образ один раз для проверки, а затем попросите Unico отозвать старый токен. Работающие контейнеры это не затрагивает.

**Пароль базы данных.** Измените его в PostgreSQL и в `POSTGRES_PASSWORD`, затем перезапустите Human Plugin.

## Остановка

При получении `SIGTERM` Human Plugin перестаёт принимать соединения и ждёт до 55 секунд завершения запросов в обработке, так как создание может занимать до 30 секунд, после чего сохраняется результат. Установите тайм-аут остановки не менее 60 секунд. Прерванное создание при последующем чтении будет помечено как завершившееся неудачей.

## Масштабирование

Human Plugin не хранит состояние запросов в памяти, поэтому несколько контейнеров могут использовать одну базу данных. Добавляйте одну реплику на каждые 1 500 транзакций в минуту и увеличьте `max_connections` в PostgreSQL до 25 × число реплик + 10. См. [Требования к оборудованию](/ru/human-plugin/self-hosting/overview#hardware-requirements).

## Каталог атрибутов

Human Plugin загружает [каталог атрибутов](/ru/human-plugin/additional-resources/attribute-catalog) один раз при запуске. Новая версия каталога попадает в контейнер при его следующем перезапуске. Перезапуск контейнеров по одному сохраняет доступность сервиса.

## Резервные копии

В вашей базе данных хранятся аналитические данные, на основе которых вычисляется `data.ndocs`. Делайте её резервные копии собственными средствами и проверяйте восстановление. Потеря базы данных означает потерю этих данных, и восстановить их невозможно.