Что такое Service Mesh

Обновлено и опубликовано Опубликовано:

Service Mesh —
простыми словами

инфраструктурный подход для решения задач взаимодействия между микросервисами.

Предпосылки для его создания появились при наращивании влияния DevOps и, как следствие, подхода, где приложение состоит из большого числа сервисов, которые должны взаимодействовать друг с другом. В масштабных проектах, развернутых, например, в kubernetes, очень сложно управлять данным взаимодействием, когда нужно контролировать каждый сервис напрямую.

Суть подхода состоит в использовании специальных приложений-прокси (Sidecar) — они запускаются рядом с каждым сервисом, перехватывают его сетевые запросы и передают их "куда нужно". Таким образом, взаимодействием между сервисами управляет инженер DevOps, а разработчик не задумывается об инфраструктурных вопросах.

Mesh-сервис может предоставлять следующие возможности:

  • Шифрование.
  • Прозрачность.
  • Трассируемость.
  • Проверку подлинности.
  • Балансировку нагрузки.
  • Обнаружение сервисов.

Для реализации Service Mesh уже существует не мало прокси. Среди них лидерами являются — Envoy, Istio, Linkerd, Nginx Service Mesh (NSM). Также есть программные продукты, упрощающие внедрение стратегии Mesh, например Consul с технологией Connect от Hashicorp.

Структурно, Service Mesh можно разделить на 2 части:

  1. Data Plane — управление сетевым трафиком между всеми прокси.
  2. Control Plane — распространение политики с настройками между всеми прокси.


Дмитрий Моск
— IT-специалист.
Настройка серверов, услуги DevOps.

Другие термины

Скриншот   Куки (cookie)   Dnsmasq   Ceph   Процессор   CPanel   CI/CD   NGINX   Кодек   NTP   VictoriaMetrics   Viber   SSD   Теневые копии   Жесткая ссылка   DNSSEC   PostfixAdmin   BalenaOS   RTSP   UAC  
.....

Реклама