System Design Space

    Глава 139

    Обновлено: 15 февраля 2026 г. в 08:22

    Service Mesh Architecture

    Прогресс части0/17

    Архитектура service mesh: data plane/control plane, mTLS, traffic policy, observability и операционные компромиссы.

    Контекст

    Inside Envoy

    Service mesh вырос из практики L7 proxy и централизации service-to-service трафика.

    Открыть фильм

    Service mesh architecture - это способ вынести сетевые и security-политики в платформенный слой. Главный выигрыш: управляемость трафика и безопасности на масштабе. Главный риск: рост операционной сложности control plane.

    Зачем внедряют mesh

    • Единые mTLS и identity-политики между сервисами без дублирования security-кода в каждом сервисе.
    • Управление трафиком на L7: retries, timeouts, traffic splitting, canary и failover policy.
    • Сквозная телеметрия (metrics/traces/access logs) с консистентным форматом и контекстом.
    • Быстрое внедрение resilience-паттернов в fleet, не переписывая каждый сервис вручную.

    Архитектурные слои

    Data plane

    Перехватывает east-west трафик и применяет runtime policy: routing, retries, timeouts и mTLS handshake.

    Включает

    Envoy/ztunnel proxy, L4/L7 filters, connection pools.

    Операционный риск

    Некорректные timeout/retry настройки быстро повышают p99 latency и error-rate.

    Слой: Sidecar / node proxy runtime
    Loop: intent -> distribution -> enforcement -> observation
    rev 42

    Mesh Queue

    MESH-201checkout-api
    canary 10% / tenant:acme
    MESH-202mobile-gateway
    retry budget tune / user:42
    MESH-203orders-api
    timeout tighten / order:7712
    MESH-204checkout-api
    mTLS strict mode / tenant:globex

    Mesh Control Loop

    Ожидание нового intent

    telemetry signals: 0

    payments-svc

    cluster-a
    rps: 118errors: 2policy rev: 42mTLS: on

    profile-svc

    cluster-b
    rps: 96errors: 1policy rev: 42mTLS: on

    inventory-svc

    cluster-c
    rps: 112errors: 3policy rev: 42mTLS: on
    Готово

    Готово к симуляции mesh-контуров. Можно запустить авто-режим или сделать один шаг.

    Последнее решение: —

    Security

    Zero Trust

    Mesh дает транспортный каркас, но access policy и identity governance нужно проектировать отдельно.

    Открыть главу

    Rollout-стратегия

    Начинайте с ограниченного blast radius (1-2 namespace) и явных SLO до/после включения mesh.

    Сначала внедряйте observability и traffic policy, затем mTLS everywhere и authZ policy.

    Контролируйте ресурсную стоимость: sidecar overhead на CPU/memory и влияние на p99 latency.

    Держите fallback-план: возможность быстро отключить policy или обойти mesh для критичных сервисов.

    Типичные ошибки

    Mesh как серебряная пуля

    Mesh не заменяет плохой сервисный дизайн и не исправляет неявные contracts между сервисами.

    Слишком ранний full rollout

    Массовое включение без phased adoption обычно приводит к сложным инцидентам и rollback давлению.

    Игнорирование операционной сложности

    Control plane - это критичная платформа. Нужны версии, SLO, runbooks и ownership-модель.

    Недостаточная политика безопасности

    mTLS без authorization policy дает шифрование канала, но не контроль действий между сервисами.

    Связанные главы

    References