Ako zvládnuť prenos UDP pomocou HAProxy

Ako Zvladnut Prenos Udp Pomocou Haproxy



Keď hovoríme o HAProxy, pracujeme hlavne s prevádzkou TCP alebo HTTP, pretože sú najbežnejším typom prevádzky. Môžete však naraziť na prípad, keď budete chcieť pracovať s protokolom UDP, aby ste vyvážili záťaž bez pripojenia a bez stavu.

HAProxy spočiatku nepodporoval prenos UDP. Zastarané verzie HAProxy stále nepodporujú prenos UDP. Aby ste zvládli prenos UDP, musíte mať nainštalovaný HAProxy od verzie 1.5. S ohľadom na to vás tento príspevok prevedie tým, ako zvládnuť prenos UDP pomocou HAProxy. Budeme hovoriť o dôležitosti HAProxy a o tom, aké konfigurácie by ste mali urobiť, aby ste zvládli prenos UDP. Začnime!

Podporuje HAProxy prevádzku UDP?

HAProxy je bezplatný nástroj na vyrovnávanie zaťaženia, ktorý funguje aj ako reverzný proxy. Pomocou HAProxy môžete nakonfigurovať, ako má vaša webová aplikácia spracovávať prevádzku tak, že ju rozdelíte medzi dostupné servery. Týmto spôsobom eliminujete šance na akékoľvek preťaženie servera, ktoré spôsobí prestoje a nedostupnosť.







Predtým verzie HAProxy nepodporujú spracovanie prenosu UDP. Avšak HAProxy od verzie 1.5 podporuje spracovanie UDP prevádzky. HAProxy funguje iba s prenosom orientovaným na pripojenie, ale teraz ho môžete nakonfigurovať tak, aby spracovával prenos bez spojenia ako s prenosom UDP.



Ako zvládnuť prevádzku UDP pomocou HAProxy

Spracovanie prenosu UDP pomocou HAProxy sa riadi rovnakými krokmi ako spracovanie prenosu TCP alebo HTTP. Musíte však zadať nastavenia UDP v sekcii frontend vášho konfiguračného súboru HAProxy, aby mohol očakávať a akceptovať prenos UDP.



Začnite inštaláciou HAProxy. HAProxy môžete získať z predvoleného úložiska, ktoré nainštaluje najnovší dostupný systém.





$ sudo apt-get nainštalovať haproxy

Po inštalácii sa uistite, že nainštalovaná verzia je aktuálna a vyššia ako verzia 1.5, aby podporovala protokol UDP.



$ haproxy --verzia

Pre tento prípad sme nainštalovali verziu 2.4, čo znamená, že pohodlne zvládne prenos UDP.

Teraz, keď sme overili správnu verziu HAProxy, ktorá dokáže spracovať prenos UDP, ďalšou úlohou je konfigurácia HAProxy. Otvorte konfiguračný súbor HAProxy pomocou textového editora.

$ sudo nano / atď / haproxy / haproxy.cfg

Po otvorení súboru ponechajte globálnu sekciu tak, ako je.

Prejdite nadol do časti „predvolené“ a upravte ju, aby ste určili, kam sa majú odosielať súbory denníka a časové limity pre rôzne úlohy, napríklad ako dlho sa má čakať na prichádzajúce pripojenia.

Potom musíme vytvoriť sekciu „počúvať“. V tejto časti definujeme, ako počúvať pripojenia. Musíme zadať HAProxy, aby počúvala UDP prevádzku a potom nastaviť, ktorý UDP port chceme zviazať a použiť pre prichádzajúcu UDP prevádzku. Nakoniec môžeme určiť, ako vyvážiť prichádzajúci prenos UDP a aké servery použiť na distribúciu prenosu UDP.

Tu je príklad sekcie „počúvania“, ktorá spracováva prenos UDP.

Skopírujte to isté a pridajte ho do svojho konfiguračného súboru HAProxy. Uistite sa, že ste zmenili port viazania tak, aby sa pre pripojenia používal váš ideálny port UDP. Na vyváženie premávky môžete zadať iný algoritmus. Nakoniec zmeňte názvy serverov a uveďte svoje skutočné adresy IP pre svoje servery.

Po vykonaní zmien uložte konfiguračný súbor a ukončite textový editor. Teraz môžete reštartovať HAProxy, aby ste sa uistili, že zachytí novú konfiguráciu.

Vďaka tomu je váš HAProxy nakonfigurovaný tak, aby spracovával prenos UDP cez určený port a vyrovnával prenos na zahrnuté servery. Uistite sa, že ste otestovali konfiguráciu UDP odoslaním prevádzky UDP do vašej aplikácie a sledujte, ako sa s ňou bude zaobchádzať.

Záver

Hoci je HAProxy navrhnutý hlavne na spracovanie prenosu TCP a HTTP, HAProxy od verzie 1.5 môže byť nakonfigurovaný tak, aby počúval a akceptoval prenos UDP a potom vyrovnával zaťaženie medzi dostupnými servermi. Ak chcete spracovať prenos UDP pomocou HAProxy, uistite sa, že ste zadali „režim udp“ v časti „počúvať“ v HAProxy. Potom nastavte algoritmus vyváženia a servery, ktoré sa majú použiť. Prejdite si tento príspevok, aby ste pochopili, aké kroky musíte dodržiavať, a uveďte uvedený príklad, aby ste to dosiahli správne.