Istio — новый service mesh от Google, IBM и Lyft для микросервисов с поддержкой Kubernetes

Вчера компании Google, IBM и Lyft анонсировали новый Open Source-проект Istio, реализующий функции service mesh («сетки для сервисов») для приложений с микросервисной архитектурой.

Service mesh — это новая категория программного обеспечения, обретающая актуальность в связи с растущей популярностью облачных приложений (cloud native), микросервисов, контейнеров и инструментов для их оркестровки. По своей сути это выделенный слой инфраструктуры, обеспечивающий взаимодействие (доставку запросов) между сервисами, разнесёнными по контейнерам с учётом имеющейся топологии. Известная реализация службы service mesh — это проект linkerd, развиваемый фондом CNCF (Cloud Native Computing Foundation).

Архитектура Istio
Архитектура Istio / Иллюстрация с сайта Istio

В основу анонсированного вчера Istio лёг другой Open Source-проект Envoy, разработанный в Lyft и написанный на языке C++11, характеризуемый как «прокси седьмого уровня (L7) и шина для взаимодействия». Envoy позволяет создавать фильтры как подключаемые плагины, работающие как на сетевом уровне (TCP/IP), так и HTTP (поддерживается и HTTP/2), поддерживает gRPC, имеет парсеры для сбора статистики в NoSQL-базы данных MongoDB и DynamoDB, поддерживает множество методов для обнаружения сервисов (Service Discovery) и балансировку нагрузки (с учётом доступности бэкенд-серверов).

Istio называется «открытой платформой для соединения микросервисов, управления ими и обеспечения безопасности». Istio позиционируется как готовое решение для решения таких актуальных для микросервисных и облачных приложений задач, как обнаружение сервисов, балансировка нагрузки, отказоустойчивость, мониторинг конечных точек, динамическая маршрутизация для экспериментальных возможностей, общая согласованность и безопасность.

В Istio для каждого сервиса разворачивается прокси-сервер Envoy как sidecar-контейнер внутри того же пода Kubernetes. Это позволяет не только изучать поведение трафика и применять нужные политики «на месте», но и разворачивать Istio в существующих инсталляциях микросервисных приложений без необходимости переписывать код или менять архитектуру. На данный момент Istio работает только с Kubernetes, но в ближайшем будущем авторы обещают добавить поддержку Cloud Foundry, Mesos и физических серверов (bare metal). Сайт проекта с подробной документацией на английском языке — https:istio.io. Исходный код Istio написан на языке Go, распространяется на условиях свободной лицензии Apache License v2 и опубликован на GitHub.

P.S. Подробнее о том, что такое service mesh и зачем он нужен, можно прочитать в этой статье (перевод материала от создателей Linkerd, опубликованного к релизу 1.0).

Дмитрий Шурупов по материалам Istio, techcrunch.com.



Коды для вставки в блог\форум



Вспомним другие новости из этого раздела?


Soft

←+Ctrl+→

Интересные новости
Незавершенная версия Windows 7 работает лучше VistaНезавершенная версия Windows 7 работает лучше Vista
Программист открыл заблокированные возможности Windows 7Программист открыл заблокированные возможности Windows 7
Quick Slide Show 2.32: создание flash-презентацийQuick Slide Show 2.32: создание flash-презентаций
Покупатели гоняются за старыми компьютерами ради Windows XP
Визуализатор V-Ray 1.5 Service Pack 2 с поддержкой 3ds Max 2009Визуализатор V-Ray 1.5 Service Pack 2 с поддержкой 3ds Max 2009
Блок рекламы


Похожие новости

Пользователи разгадали новый логотип браузера MicrosoftПользователи разгадали новый логотип браузера Microsoft
Приложение по обучению программированию Grasshopper от Google стало доступно для десктоповПриложение по обучению программированию Grasshopper от Google стало доступно для десктопов
Google Chrome будет блокировать весь смешанный контентGoogle Chrome будет блокировать весь смешанный контент
В Google Chrome теперь можно отправлять веб-страницы на другие устройстваВ Google Chrome теперь можно отправлять веб-страницы на другие устройства
Google забанит расширения для Chrome, которые собирают много данных об активности пользователей
Google закроет лазейку в Chrome, позволяющую определять включенный режим инкогнитоGoogle закроет лазейку в Chrome, позволяющую определять включенный режим инкогнито
Google увеличил размер выплат за уязвимости, найденные в ChromeGoogle увеличил размер выплат за уязвимости, найденные в Chrome
Google: мы не собираемся «убивать» расширения для блокировки рекламы в ChromeGoogle: мы не собираемся «убивать» расширения для блокировки рекламы в Chrome
В Google Chrome теперь можно переопределять геолокацию для тестирования сайтовВ Google Chrome теперь можно переопределять геолокацию для тестирования сайтов
Google ограничит работу расширений для блокировки рекламы в ChromeGoogle ограничит работу расширений для блокировки рекламы в Chrome
Последние новости

Подгружаем последние новости