A HAProxy 3.0 teljesítményjavításokkal, tanúsítványokkal és egyebekkel érkezik

HAProxy

HAProxy a népszerű nyílt forráskódú terheléselosztó szoftver, nemrég bejelentette az indulást új verziója "HAProxy 3.0", amelyhez számos frissítés tartozik, amelyek az egyszerűség, a teljesítmény, a megbízhatóság és a biztonság javítását ígérik.

Azok számára, akik nem ismerik a HAProxy-t, tudniuk kell, hogy ez egy terheléselosztó, amely lehetővé teszi a HTTP-forgalom és a TCP-kérések elosztását szerverek csoportja között. A HAProxy számos tényezőt figyelembe vesz, például a szerver elérhetőségét, a terhelési szint felmérését és a DDoS ellenintézkedések megvalósítását.

A HAProxy 3.0 főbb újdonságai

A HAProxy 3.0 új verziója, hosszú távú támogatási változatként van pozicionálva (LTS) és 2029-ig támogatják új crt-store részleggel rendelkezik amely rugalmas módot biztosít az SSL-tanúsítványok tárolására és használatára, elválasztva a tárolást a frontenden történő használattól. Ez lehetővé teszi az egyes tanúsítványösszetevők, például a tanúsítványfájlok, kulcsfájlok és OCSP-válaszfájlok helyének egyedi meghatározását.

A másik kiemelkedő változás a Kibővített lehetőségek a Syslog üzenetek egyensúlyozására. Megemlítik, hogy előrelépés történt annak érdekében, hogy immár súlyozást állíthat be a kiszolgálósorokon a mód naplózóiban. Eközben a ragadós algoritmus, amely a háttérprogramok regisztrálására korlátozódott, most a mode tcp.mode http háttérprogramokra is vonatkozik.

Továbbá a HAProxyban most már lehetőség van bizonyos kérésekre korlátozások beállítására a HTTP/2 protokoll által engedélyezett, ami problémákat okozhat, lehetővé téve a hibás alkalmazások vagy nem megfelelő viselkedésű kliensek azonosítását

A HAProxy 3.0-ban új „irányelv” kerül bemutatásra, ez az irányelv szakaszokban használható "frontend", "backend" és "hallgat" egyedi azonosítót kapcsolni ezekhez a szakaszokhoz, lehetővé teszi a kapcsolódó statisztikák mentését még újraindítás után is. Ezenkívül a "statisztikafájl kiíratása" parancs hozzáadásra került a statisztikák fájlba mentéséhez, a "statistics file" direktíva pedig hozzá lett adva, hogy újraindítás után kiolvassa a statisztikákat egy fájlból.

Is, Bővült a megszerezhető adatok mennyisége, amely lehetővé teszi, hogy információkat kérjen a nyitott HTTP-munkamenetek számáról, a kérési sor méretéről és az egyidejű munkamenetek megengedett számáról.

Másrészt, ésl stick-table-val létrehozott memóriatároló területek teljesítménye jelentősen megnövekedett egy hatékonyabb reteszelő mechanizmus bevezetésével, amely jelentősen javítja a teljesítményt a többmenetes rendszereken. Például egy 80 szálas rendszeren a teljesítmény hatszorosára nőtt.

Azokban a többhelyes konfigurációkban, ahol a TLS-tanúsítvány a TLS SNI-bővítmény által biztosított gazdagép-azonosító alapján van kiválasztva, az "alapértelmezett-crt" argumentum hozzáadásra került az alapértelmezett tanúsítvány kiválasztásához, ha a meglévő tanúsítványok nem egyeznek a hellyel.

Se hozzáadta a „set-fc-tos” és „set-bc-tos” műveleteket a DS mező helyére (Differenciált szolgáltatások) az IP-csomagokon a háttérben vagy az előtérben, valamint a „set-fc-mark” és „set-bc-mark” műveletek az IP-csomagok megjelölésére, hogy később egy adott útválasztási táblához kapcsolódjanak.

Mostantól tilos több parancsot küldeni a Runtime API-nak egy újsor karakterrel elválasztott kérésben; az „enabled” kulcsszó beállítása dinamikus szerverekhez tilos; és megerősítették a nem szabványos URI-k ellenőrzését.

A egyéb kiemelkedő változások ennek az új verziónak:

  • A "@virt" előtag használható virtuális térkép- és ACL-fájlok létrehozására, amelyek nem kerülnek lemezre, és a tartalom a Runtime API-n keresztül kezelhető.
  • A „@opt” előtag csak akkor használ virtuális fájlokat, ha nincsenek valódi fájlok a lemezen.
  •  Az elemzés most szigorúbb a HTTP/1 feldolgozás során a kérelem célellenőrzéséhez.
  • Globális direktívák (http-err-codes és http-fail-codes) kerültek bevezetésre, amelyek lehetővé teszik a követendő HTTP-állapotkódok beállítását.
  • Az uuid Fetch metódus most egy opcionális argumentumot vesz fel, amely az UUID verzióját 4-re vagy 7-re állítja
  • A "lua-load" direktívával betöltött egyszálú Lua szkriptek teljesítménye jelentősen javult.
  • A naplósorok formázása JSON-ban és CBOR-ban mostantól támogatott.
  • Mostantól lehetőség van UUIDv7 formátumú azonosítók létrehozására.

végre, ha az vagy érdekelne többet megtudni róla, ellenőrizheti a részleteket a következő link.