Új szintre lép a forgalomirányítás: Megérkezett a Traefik Proxy 3.4 intelligens terheléselosztással és elosztott korlátozással

Segítséget kaptál? Szívesen töltöd itt az idődet? Visszajársz hozzánk? Támogasd a munkákat: Ko-fi és Paypal!

kami911 képe

A cloud-native világ egyik legismertebb nyílt forráskódú proxymegoldása, a Traefik, új verzióval jelentkezett. A 3.4-es kiadás, "Chaource" névre keresztelve, számos jelentős fejlesztést hoz, amelyek a nagy rendelkezésre állású környezetekben is hatékonyabb forgalomkezelést és terheléselosztást tesznek lehetővé. A legnagyobb újítások közé tartozik az elosztott sebességkorlátozás (distributed rate-limiting) Redis-alapú integrációval, valamint egy új, intelligens terheléselosztási algoritmus bevezetése. Nézzük meg részletesen, mit kínál a legújabb Traefik-verzió!

Elosztott sebességkorlátozás a Redis segítségével

A kiadás egyik legfontosabb újítása a Redis-integrációval megvalósított elosztott rate-limiting, amely lehetővé teszi a több Traefik példány közötti összehangolt forgalomszabályozást. Ez különösen hasznos olyan klaszterezett környezetekben, ahol több példány szolgál ki egy vagy több szolgáltatást. A forgalmi szabályok központi érvényesítése révén megelőzhető az egyes szolgáltatások túlhasználata, így egyenletesebb erőforrás-elosztás valósul meg. Ez nemcsak a terheléskiegyenlítés szempontjából fontos, hanem az API-visszaélések és hirtelen forgalmi csúcsok elleni védelemben is szerepet játszik.

Intelligens terheléselosztás a „két választás erejével”

A 3.4-es verzió másik figyelemre méltó újítása a Power of Two Choices (P2C) nevű terheléselosztási algoritmus. Ennek során a proxy két véletlenszerűen kiválasztott backend szerver aktuális terhelését hasonlítja össze, és a kevésbé terhelt szervert választja ki a kérések továbbítására.

Ez a megközelítés a klasszikus körkörös (round-robin) vagy véletlenszerű elosztásokhoz képest sokkal hatékonyabb, mivel csökkenti az egyes szerverek túlterhelésének kockázatát, és így növeli a rendszer stabilitását, különösen nagy forgalom esetén.

Testreszabható kiszolgálói URL-ek konténeres környezetekben

A frissítés egy másik hasznos eleme a testreszabható kiszolgálói URL-ek beállítása címkék (labels) segítségével, amely több platformon is elérhető, köztük Docker, Swarm, ECS, Consul és Nomad környezetekben. Ez a lehetőség megkerüli a konténerek alapértelmezett IP-címének használatát, így pontosabb és rugalmasabb forgalomirányítást tesz lehetővé, különösen összetettebb mikroszolgáltatás-architektúrák esetén.

További fejlesztések és technikai részletek

A 3.4-es verzió nemcsak látványos funkciókkal, hanem számos belső fejlesztéssel is büszkélkedhet, amelyek a stabilitás és teljesítmény növelését célozzák. A kísérleti fázisban lévő saját implementációk helyett a standard könyvtárakra való átállás javítja a megbízhatóságot.

ACME és tanúsítványkezelés és Kubernetes integráció

Az ACME (Automatic Certificate Management Environment) funkció is fejlődött: új testreszabási lehetőségek jelentek meg, amelyek a tanúsítványkezelés automatizálását és konfigurálhatóságát javítják.

A Kubernetes-felhasználók számára is jelentős előrelépés történt. A CEL (Common Expression Language) validáció fejlesztése mellett a ClusterIP és NodePort szolgáltatások állapotának jobb visszajelzése is bekerült. Emellett lehetőség nyílik a gyökér tanúsítványok (root CA certificates) integrálására is ConfigMap segítségével, ami biztonságosabb TLS kommunikációt tesz lehetővé.

Gateway API és prioritások

A Gateway API terén is történt előrelépés: mostantól lehetőség van prioritások megadására a TLSRoute szabályokon belül, ami finomhangoltabb forgalomirányítást eredményezhet.

Middleware és munkamenet-kezelés

A köztes rétegek (middleware) új képességekkel gazdagodtak: mostantól megőrizhetők az eredeti HTTP-kérések metódusai, és lehetőség van dinamikus HTTP státuszkódok átírására. A ragadós munkamenetek (sticky sessions) kezelése is részletesebb lett: immár sütidomének (cookie domains) is megadhatók, ami nagyobb kontrollt biztosít az állapotmegőrzés felett.

Biztonsági fejlesztések

A TLS beállítások is fejlődtek. Mostantól lehetőség van a TLS munkamenet-jegyek (TLS session tickets) letiltására, valamint további tanúsítványhatóságok (CA certificates) hozzáadására Kubernetes ConfigMapeken keresztül.

UDP-forgalom és rendszerindítás és a felhasználói felület fejlesztése

Az UDP protokoll támogatása is bővült. A rendszer immár támogatja a systemd socket activation funkciót is, így a Traefik képes hatékonyan kezelni az UDP-alapú forgalmat is, még rendszerindítási szinten is. A Traefik webes felületét is továbbfejlesztették: mostantól automatikusan képes alkalmazkodni a rendszer sötét vagy világos témájához, így felhasználóbarátabb vizuális élményt nyújt minden platformon.

Összegzés

A Traefik Proxy 3.4 egy jól átgondolt és sokrétű frissítés, amely a modern, elosztott rendszerek számára kínál megbízhatóbb, intelligensebb és rugalmasabb forgalomkezelést. Legyen szó Kubernetesről, konténerplatformokról vagy egyszerűbb beállításokról, a friss verzió minden szinten kézzelfogható előnyöket nyújt a fejlesztők és üzemeltetők számára egyaránt.

A teljes változáslista és a hivatalos bejelentés elérhető az alábbi linkeken: