Automatizace diagnostiky incidentů: Vytvoření AI asistenta s n8n a LLM
AI agenti jsou schopni převzít primární analýzu systémových upozornění, čímž zkracují reakční dobu týmu. Podívejme se na praktickou implementaci asistenta na platformě n8n s využitím LLM a Model Context Protocol (MCP) pro integraci s infrastrukturními nástroji.
Architektura AI asistenta pro zpracování upozornění
Systém je postaven kolem centrálního workflow v n8n, které je aktivováno webhookem z Alertmanageru. Hlavní komponenty zahrnují:
- Spouštěč webhooku pro příjem událostí z monitorovacích systémů
- Uzel předzpracování (Code node) pro formátování dat upozornění
- AI Agent node s připojenou LLM (doporučují se Codex nebo Opus)
- Sada MCP serverů pro interakci s externími systémy
- Vektorové úložiště (Qdrant) pro rychlý přístup k dokumentaci
- Integrace s chatem (Slack) pro odesílání výsledků
Klíčovou výhodou tohoto přístupu je, že agent začíná s diagnostikou ihned po spuštění upozornění, bez čekání na reakci inženýra.
Nastavení zdrojů dat přes Model Context Protocol
MCP servery poskytují agentovi přístup k infrastruktuře bez přímého programování integrací. V typické implementaci se používají:
- mcp-grafana — pro dotazy na metriky a logy
- kubernetes-mcp — získání stavu podů, událostí clusteru
- digitalocean-mcp — monitorování cloudových zdrojů
- gitlab-mcp — kontrola souvisejících release v CI/CD
Každý MCP by měl pracovat v režimu remote HTTP streaming. Systémový prompt agenta musí obsahovat jasné instrukce pro použití každého nástroje, včetně omezení (například zákaz provádění změn).
Konfigurace vektorového úložiště znalostí
Qdrant se používá jako cache často dotazovaných informací, což šetří tokeny LLM a urychluje diagnostiku. Nastavení zahrnuje:
- Vytvoření kolekce přes webové rozhraní Qdrant (port 6333)
- Nastavení autentizace přes Service API token
- Připojení úložiště jako nástroje k AI agentovi
- Načtení dokumentace přes samostatný workflow n8n
Do úložiště se typicky ukládá:
- Popisy upozornění a podmínek jejich spuštění
- Dokumentace k architektuře služeb
- Historické zprávy o incidentech
- Konfigurační příručky
Proces diagnostiky a formát zprávy
Algoritmus analýzy incidentu sleduje logiku zkušeného inženýra:
- Analýza metriky-spouštěče — určení charakteru anomálie (špička, růst, stabilně kritická hodnota)
- Diferenciace selhání — programová chyba nebo problém na infrastrukturní úrovni
- Kontrola zdrojů — vytížení CPU, paměti, síťové metriky, systémové limity
- Studium logů — hledání chyb v problematických komponentech
- Analýza změn — kontrola nedávných release a technických prací
- Přímá kontrola — interakce s komponentami přes orchestrátor nebo shell
Zpráva je formátována způsobem vhodným pro lidské vnímání:
- Stručné shrnutí zjištěných faktů
- Seznam pravděpodobných příčin problému
- Doporučení k nápravě
- Odkazy na relevantní dashboardy a logy
Výsledky jsou odesílány do vlákna odpovídajícího upozornění v Slacku, což zajišťuje kontext pro další diskuzi týmem.
Praktická implementace workflow v n8n
Workflow se skládá z po sobě jdoucích fází:
- Příjem upozornění — Webhook node, přijímající události od Alertmanageru
- Předzpracování — Code node pro extrakci klíčových polí: Alertname, Description, Labels, namespace, instance, env, region, odkazy na Grafana Dashboard a Runbook
- Diagnostika — AI Agent node se systémovým promptem, popisujícím infrastrukturu a pravidla analýzy
- Hledání kontextu — obracení se na MCP servery a vektorové úložiště
- Odesílání výsledků — integrace s Slack API pro publikaci zprávy ve vlákně
Průměrná doba zpracování upozornění je asi 30 sekund — za toto období agent stihne zkontrolovat metriky, logy, stav clusteru Kubernetes a vytvořit závěr.
Co je důležité
• AI agent nenahrazuje inženýra, ale přebírá rutinní primární diagnostiku, zkracuje čas od spuštění upozornění k porozumění problému
• MCP servery zajišťují bezpečný přístup k infrastruktuře bez nutnosti poskytování LLM přímých přihlašovacích údajů
• Vektorové úložiště šetří tokeny a urychluje analýzu díky cachování často používaných informací
• n8n poskytuje vizuální prostředí pro vytváření složitých workflow bez hlubokého programování
• Systém je obzvláště efektivní v mimopracovní dobu, kdy je službu konající inženýr možná nedostupný pro okamžitou reakci
Testování a optimalizace práce asistenta
Při nasazení systému se doporučuje:
- Začít s nekritickými upozorněními pro ověření logiky analýzy
- Monitorovat spotřebu tokenů LLM pro kontrolu nákladů
- Nastavit limity času provedení pro MCP dotazy
- Pravidelně aktualizovat znalosti ve vektorovém úložišti
- Analyzovat přesnost doporučení agenta pro jemné doladění promptů
Typické výsledky práce zahrnují správnou identifikaci problémů s pamětí v kontejnerech, síťová zpoždění, selhání při nasazení nových verzí a resource contention v clusterech Kubernetes.
— Editorial Team
Zatím žádné komentáře.