Что такое 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.

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

ISA Server   DNSSEC   Node.js   Логин   XML   BalenaOS   Mikrotik   Suricata   Seafile   Kafka   Браузер   TeamCity   БИОС   7-zip   IMAP   Кэш   Кластер   WPA   Жесткая ссылка   RAW (формат)  
.....

Реклама