Service Mesh на собеседовании системного аналитика

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.

Зачем спрашивают на собесе SA

Service mesh — современный инструмент для микросервисов. На собесе SA: «отличие от API gateway», «зачем sidecar».

Что такое service mesh

Infrastructure layer для service-to-service communication. Работает прозрачно для приложения.

Без mesh:

Service A → HTTP → Service B

Каждый сервис сам делает: retries, timeouts, mTLS, metrics, tracing. Дублирование.

С mesh:

Service A → sidecar → mTLS, retry, metrics → sidecar → Service B

Sidecar (proxy) делает cross-cutting concerns. Сервис не знает.

Sidecar pattern

Каждый pod в k8s содержит:

  • Application container.
  • Sidecar proxy (Envoy / Linkerd2-proxy).

Все network traffic проходит через sidecar.

Control plane (Istio's Pilot, Linkerd) — централизованно управляет proxies: пушит конфигурацию, certs, rules.

       Control Plane
       /     |      \
     v       v       v
[Pod A]   [Pod B]   [Pod C]
  proxy    proxy    proxy

Что предоставляет mesh

Traffic management:

  • Retries с exponential backoff.
  • Timeouts.
  • Circuit breaker.
  • Load balancing (round robin, least conn, custom).
  • Traffic splitting (canary, A/B).

Security:

  • Auto mTLS между сервисами.
  • Authorization policies (RBAC на network уровне).
  • Cert rotation.

Observability:

  • Metrics (Prometheus-compatible).
  • Distributed tracing (Jaeger, Zipkin).
  • Access logs.

Resilience:

  • Fault injection (для chaos engineering).
  • Rate limiting.
Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Tools: Istio, Linkerd, Consul

Istio. Тяжёлый, feature-rich. Стандарт enterprise. Сложный setup.

Linkerd. Лёгкий, простой. Менее feature, но достаточно для большинства.

Consul Connect. HashiCorp. Хорошо для multi-cloud / hybrid.

Envoy. Не mesh, но proxy под капотом Istio. Можно использовать standalone.

Cilium Service Mesh. eBPF-based, без sidecar. Performance focus.

В РФ — Istio популярен. Yandex Cloud / VK Cloud имеют managed mesh.

Когда нужен

Подходит:

  • 20+ микросервисов.
  • Need for observability + traffic management.
  • Multi-team development (mesh standardizes cross-cutting).
  • Zero trust / regulated.

Overkill:

  • < 5 сервисов — handle через app code или API Gateway.
  • Команда без k8s expertise — overhead обучения.
  • Простой workload — не оправдает complexity.

Частые ошибки

Использовать без k8s. Mesh задизайнен под orchestration. На bare VM — тяжело.

Не использовать observability. Потерял главную выгоду.

Игнорировать sidecar resource overhead. Каждый sidecar — 50-200MB RAM, 0.1-0.5 CPU. На больших cluster суммарно много.

Mixing с API Gateway без понимания. Gateway — north/south traffic (in/out). Mesh — east/west (service-to-service).

Полностью полагаться на mesh для security. Application-level auth (JWT, RBAC в коде) всё равно нужны.

Связанные темы

FAQ

Mesh или API Gateway?

Часто оба. API Gateway — internet-to-cluster (north-south). Mesh — service-to-service (east-west).

Cilium vs Istio?

Cilium — без sidecar (eBPF). Меньше overhead, но менее feature-rich. Istio — стандарт по фичам.

Это официальная информация?

Нет. Статья основана на документации Istio / Linkerd / CNCF.


Тренируйте системный анализ — откройте тренажёр с 1500+ вопросами для собесов.