Сетевые требования и SLA¶
На этой странице — всё, что нужно сетевикам и SRE для планирования развёртывания Glarus AI: исходящие домены по каждому поддерживаемому провайдеру LLM, требования к сети, заявленные SLA.
Сетевые требования по провайдерам¶
Сам Glarus AI (оркестратор, MCP-сервер, MongoDB) работает в контуре заказчика и не требует исходящего интернет-трафика. Исходящий трафик нужен только для вызова выбранной LLM.
| Провайдер | Исходящие домены | Порт | Доступ из РФ |
|---|---|---|---|
| MWS GPT | api.gpt.mws.ru (уточняется в ЛК MWS) |
443 | прямой доступ, VPN не требуется |
| Локальная LLM (Ollama / совместимый сервер) | внутренний адрес (http://localhost:11434, http://llm.internal:8000) |
— | трафик не покидает периметр |
Для корпоративного прокси разрешите CONNECT на указанные домены. Glarus AI принимает настройки прокси через переменные окружения HTTP_PROXY, HTTPS_PROXY, NO_PROXY на уровне контейнера.
Сценарии работы в РФ¶
Без VPN — рекомендуемый путь для корпоративного внедрения¶
Работает при использовании MWS GPT или локальной LLM (Ollama в контуре). В этом сценарии никаких обходных средств не требуется: трафик остаётся либо внутри контура, либо внутри РФ.
Полная изоляция — для закрытых контуров¶
Для сегментов без интернета (ГОСТ-аттестованные системы, ОПК, критическая инфраструктура) работает только сценарий с локальной LLM. См. раздел «Локальная модель (Ollama)» в llm-providers/.
SLA¶
SLA на уровне платформы Glarus AI¶
Сам Glarus AI развёрнут в контуре заказчика — уровень доступности определяется инфраструктурой заказчика и составом HA-кластера. Типовые значения при рекомендуемом развёртывании (2+ узла Glarus, HA MongoDB, HA PostgreSQL) — 99,9 % в год.
SLA провайдеров LLM — ответственность внешняя¶
Glarus Digital не может гарантировать SLA внешнего облачного LLM — за доступность API отвечает провайдер. Ориентиры от провайдеров:
- MWS GPT — заявленная стабильность работы 99,95 %, инфраструктура в аттестованном сегменте 152-ФЗ УЗ-1. Пример с официального сайта: «обеспечивает стабильность работы на уровне 99,95 %». Источник: mws.ru/services/mws-gpt/ и mws.ru/services/iaas-152-fz/. Платформа включает более 70 LLM.
Для внедрений, где суточный простой LLM недопустим, рекомендуется использовать провайдера с публичным SLA (MWS GPT) в связке с локальной LLM как резервом.
Мониторинг Glarus AI (Prometheus)¶
Glarus AI публикует базовые технические метрики Prometheus на /metrics. Доступ настраивается администратором через METRICS_SECRET: запрос должен содержать Authorization: Bearer <секрет>. Без настроенного секрета, без заголовка или с неверным секретом возвращается HTTP 401. Сборщик должен обращаться к серверу Glarus AI, а не к адресу Glarus BI или MCP.
| Метрика | Что измеряется |
|---|---|
http_requests_total, http_request_duration_seconds, http_requests_in_flight | Число HTTP-запросов, гистограмма длительности и выполняемые запросы. У счётчика и гистограммы метки method, path, status. |
sse_streams_total, sse_streams_in_flight, sse_stream_duration_seconds | Число, активность и длительность открытых SSE-потоков ответа. Длительность потока не равна времени до первого токена. |
generation_jobs_total, generation_jobs_in_flight | Задания генерации: счётчик с метками store и result, активные задания — с store. |
mongoose_queries_total, mongoose_query_duration_seconds | Инструментированные запросы Mongoose к MongoDB: число и длительность по model, operation, status. Это не полный аудит всех операций сервера MongoDB. |
Подключение Prometheus¶
Пример для инфраструктуры заказчика: замените адрес, обеспечьте TLS и поместите тот же секрет, что задан в METRICS_SECRET, в защищённый файл, доступный Prometheus. Адрес и путь ниже условные, значение секрета в конфигурацию страницы не включено.
scrape_configs:
- job_name: glarus-ai
scheme: https
metrics_path: /metrics
scrape_interval: 30s
authorization:
type: Bearer
credentials_file: /etc/prometheus/secrets/glarus-ai-metrics
static_configs:
- targets: ["ai.example.org:443"]
p95 и доля ошибок¶
p95 длительности HTTP-запросов за пять минут, в секундах, по всем экземплярам задания glarus-ai:
histogram_quantile(0.95,
sum by (le) (
rate(http_request_duration_seconds_bucket{job="glarus-ai"}[5m])
)
)
Доля HTTP-ответов 5xx за то же окно (для процентов умножьте результат на 100):
sum(rate(http_requests_total{job="glarus-ai",status=~"5.."}[5m]))
/
sum(rate(http_requests_total{job="glarus-ai"}[5m]))
При отсутствии трафика или наблюдений доля может не иметь значения: не трактуйте её как нулевую ошибочность. Ответы 4xx в этой формуле не включены. Для p95 потоков используйте sse_stream_duration_seconds_bucket вместо HTTP-гистограммы. Конечные границы HTTP-корзин доходят до 5 секунд, SSE — до 1800 секунд; оценка квантиля за последней конечной границей ограничена детализацией гистограммы.
MCP-сервер записывает в журнал исход и длительность обёрнутых вызовов инструментов; сообщения об успешном завершении и ошибке помогают разбирать задержки вместе с журналами чата. Технические метрики не оценивают смысловую правильность ответа и не равны числу вопросов пользователей. Для ручного анализа обращений и расхода см. «Учёт обращений и расхода токенов».
Алерты настраиваются средствами Prometheus и Alertmanager заказчика. Готовых правил алертов, дашборда качества ответов или стоимости запроса в поставке нет. Условия расходов и внутренних лимитов описаны в разделе «Стоимость использования и лимиты».