Как стать автором
Обновить
Флант
DevOps-as-a-Service, Kubernetes, обслуживание 24×7

Traefik 2.0: обновление service mesh с поддержкой TCP и новым веб-интерфейсом

Время на прочтение2 мин
Количество просмотров7.9K
В минувший вторник компания Containous представила крупное обновление к своему флагманскому Open Source-продукту — service mesh-решению Traefik — в виде версии 2.0.



Главным новшеством в Traefik 2.0 стало появление поддержки протокола TCP. В случае шифрования по TLS для маршрутизации используются данные SNI (Server Name Indication). Примечательная особенность — возможность работы с entrypoint сразу по двум протоколам: HTTP и TCP — на одном и том же порту. Иллюстрация этой фичи:

tcp:
  routers:
    to-db-1:
      entrypoints:
      - web-secure
      rule: "HostSNI(`db1.domain`)"
      service: "db-1"
      tls: {}
http:
  routers:
    to-db1-dashboard:
      entrypoints:
      - web-secure
      rule: "Host(`dashboard.db1.domain`)"
      service: "db1-dashboard"
      tls: {}

В этом примере HTTP-запросы к dashboard.db1.domain направляются на веб-сервис управления базой данных, а TCP к db1.domain — на сервис самой СУБД.

Среди прочих значимых изменений в релизе Traefik 2.0:

  • поддержка так называемых middleware — промежуточных звеньев для запросов, суть которых сводится к возможности проводить специальные операции над запросами до того, как они попадают в сервис (или перед тем, как ответ сервиса отправляется клиентам). Примеры таких операций, названия которых говорят за себя: BasicAuth, Compress, Headers, RateLimit… Часто используемые совместно middleware можно объединять в цепочки (chains);

  • новый веб-интерфейс (WebUI) для просмотра информации о кластере и управления настройками Traefik;


  • поддержка канареечных выкатов (canary deployments) и, соответственно, возможности A/B-тестирования, что реализовано в виде Service Load Balancers, перенаправляющих запросы к сервисам приложения;
  • поддержка зеркалирования запросов для дублирования одного и того же входящего трафика на различные сервисы (тоже реализовано в Service Load Balancers);

  • конфигурация для Kubernetes в виде CRD;
  • альтернативный формат конфигурации в YAML.

Полный список изменений — см. в GitHub-репозитории проекта.

P.S.


Читайте также в нашем блоге:

Теги:
Хабы:
Всего голосов 40: ↑40 и ↓0+40
Комментарии6

Другие новости

Информация

Сайт
flant.ru
Дата регистрации
Дата основания
Численность
201–500 человек
Местоположение
Россия
Представитель
Тимур Тукаев