Skip to content

Обзор возможностей

Ongrid организован как 4-слойный стек. Разделение существует, потому что каждый слой имеет другой темп обновления, другой blast radius и другую посторовую аудит-постуру — их объединение породило анти-паттерн «AI agent, который ssh-ит вокруг», на котором ранние прототипы провалились.

Почему это важно для операторов

Большинство сквозных функций ниже (аудит, role gating, hot provider swap, blast-radius walk) живут на одном конкретном слое. Если у вас вопрос «X не работает», слой, которому эта страница это назначает, — это где живёт его конфиг.

Четыре слоя

L1 — Кластер

Физическая или виртуальная инфраструктура: хосты, процесс manager, встроенный стек MySQL / Prometheus / Loki / Tempo / Grafana / Qdrant, и двунаправленный брокер туннеля geminio.

Ongrid НЕ абстрагирует этот слой — нет inventory-схемы, нет CMDB. Хосты обнаруживаются, когда edge-агент дозвонился домой. Слой кластера — это «всё, к чему бинарь manager прикасается в рантайме».

L2 — Edge tunnel + device-direct

Каждый хост запускает один бинарь ongrid-edge, который устанавливает одно исходящее geminio-соединение к manager. Туннель мультиплексирует:

  • Обратные RPC — manager → edge вызовы скилла на хосте (Caller.Call(ctx, edgeID, method, body), internal/manager/biz/aiops/tools/registry.go:34).
  • WebSSH-стримы — трафик интерактивного терминала по выделенному классу стрима, см. WebShell.
  • Сигналинг плагинов — контрольный канал, который говорит edge, какие под-плагины (promtail, otelcol, node-exporter) порождать.

Идея «device-direct» — это определяющая ставка L2: manager адресует реальные хосты, не сервисные абстракции. Когда агент говорит «перезапустить nginx на edge-prod-04», ровно один хост запускает команду.

L3 — Intelligence

Graph-kernel ReAct-агент, реестр инструментов, реестр персон, база знаний и LLM provider router. Живёт целиком manager-side, разговаривает с L2 только через набор инструментов.

Ключевые файлы:

L4 — Alerting

Вычисление правил, lifecycle инцидентов, auto-RCA fan-out, channel routing, inhibition. Управляется сигналами Prometheus + Loki + Tempo, которые собирает L1, и пишет обратно через L3 (персона investigator), когда инцидент срабатывает.

Ключевые файлы:

Матрица возможностей

ВозможностьСлойСтраница
Правила алертов (8 metric + 6 log/trace типов)L4Алерты
Auto root-cause analysis при срабатывании инцидентаL3 + L4RCA
Встраивание Prometheus + GrafanaL1Мониторинг
Поиск по логам Loki + алерты на логахL1 + L4Логи
Поиск по трейсам Tempo + алерты на трейсахL1 + L4Трейсы
Граф сервисов / устройств с blast-radius walkL3Топология
RAG против vault + ваших собственных репозиториевL3Знания
30+ host / observability / knowledge инструментовL2 + L3Skills
WebSSH с полной записью сессииL2WebShell

Чем эта страница не является

Это обзор, обращённый к оператору. Для design rationale (почему PromQL был оставлен как канонический предикат, почему edge выходит наружу, почему remote_write предпочтительнее scrape) см. индекс ADR/HLD в дереве docs/ GitHub-репозитория.

См. также