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

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

Root   Yota   HDMI   Сетевой шлюз   РЕД ОС   Proxmox VE   Rclone   Cron   GitLab   UNIX   Microsoft edge   Кэширование   MAPI   Iptables   Bluetooth   Powerpoint   Gradle   Patroni   DFS   DNSSEC  
.....

Реклама