WFWarpFleet / документация Личный кабинет Консоль

Как работает агент

Никакой магии: агент — это цикл из пяти этапов, который повторяется каждые 30 секунд. Всё, что он умеет чинить, описано декларативными плейбуками, которые можно прочитать глазами.

Цикл: Collect → Detect → Policy → Remediate → Persist

  1. Collect. Коллекторы снимают состояние: ресурсы (CPU/RAM/диск/inode), службы systemd, журналы, пакетный менеджер, сеть и DNS, LVM и хранилище, синхронизацию времени, доменную аутентификацию, Kubernetes, а также рантайм конкретных сервисов — PostgreSQL, MySQL/MariaDB, nginx/Apache/HAProxy, почту, Java-приложения. Медленный коллектор отсекается по таймауту и не тормозит цикл.
  2. Detect. Из снимка выводятся классы проблем: «диск заполнен», «служба упала», «репликация отстала», «conntrack переполнен»… Диагностические наблюдения без плана починки помечаются как advisory и не влияют на статус ноды — алерты только на то, с чем можно что-то сделать.
  3. Policy. Политика решает, что делать с инцидентом: чинить автоматически, запросить подтверждение оператора или только показать. Здесь же действуют лимиты тарифа и режим наблюдения.
  4. Remediate. Для инцидента подбирается плейбук: сначала прекчеки (безопасно ли чинить), потом шаги, потом верификация «проблема действительно ушла». Не ушла — автоматический откат по описанным шагам. Повторный запуск того же плейбука на том же инциденте дедуплицируется, у каждого класса — свой cooldown.
  5. Persist. Результат пишется локально (SQLite на ноде) и отправляется в консоль сжатым снимком. Пропала связь — агент продолжает работать автономно, история не теряется.

Push-модель: нода ничего не открывает

Агент сам инициирует все соединения — исходящий HTTPS с Bearer-токеном. Входящий SSH и открытые порты не нужны, серверы за NAT работают без пробросов. Даже браузерный терминал консоли работает через обратный туннель, который поднимает сам агент.

Плейбуки

Плейбук — YAML-файл: класс проблемы, поддерживаемые ОС, уровень риска, разрешённые команды, прекчеки, шаги, верификация, политика отката. В библиотеке их 270, покрывают диски, службы, сеть, БД, Kubernetes и специфику отечественных ОС. Обновления библиотеки агент забирает подписанным архивом — подделать плейбук нельзя (подробнее в «Безопасности»).

Режим наблюдения (monitor-only)

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

Сколько ест агент

Один бинарь, без интерпретаторов и зависимостей. Системный лимит памяти — жёсткий (1 ГБ hard-cap на уровне systemd, обычное потребление в разы ниже), CPU — единицы процентов на снятие снимка раз в 30 секунд. Watchdog systemd перезапустит агента, если тот завис.