AI-Ops Documentation

Русский English
  • Главная
  • Карта документации
0. С чего начать
  • Что это за продукт
  • Для кого он
  • Как устроена документация
  • Быстрые ссылки
  • Как начать разработку
  • Как найти нужный сервис
  • К кому идти по вопросам
1. Продукт
Обзор продукта
  • Миссия продукта
  • Ценность для бизнеса
  • Основные сценарии
  • Границы системы
Пользователи и персоны
  • Сегменты пользователей
  • Роли пользователей
  • Основные потребности
Пользовательские сценарии
  • Регистрация / логин
  • Основной пользовательский сценарий
  • Оплата / заказ / действие
  • Поддержка и сценарий восстановления
Функции продукта
Фича: Аутентификация
  • Цель
  • Пользовательская история
  • Бизнес-правила
  • Ограничения
  • Метрики успеха
  • Связанные сервисы
  • Связанные события / данные
  • Фича: Профиль
  • Фича: Организации
  • Фича: Топология
  • Фича: Вычислительные ресурсы
  • Фича: Кластеры
  • Фича: Каталог сервисов
Требования
  • Функциональные требования
  • Нефункциональные требования
  • Требования к производительности
  • Требования к безопасности
  • Конфиденциальность и соответствие
  • Доступность
Метрики
  • Ключевая метрика (North Star)
  • Продуктовые KPI
  • Метрики воронки
  • Метрики качества
  • Метрики экспериментов
2. Домены
Домен: Identity
  • Назначение
  • Основные концепции
  • Сущности
  • Бизнес-правила
  • Сервисы домена
  • Данные домена
  • Связанные фичи
  • Домен: Профиль пользователя
  • Домен: Поиск
  • Домен: Заказы / транзакции
  • Домен: Уведомления
  • Домен: Аналитика
  • Домен: Рекомендации
3. Архитектура
Обзор системы
  • Что входит в систему
  • Что не входит
  • Высокоуровневая диаграмма
C4 Model
  • Контекстная диаграмма
  • Диаграмма контейнеров
  • Диаграмма компонентов
  • Диаграмма развёртывания
Интеграционная архитектура
  • Внешние системы
  • Интеграции API
  • Webhooks
  • Сторонние провайдеры
Потоки данных
  • Онлайн-поток данных
  • Пакетный поток данных
  • Поток событий
  • Владение данными
Архитектура безопасности
  • Аутентификация
  • Авторизация
  • Управление секретами
  • Шифрование
  • Аудит и логирование
Надежность и масштабируемость
  • SLA / SLO
  • Планирование мощностей
  • Отказоустойчивость
  • Обратное давление и повторы
  • Восстановление после сбоев
Архитектурные принципы
  • Границы доменов
  • Принципы проектирования API
  • Принципы проектирования событий
  • Принципы контрактов данных
  • Диаграмма: auth микросервисы
Control plane
  • Архитектура компонентов (control plane)
  • Доменная модель v0
  • Протокол v0 (control plane)
  • Примеры (control plane)
Сервисы (control plane)
Сервис control plane
  • API
  • Модель данных
  • События
  • Модули
  • Операции
Сервис execution plane
  • API
  • Модель данных
  • События
  • Модули
  • Операции
Сервис resource catalog
  • API
  • Модель данных
  • События
  • Модули
  • Операции
4. Инженерия
Сервисы
Каталог сервисов
  • Все сервисы списком
  • Владельцы
  • Критичность
  • Уровень / домен / статус
  • Сервис аутентификации
  • Сервис аккаунтов
  • Облачный сервис
  • Сервис учётных данных
  • Herald
  • Сервис идентификации
  • API Gateway
  • Сервис токенов
Фронтенд
  • Обзор фронтенда
  • Структура приложения
  • Routing (фронтенд)
  • State management (фронтенд)
  • Design system (фронтенд)
  • UI components (фронтенд)
  • API контракты фронтенда
  • Обработка ошибок (фронтенд)
  • Performance (фронтенд)
  • Feature flags (фронтенд)
  • Тестирование фронтенда
Бэкенд
  • Обзор бэкенда
  • Паттерны сервисов
  • Рекомендации по API
  • Событийные паттерны
  • Паттерны доступа к БД
  • Кэширование
  • Асинхронные задачи и воркеры
  • Идемпотентность
  • Обработка ошибок
  • Тестирование бэкенда
Данные
  • Обзор данных
  • Системы-источники
  • Контракты данных
  • Каталог схем событий
  • Хранилище данных
  • Витрины данных
  • ETL / ELT-пайплайны
  • Качество данных
  • Происхождение данных
  • Политики хранения
  • Политики доступа
ML / DS
  • Обзор ML/DS
  • Сценарии (ML)
  • Каталог моделей
  • Feature store
  • Training pipelines
  • Inference pipelines
  • Offline evaluation
  • Online evaluation / A-B
  • Мониторинг (ML)
  • ML runbooks
QA / Качество
  • Стратегия качества
  • Пирамида тестов
  • Тестовые окружения
  • Тестовые данные
  • Ручное тестирование
  • Автоматизированное тестирование
  • Нагрузочное тестирование
  • Тестирование безопасности
  • Критерии приёмки релиза
  • Процесс разбора багов
5. Платформа
Инфраструктура
  • Ansible
  • WireGuard
  • Kubernetes
  • Longhorn
  • Ingress
  • PostgreSQL Cluster
  • Redis
  • Kafka
  • Vault
  • MinIO
  • Authentik
  • Monitoring
  • Logging
  • Tracing
  • Nexus
  • SonarQube
  • GlitchTip
  • GitLab Runner
  • Kubernetes Dashboard
  • OLM
  • Deploy
  • Internal DNS
  • Обзор (инфраструктура)
  • Config generator
  • Пример (инфраструктура)
  • Скрипты (инфраструктура)
Окружения
  • Локальное
  • Stage
  • Pre
  • Продакшен (prod)
  • Tech
  • Облако
  • Объектное хранилище
  • CI/CD
  • Секреты и сертификаты
Наблюдаемость
  • Логирование
  • Метрики
  • Трейсинг
  • Алертинг
  • Резервное копирование и восстановление
6. Разработка
  • Быстрый старт
  • Локальная настройка
  • Карта репозиториев
  • Стандарты кода
  • Git-процесс
  • Стратегия ветвления
  • Руководство по код-ревью
  • Критерии готовности
  • Процесс релиза
  • Флаги фич
  • FAQ разработчика
  • Миграция secure auth
7. Эксплуатация
  • Дежурство
  • Управление инцидентами
  • Уровни критичности
  • Политика эскалации
  • Постмортемы
  • Ранбуки
  • Управление изменениями
  • Непрерывность бизнеса
8. Аналитика
  • План трекинга событий
  • Определения KPI
  • Каталог дашбордов
  • Словарь метрик
  • Эксперименты
  • Стандарты отчётности
9. Управление
  • Решения (ADR)
  • Политика статуса контента
  • Changelog обновлений документации
Безопасность и соответствие
  • Модель угроз
  • Безопасная разработка
  • Управление доступом
  • Конфиденциальность
  • Реагирование на инциденты
Ответственность и владельцы
  • Команды
  • Зоны ответственности команд
  • Владельцы сервисов
  • Владельцы доменов
  • Контакты
Глоссарий
  • Бизнес-термины
  • Продуктовые термины
  • Технические термины
  • Сокращения

Высокоуровневая диаграмма

Previous Next

AIOps представляет собой микросервисную платформу для управления инфраструктурой и операциями с событийно-ориентированной архитектурой.

Обзор архитектуры

graph TB subgraph "External Clients" WebApp[Web Application] MobileApp[Mobile App] CLI[CLI Tools] end subgraph "API Layer" Gateway[API Gateway
Envoy + Control Plane] end subgraph "Auth Platform" Identity[Identity Service
Users & Identifiers] Credential[Credential Service
Passwords & Secrets] Auth[Auth Service
Sessions & Tokens] Token[Session Token service
JWT Management] end subgraph "Core Services" Account[Account Service
Account Management] Herald[Herald Service
Notifications] Cloud[Cloud Service
Infrastructure] end subgraph "Event Bus" Kafka[(Kafka
Event Stream)] end subgraph "Data Layer" PostgresIdentity[(PostgreSQL
Identity DB)] PostgresCredential[(PostgreSQL
Credential DB)] RedisCache[(Redis
Cache & Sessions)] end WebApp --> Gateway MobileApp --> Gateway CLI --> Gateway Gateway -->|gRPC| Identity Gateway -->|gRPC| Credential Gateway -->|gRPC| Auth Gateway -->|gRPC| Account Gateway -->|gRPC| Herald Gateway -->|gRPC| Cloud Identity --> PostgresIdentity Identity --> RedisCache Identity -.->|events| Kafka Credential --> PostgresCredential Credential --> RedisCache Credential -.->|events| Kafka Auth --> RedisCache Auth -.->|events| Kafka Herald -.->|consumes| Kafka Account -.->|consumes| Kafka style Gateway fill:#4A90E2 style Kafka fill:#FF6B6B style PostgresIdentity fill:#51B749 style PostgresCredential fill:#51B749 style RedisCache fill:#DC382C

Ключевые компоненты

API Gateway (Envoy)

  • Роль: Единая точка входа для всех внешних запросов
  • Технологии: Envoy Proxy + Control Plane (Go)
  • Функции:
  • Маршрутизация запросов к микросервисам
  • JWT authentication/authorization
  • Rate limiting и throttling
  • Request/response трансформация
  • TLS termination

Auth Platform

Набор микросервисов для управления идентичностью и аутентификацией:

Identity Service

  • Управление пользователями (User)
  • Управление идентификаторами (Email, Phone)
  • Верификация контактов (OTP)
  • События: identity.user.events, identity.identifier.events

Credential Service

  • Хранение паролей (Argon2id)
  • Верификация паролей (constant-time)
  • Ротация учетных данных
  • События: credential.password.events

Auth Service

  • Создание и управление сессиями
  • Выдача access/refresh токенов
  • Logout и отзыв токенов

Session Token service

  • Генерация и валидация JWT
  • Управление ключами подписи
  • Token introspection

Core Services

Account Service

  • Управление аккаунтами организаций
  • Биллинг и подписки
  • Team management

Herald Service

  • Отправка уведомлений (Email, SMS, Push)
  • Шаблоны сообщений
  • Delivery tracking

Cloud Service

  • Управление облачной инфраструктурой
  • Провижионинг ресурсов
  • Мониторинг состояния

Event Bus (Kafka)

  • Роль: Асинхронная передача событий между сервисами
  • Паттерны: Transactional Outbox, Event Sourcing
  • Topics:
  • identity.user.events — события пользователей
  • identity.identifier.events — события идентификаторов
  • credential.password.events — события паролей

Data Layer

PostgreSQL

  • Отдельная БД для каждого сервиса (Database per Service)
  • Партиционирование таблиц для масштабирования
  • Transactional Outbox таблицы

Redis

  • Кеширование часто используемых данных
  • Хранение сессий
  • Distributed locks
  • Rate limiting counters

Коммуникация между сервисами

Синхронная (gRPC)

sequenceDiagram participant Client participant Gateway participant Identity participant Credential Client->>Gateway: POST /api/v1/register Gateway->>Identity: CreateUser(username) Identity-->>Gateway: User{id, username} Gateway->>Credential: SetPassword(user_id, password) Credential-->>Gateway: PasswordCredential Gateway-->>Client: 201 Created

Асинхронная (Kafka)

sequenceDiagram participant Identity participant Outbox participant Worker participant Kafka participant Herald Identity->>Outbox: INSERT event + business data (same tx) Worker->>Outbox: SELECT pending events Worker->>Kafka: PUBLISH event Worker->>Outbox: UPDATE status=published Herald->>Kafka: CONSUME event Herald->>Herald: Send welcome email

Принципы архитектуры

  1. Database per Service: Каждый сервис владеет своей БД
  2. API Gateway Pattern: Единая точка входа через Envoy
  3. Event-Driven: Асинхронная коммуникация через Kafka
  4. Transactional Outbox: Гарантия доставки событий
  5. Clean Architecture: Разделение на слои Core → Use Case → Infrastructure → API
  6. Domain-Driven Design: Явные границы доменов

Связанные страницы

  • What is in Scope — что входит в систему
  • What is Out of Scope — что не входит в систему
  • Диаграмма контейнеров — детализация контейнеров
  • Data Flow — потоки данных
Что не входит C4 Model
Меню
Главная Карта документации
0. С чего начать
С чего начать Что это за продукт Для кого он Как устроена документация Быстрые ссылки Как начать разработку Как найти нужный сервис К кому идти по вопросам
1. Продукт
Продукт
2. Домены
Домены Домен: Профиль пользователя Домен: Поиск Домен: Заказы / транзакции Домен: Уведомления Домен: Аналитика Домен: Рекомендации
3. Архитектура
Архитектура Диаграмма: auth микросервисы
4. Инженерия
Инженерия
5. Платформа
Платформа Облако Объектное хранилище CI/CD Секреты и сертификаты Резервное копирование и восстановление
6. Разработка
Разработка Быстрый старт Локальная настройка Карта репозиториев Стандарты кода Git-процесс Стратегия ветвления Руководство по код-ревью Критерии готовности Процесс релиза Флаги фич FAQ разработчика Миграция secure auth
7. Эксплуатация
Эксплуатация Дежурство Управление инцидентами Уровни критичности Политика эскалации Постмортемы Ранбуки Управление изменениями Непрерывность бизнеса
8. Аналитика
Аналитика План трекинга событий Определения KPI Каталог дашбордов Словарь метрик Эксперименты Стандарты отчётности
9. Управление
Управление Решения (ADR) Политика статуса контента Changelog обновлений документации

На странице

Обзор архитектуры Ключевые компоненты API Gateway (Envoy) Auth Platform Core Services Event Bus (Kafka) Data Layer Коммуникация между сервисами Синхронная (gRPC) Асинхронная (Kafka) Принципы архитектуры Связанные страницы