Reverse Proxy: Erster Release Candidate von Traefik v3.0 ist fertig
Die dritte Generation des populären Reverse Proxies Traefik steht in den Startlöchern. Die neue Version lernt unter anderem HTTP/3 und OpenTelemetry.
- Jan Mahn
Betreiber kleiner privater Server mit Docker nutzen ihn genauso wie große Unternehmen mit Kubernetes-Cluster: den Reverse Proxy Traefik, der auch in einer Open-Source-Variante erscheint. Er verwaltet eingehenden TCP- und HTTP-Verkehr, kann sich auf Wunsch auch um die Zertifikatsbestellung über das ACME-Protokoll kümmern, Antworten filtern und manipulieren und auch Authentifizierung und Autorisierung übernehmen. Populär wurde er, weil er sich gut in containerisierte Umgebungen einfügt und dynamisch aus der Konfiguration von Containern ausliest, welche Anforderungen wohin durchgestellt werden sollen.
Im September 2019 erschien Traefik in Version 2, die nur langsam Version 1 ablöste. Das lag vor allem daran, dass der Umzug von Konfigurationen aus Version 1 auf 2 mit Handarbeit verbunden war. Gerade in großen Umgebungen mit vielen Routing-Regeln ein Mammutprojekt, das kaum ohne Ausfallzeiten zu bewerkstelligen war. Aus diesen Erfahrungen haben die Traefik-Entwickler gelernt, wie sie ihn ihrem Blogpost zum Erscheinen des ersten Release Candidates von Version 3 beschreiben. Um von Version 2 auf 3 umzustellen, sollte man zunächst den Migration-Guide befolgen, der die Unterschiede erklärt.
Für den Umzug machen die Entwickler zwei Versprechen: Die Änderungen an der statischen Konfigurationsdatei sollen nur Logeinträge erzeugen und nur darauf verweisen, wie die neue Syntax aussieht. Eine dynamische Konfiguration, die für Version 2 geschrieben wurde und in der auch die Routing-Regeln liegen, soll mit Version 3 nahtlos weiter funktionieren und ein Umstieg ist optional. So können Umsteiger ihre Regeln nacheinander auf die neue Syntax umstellen, ohne dass während des Umzugs etwas ausfällt.
Neue Funktionen
Version 3 funktioniert aber nicht nur anders, sondern erfüllt viele häufig geäußerte Wünsche. Zunächst ist da HTTP/3, das künftig nicht mehr als experimentell gekennzeichnet ist. Neu ist auch die Unterstützung von "gRPC Web", einer Umsetzung von gRPC für Webclients, für die aktuell vor allem der Traefik-Konkurrent Envoy als Reverse Proxy zum Einsatz kam. Neu ist auch die Unterstützung des Telemetrieformats OpenTelemetry, das bei der Cloud Native Computing Foundation (CNCF) als "Incubating Project" geführt wird. Auch an Neuerungen von Kubernetes hat sich Traefik in Version 3 angepasst: Das Gateway-API ist der neue Weg, um Routen in ein Kubernetes-Cluster zu definieren und wird vom neuen Traefik unterstützt.
Der Release Candidate 1 ist erst der Beginn der neuen Major-Version und noch nicht bereit fĂĽr produktive Umgebungen. Wer die frĂĽhe Version testen will, findet Traefik v3 als Container-Image bereits im Docker-Hub unter den Tags traefik:v3.0
und traefik:v3.0.0-rc1.
(jam)