Индустрия

Linkerd добавляет ограничение прохода и скорости

Linkerd добавляет ограничение прохода и скорости

Компания Linkerd объявила о выпуске новой версии своей сетки сервисов. В ней добавлены три основные новые функции: видимость и контроль трафика на выходе, ограничение скорости для каждого сервиса и объединенные сервисы.

Разработчики говорят, что Linkerd 2.17 - это их первый крупный релиз после объявления в начале этого года о том, что они меняют способ публикации проекта, чтобы Linkerd стал действительно устойчивым проектом, без перелицензирования, без нарушения правил CNCF (Cloud Native Computing Foundation) и без изменения фундаментальной природы открытого исходного кода Linkerd.

Созданный, поддерживаемый и сопровождаемый компанией Buoyant, основанной в 2015 году инженерами инфраструктуры Twitter Уильямом Морганом и Оливером Гулдом, Linkerd представляет собой сервисную сетку, инструмент для добавления функций безопасности, надежности и наблюдаемости в облачные приложения, особенно те, которые используют Kubernetes. Он работает, прозрачно вставляя свои функции на уровне платформы, а не приложения. Новые функции, добавленные в эту версию Linkerd, были сделаны с учетом меняющегося характера использования Kubernetes, по словам представителей Linkerd, которые отмечают, что в последнее время зрелое внедрение Kubernetes является запланированным и явным, и может включать развертывание на сотнях или тысячах кластеров. Внедрение Linkerd таких функций, как федеративные сервисы, является прямым ответом на этот спрос.

Улучшения в этом выпуске начинаются с добавления видимости и контроля трафика на выходе из кластера Kubernetes, выходящего из объединенных стручков. Трафик Kubernetes egress - это данные, которые покидают кластер и направляются в другую часть сети, например, в приложение или службу за пределами кластера, или на внешнюю конечную точку. По словам команды Linkerd, сама Kubernetes не предоставляет никаких механизмов для понимания исходящего трафика и только рудиментарные механизмы для его ограничения (ограниченные диапазонами IP-адресов и портов).

Этот выпуск Linkerd предоставляет возможность просматривать источник, место назначения и уровень трафика всего трафика, покидающего кластер, включая имена хостов (а при настройке - полные HTTP-пути или методы gRPC). Пользователи также могут развернуть политики безопасности на выходе, которые разрешают или запрещают этот трафик с тем же уровнем детализации, настроив список разрешений или список блокировок на выходе по DNS-домену, а не по диапазону IP и порту.

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

Еще одно дополнение - поддержка объединенных служб для мультикластеров. Объединенный сервис - это объединение копий одного и того же сервиса в нескольких кластерах, что означает, что клиенты сетки, обращающиеся к объединенному сервису, автоматически балансируют нагрузку на все конечные точки во всех кластерах. По словам команды Linkerd, это означает, что код приложения не зависит от решений о развертывании кластеров. Это также означает, что обработка отказов происходит прозрачно и автоматически: если кластер не работает полностью, или служба на этом кластере не работает, или происходит какой-либо сбой; Linkerd будет балансировать нагрузку по другим конечным точкам; аналогично, если кластер удален, медленный, или служба не работает, балансировка нагрузки Linkerd с учетом задержки предпочтет другие конечные точки.

Linkerd 2.17 доступен уже сейчас.

Читайте также