HolmesGPT в продакшене: опыт внедрения AIOps-агента на шести Kubernetes-кластерах
Компания Tuna поделилась опытом внедрения HolmesGPT — открытого SRE-агента из CNCF Sandbox — в шести Kubernetes-кластерах, включая собственный и пять клиентских. Инженеры написали и открыли собственный мост holmes-alert-bridge для интеграции с Alertmanager, поскольку штатной push-интеграции в открытой версии агента нет. Разбор алерта занимает 2–3 минуты и стоит от нескольких рублей до 30 центов в зависимости от выбранной модели.
Компания Tuna, специализирующаяся на DevOps-сопровождении, опубликовала развёрнутый отчёт о внедрении HolmesGPT — открытого SRE-агента, входящего в CNCF Sandbox, — в шести Kubernetes-кластерах. Речь идёт о собственном кластере Tuna и пяти кластерах клиентов, которые находятся на сопровождении: один проект размещён в российском облаке, второй — зарубежный, распределённый между двумя облачными провайдерами. Целью внедрения было сократить время первичного расследования инцидентов, которое у дежурных инженеров почти всегда занимает одни и те же действия: открыть дашборд, найти проблемный Pod, просмотреть логи и вспомнить, что выкатывалось накануне.
По данным авторов, после срабатывания алерта разбор появляется в чате в среднем через четыре минуты с учётом задержки группировки в Alertmanager, а чистый цикл работы агента занимает 2–3 минуты. Стоимость одного разбора варьируется от нескольких рублей до 10–30 центов в зависимости от выбранной модели. Гипотеза агента оказывается верной в 90–95 процентах случаев, однако эта оценка основана на субъективных ощущениях дежурных, а не на систематическом сопоставлении выводов агента с реальными причинами инцидентов. В одном из разобранных эпизодов в кластере Tuna от начала проблемы до готовой гипотезы прошло чуть более девяти минут, из которых пять минут заняло ожидание срабатывания самого правила алерта.
Технически HolmesGPT представляет собой классический агентный цикл: языковая модель получает вопрос, выбирает инструмент, анализирует результат и повторяет цикл до формирования ответа. На один алерт уходит от двух-трёх десятков вызовов инструментов, а в сложных случаях — до сотни. Архитектура включает toolsets — наборы инструментов для Kubernetes, Prometheus, VictoriaLogs, ArgoCD, Grafana и проверок сетевой доступности, skills — файлы SKILL.md с описанием процедур, которые агент подгружает по необходимости, а также поддержку любой модели через litellm, будь то Anthropic, OpenAI, Azure, Bedrock, Gemini, Ollama или OpenRouter. Запуск возможен через CLI, HTTP-сервер с Helm-чартом, оператор для Kubernetes в alpha-статусе или Python SDK. Проект распространяется под лицензией Apache 2.0, создан в Robusta.dev при участии Microsoft, имеет около 3,5 тысячи звёзд на GitHub и получает релизы каждые одну-две недели — за последние четыре месяца их вышло тринадцать.
Ключевое ограничение открытой версии HolmesGPT — отсутствие штатной push-интеграции с Alertmanager. Именно поэтому инженеры Tuna разработали holmes-alert-bridge: инструмент принимает алерт, отсеивает лишние уведомления, передаёт агенту контекст и возвращает разбор обратно в чат. Код моста был открыт. При этом команда сознательно ограничила возможности агента: HolmesGPT работает только в режиме чтения и формирует исключительно гипотезы, не выполняя никаких исправляющих действий. Сам агент умеет больше — при наличии прав на запись и описанных skills он способен не только находить причину, но и устранять её, однако в Tuna эту функциональность не активируют. Ответ агента явно помечается как гипотеза, а не как диагноз, что оставляет финальное решение за дежурным инженером.
Отдельное внимание в отчёте уделено вопросам безопасности и стоимости. Авторы предупреждают: перед внедрением необходимо проверить логи на наличие паролей, токенов и персональных данных, поскольку всё, что прочитает агент, уйдёт провайдеру модели. В конфигурации используется параметр provider.zdr, обеспечивающий нулевое хранение данных на стороне поставщика. Побочным эффектом платности каждого вызова стала неожиданная мотивация чинить повторяющиеся алерты системно: когда у каждого срабатывания появляется строчка расходов, игнорировать проблему становится сложнее. Развёртывание выполняется внутри Kubernetes отдельной инсталляцией на каждый кластер, что избавляет от необходимости строить сложную авторизацию — агент работает под ServiceAccount своего кластера с правами только на чтение и не видит ничего за его пределами. Минимальный values.yaml включает переменные окружения с ключом модели, настройку окна контекста и список включённых toolsets, при этом все возможности, связанные с записью или выходом во внешнюю сеть, явно отключаются.
Для российского рынка этот опыт представляет интерес по нескольким причинам. Во-первых, использование open-source решения с лицензией Apache 2.0 позволяет развернуть агента полностью на собственной инфраструктуре, включая локальные модели через Ollama, что снимает вопросы передачи данных зарубежным провайдерам. Во-вторых, поддержка российских облаков и инструментов мониторинга, таких как VictoriaLogs, делает HolmesGPT применимым в контурах, где зарубежные SaaS-сервисы недоступны. В-третьих, прозрачная модель затрат на каждый вызов позволяет командам точнее планировать бюджет на AIOps-инициативы. Конкуренцию HolmesGPT составляют как коммерческие платформы AIOps от крупных вендоров, так и самописные решения на базе LangChain или аналогичных фреймворков, однако готовый набор toolsets и skills снижает порог входа. Открытый мост holmes-alert-bridge, в свою очередь, закрывает наиболее болезненный разрыв между популярным в российской практике Alertmanager и агентом.
Перспективы дальнейшего развития связаны с несколькими открытыми вопросами. Команда пока не начала систематически сверять гипотезы агента с фактическими причинами инцидентов, поэтому реальная точность может отличаться от заявленных 90–95 процентов. Остаётся неясным, насколько масштабируется подход при росте числа кластеров и как будет вести себя стоимость при переходе на более мощные модели. Статус оператора для Kubernetes в alpha-версии означает, что управление жизненным циклом агента в кластере ещё не готово к промышленной эксплуатации. Наконец, вопрос о том, стоит ли со временем давать агенту права на запись и автопочинку, остаётся дискуссионным: сам HolmesGPT такую возможность предоставляет, но Tuna сознательно от неё отказывается, и этот выбор, вероятно, станет предметом отраслевой дискуссии по мере накопления опыта.