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 обновлений документации
Безопасность и соответствие
  • Модель угроз
  • Безопасная разработка
  • Управление доступом
  • Конфиденциальность
  • Реагирование на инциденты
Ответственность и владельцы
  • Команды
  • Зоны ответственности команд
  • Владельцы сервисов
  • Владельцы доменов
  • Контакты
Глоссарий
  • Бизнес-термины
  • Продуктовые термины
  • Технические термины
  • Сокращения

Примеры (control plane)

Previous Next

Статус: Draft Дата: 2026-04-29

1. Создание Kubernetes-кластера

Intent:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
intent:
  action: create
  target_resource_type: kubernetes.cluster
  desired_result:
    name: prod-k8s
    masters: 3
    workers: 5
    cni: calico
    container_runtime: containerd
    storage: longhorn
  constraints:
    environment: prod
    region: eu-central
    require_ha_control_plane: true

Высокоуровневый DAG:

flowchart TB A[Validate inputs] B[Validate nodes] C[Validate credentials] D[Prepare network] E[Install runtime] F[Init control-plane] G[Install CNI] H[Join masters] I[Join workers] J[Install addons] K[Verify cluster] A --> B A --> C B --> D C --> D D --> E E --> F F --> G F --> H G --> I H --> I I --> J J --> K

Stage contracts

Stage Requires Produces
Validate inputs intent, scenario template, organization policy validated intent, normalized parameters
Validate nodes compute nodes, SSH metadata, topology linux.host, node_inventory, node eligibility evidence
Validate credentials secret references, access policy ssh.access, registry.access, credential evidence
Prepare network node_inventory, firewall policy host.network.ready, wireguard.mesh, network evidence
Install runtime linux.host, ssh.access, registry.access container.runtime.containerd, runtime evidence
Init control-plane runtime, kubeadm config, network ready kubernetes.api, kubeconfig.admin, join token
Install CNI kubernetes.api, CNI manifest kubernetes.network.ready, cni evidence
Join masters kubernetes.api, join token, runtime control_plane.nodes.joined
Join workers kubernetes.api, join token, runtime worker.nodes.joined
Verify cluster kubernetes.api, joined nodes, CNI kubernetes.cluster.ready, health evidence

Пример job: init control-plane

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
job:
  id: init-control-plane
  inputs:
    requires:
      capabilities:
        - container.runtime.containerd
        - host.network.ready
        - kubernetes.binaries.kubeadm
      artifacts:
        - kubeadm_cluster_config
        - node_inventory
  outputs:
    provides:
      capabilities:
        - kubernetes.api
        - kubernetes.control_plane.initialized
    artifacts:
      - kubeconfig.admin
      - kubeadm.join_token
      - cluster_ca_certificate_ref
    evidence:
      - kube_apiserver_healthy
      - kubeadm_init_completed

2. Добавление worker-ноды

Intent:

1
2
3
4
5
intent:
  action: add_node
  target_resource: cluster/prod-k8s
  node: worker-6
  role: worker

DAG:

flowchart LR validateNode[Validate node] prepareNetwork[Update WireGuard mesh] prepareHost[Prepare Kubernetes prerequisites] generateToken[Generate join token] joinNode[Join worker] labelNode[Apply labels and taints] verify[Verify node Ready] validateNode --> prepareNetwork prepareNetwork --> prepareHost prepareHost --> generateToken generateToken --> joinNode joinNode --> labelNode labelNode --> verify

Если kubeadm.join_token отсутствует или истек, control plane не должен падать без объяснения. Он может вставить job generate-join-token, потому что downstream job требует именно artifact kubeadm.join_token.

3. Установка Tempo с S3 dependency

Tempo не должен знать, что обязательно нужен MinIO. Он должен требовать capability object_storage.s3.

1
2
3
4
5
6
7
scenario: tempo.install
requires:
  - capability: kubernetes.cluster
  - capability: object_storage.s3
  - capability: secret.store
provides:
  - capability: observability.tracing

Resolution:

flowchart TB tempo[Install Tempo] s3[requires object_storage.s3] policy[Apply provider policy] existing{Existing provider?} minio[Sub-operation: Install MinIO] bucket[Create bucket and credentials] deploy[Deploy Tempo] verify[Verify ingestion and query] tempo --> s3 s3 --> policy policy --> existing existing -->|yes| bucket existing -->|no| minio minio --> bucket bucket --> deploy deploy --> verify

Пользователь в simple mode видит:

1
2
3
4
Installing Tempo
  Storage dependency: creating MinIO
  Tempo deployment: waiting
  Verification: pending

Advanced mode показывает полный capability graph и sub-operation.

4. Failed stage и AI PlanPatch

Сценарий: init-control-plane упал, потому что kubeadm не смог скачать images.

sequenceDiagram participant Run as Operation Run participant Job as init-control-plane participant AI as AI Analyzer participant User as SRE/User participant Plan as Plan Run->>Job: execute Job-->>Run: failed Run->>AI: provide logs, artifacts, evidence AI-->>Run: diagnosis + PlanPatch Run->>User: show patch and risk User-->>Run: approve Run->>Plan: insert registry mirror jobs Run->>Job: retry init-control-plane

PlanPatch:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
plan_patch:
  reason: Nodes cannot pull images from registry-1.docker.io.
  changes:
    - insert_after: install-container-runtime
      jobs:
        - configure-containerd-registry-mirror
        - restart-containerd
        - pre-pull-kubernetes-images
    - retry:
        job: init-control-plane
  approval:
    required: true

Важный принцип: AI не должен "просто выполнить команду". Он должен предложить структурированный patch к DAG, который можно проверить, отклонить или применить.

5. Ручное исправление

Сценарий: join-workers упал на worker-3, пользователь зашел по SSH, поправил DNS и перезапустил kubelet.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
intervention:
  type: manually_fixed
  target:
    stage: join-workers
    node: worker-3
  note: Fixed resolver config and restarted kubelet.
  verification:
    - kubelet_ready
    - node_registered
    - node_ready

После этого control plane выполняет verification:

flowchart LR manual[Manual fix recorded] kubelet[Verify kubelet] registered[Verify node registered] ready[Verify node Ready] continue[Continue operation] manual --> kubelet kubelet --> registered registered --> ready ready --> continue

6. Редактирование plan в advanced mode

Marketplace template:

1
2
3
4
5
6
7
8
9
kubernetes.create@1.0.0
  validate
  prepare network
  install runtime
  init control-plane
  install CNI
  join workers
  install addons
  verify

Пользовательская версия:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
kubernetes.create@1.0.0 forked
  validate
  prepare network
  install runtime
  configure registry mirror
  pre-pull images
  init control-plane
  install CNI
  join workers
  verify

Plan должен хранить отличия:

1
2
3
4
5
6
7
8
customizations:
  base_template: kubernetes.create@1.0.0
  changes:
    - inserted: configure-registry-mirror
      after: install-runtime
    - inserted: pre-pull-images
      after: configure-registry-mirror
    - removed: install-addons

7. Как это должно выглядеть пользователю

Simple mode:

1
2
3
4
5
6
Create Kubernetes Cluster
Status: Running
Current phase: Installing container runtime
Progress: 5 of 10 phases
Needs attention: no
Estimated remaining time: 12 minutes

Advanced mode:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
Operation #482
Plan: kubernetes.create@1.0.0 customized
Graph:
  prepare-network -> install-runtime -> init-control-plane
Failed jobs: none
Artifacts:
  node_inventory
  containerd_config_snapshot
Evidence:
  ssh_access_verified
  wireguard_mesh_ready
  containerd_service_active

Обе оптики работают над одной operation model.

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

На странице

1. Создание Kubernetes-кластера Stage contracts Пример job: init control-plane 2. Добавление worker-ноды 3. Установка Tempo с S3 dependency 4. Failed stage и AI PlanPatch 5. Ручное исправление 6. Редактирование plan в advanced mode 7. Как это должно выглядеть пользователю