Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Azure Load Balancer egy 4. rétegbeli terheléselosztási szolgáltatás a Transmission Control Protocol (TCP) és a User Datagram Protocol (UDP) forgalom számára, amely a bejövő kéréseket a szolgáltatások kifogástalan állapotú példányai között osztja el. A Load Balancer magas rendelkezésre állást és rendkívül alacsony késésű hálózati teljesítményt biztosít.
Az Azure használatakor a megbízhatóság közös felelősség. A Microsoft számos lehetőséget kínál a rugalmasság és a helyreállítás támogatására. Ön a felelős azért, hogy megértse, hogyan működnek ezek a képességek az összes használt szolgáltatáson belül, és válassza ki azokat a képességeket, amelyekre szüksége van az üzleti célok és az üzemidő céljainak eléréséhez.
Ez a cikk bemutatja, hogyan teheti rugalmassá a Load Balancert számos lehetséges kimaradás és probléma esetén, beleértve az átmeneti hibákat, a rendelkezésre állási zónák kimaradásait és a régiókimaradásokat. Emellett kiemeli a Load Balancer szolgáltatásiszint-szerződéssel (SLA) kapcsolatos legfontosabb információkat is.
Fontos
Az általános megoldás megbízhatósága a háttérpéldányok (kiszolgálók) konfigurációjától függ, például az Azure-beli virtuális gépektől (virtuális gépektől) vagy a virtuálisgép-méretezési csoportoktól, amelyekbe a terheléselosztó átirányítja a forgalmat.
Ez a cikk nem foglalkozik a háttérpéldányokkal, de a rendelkezésre állási konfigurációk közvetlenül befolyásolják az alkalmazás rugalmasságát. Tekintse át az Azure-szolgáltatások megbízhatósági útmutatóját a megoldásban , és ismerje meg, hogyan támogatják az egyes szolgáltatások a megbízhatósági követelményeket.
Termelési üzembe helyezési javaslatok
Az Azure Well-Architected-keretrendszer megbízhatósági, biztonsági, költség-, üzemeltetési és teljesítménybeli javaslatokat kínál. Ha szeretné megtudni, hogy ezek a területek hogyan befolyásolják egymást, és hogyan járulnak hozzá egy megbízható Load Balancer-megoldáshoz, tekintse meg a Load Balancer architektúrával kapcsolatos ajánlott eljárásait.
A megbízhatósági architektúra áttekintése
A terheléselosztó lehet nyilvános vagy belső. A nyilvános terheléselosztó az internetről egy nyilvános IP-címerőforráson keresztül érhető el. A belső terheléselosztó csak a virtuális hálózatból és a virtuális hálózathoz csatlakozó egyéb hálózatokból érhető el.
Minden terheléselosztó több összetevőből áll:
A forgalmat fogadó előtérbeli IP-konfigurációk. A nyilvános terheléselosztó egy nyilvános IP-címen fogadja a forgalmat. A belső terheléselosztó a virtuális hálózaton belül egy IP-címen fogadja a forgalmat.
Háttérkészletek , amelyek olyan háttérpéldányok gyűjteményét tartalmazzák, amelyek képesek fogadni a forgalmat, például az alkalmazást futtató egyes virtuális gépek.
Terheléselosztási szabályok , amelyek meghatározzák, hogy a terheléselosztó hogyan osztja el a forgalmat az előtérből a háttérkészletbe.
Állapottesztek , amelyek a háttérpéldányok rendelkezésre állását figyelik.
További információ: Load Balancer-összetevők.
Globálisan üzembe helyezett megoldások esetén üzembe helyezhet egy globális terheléselosztót, amely a nyilvános terheléselosztó egyedi típusa a megoldás különböző regionális üzemelő példányai közötti forgalom irányításához. A globális terheléselosztó egyetlen küldési IP-címet biztosít, és a legközelebbi egészséges regionális terheléselosztóhoz irányítja a forgalmat az ügyfél közelsége és a regionális állapot alapján. További információ: Rugalmasság régiószintű hibák esetén.
Rugalmasság átmeneti hibákhoz
Az átmeneti hibák rövid, időszakos meghibásodások a komponensekben. Gyakran előfordulnak elosztott környezetben, például a felhőben, és ezek a műveletek szokásos részei. Az átmeneti hibák rövid idő elteltével kijavítják magukat. Fontos, hogy az alkalmazások kezelni tudják az átmeneti hibákat, általában az érintett kérések újrapróbálásával.
Minden felhőalapú alkalmazásnak követnie kell az Azure átmeneti hibakezelési útmutatóját, amikor a felhőben üzemeltetett API-kkal, adatbázisokkal és egyéb összetevőkkel kommunikálnak. További információ: Átmeneti hibák kezelésére vonatkozó javaslatok.
A Load Balancer használatakor fontolja meg az alábbi ajánlott eljárásokat az alkalmazást érintő átmeneti hibák kockázatának minimalizálása érdekében:
Újrapróbálkozási logika implementálása. Az ügyfeleknek megfelelő újrapróbálkozási mechanizmusokat kell implementálniuk az átmeneti kapcsolati hibákhoz, amelyek exponenciális visszalépési stratégiákat is tartalmaznak.
Konfigurálja az állapotellenőrző szondákat tűréshatárral. Konfigurálja az állapotadat-mintavételeket a gyors hibaészlelés egyensúlyba hozásához, és elkerülheti a téves pozitívumokat az átmeneti problémák során.
SNAT-portok elosztásának figyelése. Kimenő kapcsolatok esetén figyelje a forráshálózati címfordítás (SNAT) portfoglalását, és konfigurálja a kimenő szabályokat a portkihasználtság miatti átmeneti kapcsolathibák elkerülése érdekében.
Rugalmasság a rendelkezésre állási zóna hibáival szemben
A rendelkezésre állási zónák fizikailag különálló adatközpont-csoportok egy Azure-régión belül. Ha egy zóna meghibásodik, a szolgáltatások a fennmaradó zónák egyikére is át tudnak adni feladatokat.
A Load Balancert zónaredundánsként üzembe helyezheti az egyes létrehozott előtérbeli IP-konfigurációk konfigurálásával. A zónaredundáns előtérbeli IP-konfiguráció több zónában lévő független infrastruktúrát használ a forgalom egyidejű kiszolgálásához. Ez a konfiguráció biztosítja, hogy a zónahibák ne befolyásolják a terheléselosztó forgalmat fogadó és elosztó képességét.
Az alábbi ábrán egy zónaredundáns nyilvános terheléselosztó látható, amelyet zónaredundáns nyilvános IP-cím létrehozásával konfigurálhat.
Az alábbi ábrán egy belső terheléselosztó látható, amely hasonló zónaredundáns konfigurációt használ.
Megjegyzés:
A zónaszintű terheléselosztókat üzembe helyezheti, de javasoljuk, hogy minden számítási feladathoz használjon zónaredundáns terheléselosztókat, beleértve az egyetlen zónában üzembe helyezhető számítási feladatokat is.
A rendelkezésre állási zónákkal nem rendelkező régiókban az Azure az összes terheléselosztót zóna nélküli vagy regionális konfigurációként hozza létre, egy zóna nélküli előtér-konfiguráció alkalmazásával. Ha a régió kimaradást tapasztal, előfordulhat, hogy a nem zónális terheléselosztók állásidőt tapasztalnak. A később rendelkezésre állási zónákra frissített régióban létrehozott nyilvános IP-címek zónaredundánssá válnak, ha a régió általánosan több rendelkezésre állási zónával rendelkezik.
Háttérpéldányok és rendelkezésre állási zónák
A háttérpéldányok rendelkezésre állási zónájának konfigurációja a terheléselosztó előtérbeli IP-konfigurációjától függetlenül működik.
A háttérpéldányok zónák közötti elosztásához konfigurálja a megfelelő szolgáltatást a megbízhatósági funkciók és az architektúra követelményeinek megfelelően.
Megjegyzés:
A rugalmasság érdekében ossza el a háttérpéldányokat több rendelkezésre állási zónában. Ha az összes háttérpéldány egyetlen zónában fut, az adott zónában történő kimaradás akkor is elérhetetlenné teszi az alkalmazást, ha zónaredundáns terheléselosztót használ.
Ha például virtuális gépeket használ, az éles számítási feladatok gyakori tervezési módszere, hogy több zónális virtuális gépet helyez el az 1., 2. és 3. zónában a zónák közötti rugalmasság elérése érdekében. A terheléselosztáshoz létrehozhat egy zónaredundáns terheléselosztót, és konfigurálhatja ezeket a virtuális gépeket háttérpéldányként a terheléselosztón belül. A terheléselosztó állapotadat-mintavételei automatikusan eltávolítják a nem megfelelő állapotú virtuális gépeket a forgatásból a zóna helyétől függetlenül.
Ha a virtuális gépeket ugyanabban a rendelkezésre állási zónában helyezi üzembe, üzembe helyezhet egy zónaredundáns előtérbeli IP-konfigurációt a terheléselosztón, ahogyan az az alábbi ábrán látható.
Requirements
Régiótámogatás: Zónaredundáns terheléselosztókat bármely olyan régióban üzembe helyezhet, amely támogatja a rendelkezésre állási zónákat.
Költség
A rendelkezésre állási zóna konfigurációja nem változtatja meg az Azure terheléselosztó számláit. Az Azure a zónakonfigurációtól függetlenül a konfigurált szabályok és a feldolgozott adatok számán alapul. További információkért lásd a Load Balancer díjszabását.
A rendelkezésre állási zóna támogatásának konfigurálása
A Load Balancer használatakor a rendelkezésre állási zóna támogatását az előtérbeli IP-konfigurációban kell beállítania.
Hozzon létre egy új terheléselosztót a rendelkezésre állási zóna támogatásával.
A nyilvános terheléselosztók esetében az előtérbeli IP-konfiguráció automatikusan elfogadja a hozzá társított nyilvános IP-címerőforrás rendelkezésre állási zónájának konfigurációját. Az előtérbeli IP-konfigurációs zóna redundánssá tétele érdekében hozzon létre vagy válasszon ki egy zónaredundáns nyilvános IP-címet. Az Azure alapértelmezés szerint zónaredundánsként konfigurálja a nyilvános IP-címeket. További információ: Nyilvános terheléselosztó létrehozása virtuális gépek terheléselosztásához az Azure Portal használatával.
Belső terheléselosztók esetén a terheléselosztó előtérbeli IP-címének konfigurálásakor a rendelkezésre állási zóna támogatási típusát az előtérbeli IP-konfigurációban kell beállítani. További információ: Virtuális gépek terheléselosztására szolgáló belső terheléselosztó létrehozása az Azure Portal használatával.
Meglévő terheléselosztó rendelkezésre állási zónájának konfigurációjának módosítása. Egy meglévő terheléselosztó rendelkezésre állási zónájának konfigurációjának módosításához cserélje le az előtérbeli IP-konfigurációt. Ezzel a megközelítéssel át lehet térni egy zónális konfigurációról egy zónaredundáns előtér IP-konfigurációra:
Hozzon létre egy új előtérbeli IP-konfigurációt, amely rendelkezik a kívánt rendelkezésre állási zónával.
Nyilvános terheléselosztók esetén hozzon létre egy új nyilvános IP-címet, amely a kívánt rendelkezésre állási zóna konfigurációját használja. Ezután konfigurálja újra a terheléselosztót, hogy hozzáadjon egy előtérbeli IP-konfigurációt, amely erre a nyilvános IP-címre hivatkozik.
Belső terheléselosztók esetén konfigurálja újra a terheléselosztót, hogy új előtérbeli IP-konfigurációt adjon hozzá a kívánt rendelkezésre állási zóna konfigurációjával. Ez a lépés egy új privát IP-címet rendel hozzá az alhálózaton belülről.
Konfigurálja újra a terheléselosztási szabályokat az új előtérbeli IP-konfiguráció használatához.
Fontos
Ehhez a művelethez újra kell konfigurálnia az ügyfeleket, hogy forgalmat küldjenek az új előtérbeli IP-címre. Az ügyfelektől függően előfordulhat, hogy a folyamat állásidőt igényel.
Távolítsa el a régi előtérbeli IP-konfigurációt.
Viselkedés, ha minden zóna kifogástalan
Ez a szakasz azt ismerteti, hogy mire számíthat, ha egy terheléselosztó zónaredundáns előtérbeli IP-konfigurációt használ, és az összes rendelkezésre állási zóna megfelelően működik.
Forgalomirányítás zónák között: A terheléselosztás bármely rendelkezésre állási zónában előfordulhat. A terheléselosztó a háttérkészletben megadott kifogástalan állapotú háttérpéldányokra küld forgalmat anélkül, hogy figyelembe veszi, hogy melyik rendelkezésre állási zóna tartalmazza a háttérpéldányt.
Adatreplikálás zónák között: A Load Balancer olyan hálózati átmenő szolgáltatásként működik, amely nem tárolja vagy replikálja az alkalmazásadatokat. A terheléselosztó akkor sem tárolja az állapotot, ha a munkamenetek megőrzését állítja be a terheléselosztón. A munkamenet-megőrzés úgy módosítja a kivonatolási folyamatot, hogy a kéréseket ugyanarra a háttérpéldányra irányítsa, de a terheléselosztó nem garantálja a munkamenetek megőrzését. Amikor a háttérkészlet megváltozik, a terheléselosztó újrafordítja az ügyfélkérések eloszlását, és nem tárolja vagy szinkronizálja az állapotot.
A szolgáltatás a konfigurációs állapotát a zónák közötti szinkron replikációval tartja fenn, amely azonnali konzisztenciát biztosít a terheléselosztási szabályok, az állapotadat-mintavételi konfigurációk és a háttérkészlet-tagság minden zónában.
Viselkedés zónahiba esetén
Ez a szakasz azt ismerteti, hogy mire számíthat, ha egy terheléselosztó zónaredundáns előtérbeli IP-konfigurációt használ, és a rendelkezésre állási zóna kimarad.
- Észlelés és válasz: Az Azure platform felelős a rendelkezésre állási zónában fellépő hibák észleléséért és a válaszadásért. Nem kell semmit tennie a zóna átváltásának kezdeményezéséhez.
- Értesítés: A Microsoft nem értesíti automatikusan, ha egy zóna le van omlva. Az Azure Resource Health használatával azonban figyelheti az egyes erőforrások állapotát, és beállíthat Resource Health-riasztásokat a problémákról való értesítéshez. Az Azure Service Health használatával is megismerheti a szolgáltatás általános állapotát, beleértve a zónahibákat is, és beállíthat Service Health-riasztásokat a problémákról való értesítéshez.
Aktív kérések: Ha egy zóna meghibásodik, a zónán belüli meglévő TCP- és UDP-folyamatok automatikusan alaphelyzetbe állnak, és az ügyfeleknek újra kell próbálkoznia a folyamatokkal. Az ügyfeleknek megfelelő átmeneti hibakezelést kell megvalósítaniuk, beleértve az automatikus újrapróbálkozásokat is.
Várható adatvesztés: A Load Balancer állapot nélküli hálózati szolgáltatás, ezért nem tárolja az alkalmazásadatokat, és nem történik adatvesztés a terheléselosztó rétegben.
Várható állásidő: Zónaredundáns terheléselosztók esetében nem várható állásidő, mert a terheléselosztó továbbra is kifogástalan állapotú zónákból dolgozik.
Ha a hiba hatással van a zóna számítási szolgáltatásaira, előfordulhat, hogy az érintett zónában lévő virtuális gépek vagy egyéb erőforrások nem érhetők el. A terheléselosztó állapottesztjei észlelik ezeket a hibákat, és a terheléselosztási algoritmus és a háttérpéldányok állapotának alapján átirányítják a forgalmat egy másik zóna alternatív példányaihoz.
Forgalom átirányítása: A terheléselosztó továbbra is az kifogástalan állapotú zónákból működik. A Load Balancer ugyanazt az előtérbeli IP-címet tartja fenn a zónahibák során. Ez a viselkedés azt jelenti, hogy nem kell dns-frissítéseket alkalmaznia vagy újrakonfigurálnia az ügyfeleket. Az Azure platform új ügyfélkapcsolatokat hoz létre a fennmaradó kifogástalan állapotú zónákon keresztül.
Zóna helyreállítása
Amikor egy rendelkezésre állási zóna helyreáll, a Load Balancer automatikusan folytatja a normál műveleteket. A zónaredundáns előtér automatikusan elkezdi kiszolgálni a helyreállított zónából érkező forgalmat más műveleti zónákkal együtt. A helyreállított zóna állapotadat-mintavételei folytatják a háttérpéldányok kiértékelését.
Ha a zónahiba az adott zónában lévő számítási szolgáltatásokat is érinti, a Load Balancer automatikusan hozzáadja a háttérpéldányokat az kifogástalan háttérkészlethez a helyreállítás és az állapot-ellenőrzések elvégzése után. A forgalomelosztás újraegyensúlyozása az összes elérhető zónában a terheléselosztási algoritmus és a háttérpéldányok állapotának alapján.
Zónahibák tesztelése
Az Azure-platform kezeli a forgalom útválasztását, a zónaleállítási választ és a helyreállítást, így nem kell kezdeményeznie vagy ellenőriznie a rendelkezésre állási zónák meghibásodási folyamatait.
Az Azure Chaos Studio használatával szimulálhatja egy virtuális gép meghibásodását egyetlen zónában. A Chaos Studio beépített hibákat biztosít a virtuális gépekhez, beleértve a virtuális gépek leállítását okozó hibákat is. Ezekkel a képességekkel szimulálhatja a zónahibákat, és tesztelheti a feladatátvételi folyamatokat.
Rugalmasság régiószintű hibákhoz
A nyilvános és belső terheléselosztók egyetlen Azure-régióban vannak üzembe helyezve. Ha a régió elérhetetlenné válik, a régió terheléselosztói is elérhetetlenné válnak. A Load Balancer natív többrégiós támogatást nyújt egy globális terheléselosztón keresztül, amely támogatja a terheléselosztást az Azure-régiók között. Más terheléselosztási szolgáltatásokat is üzembe helyezhet az Azure-régiók közötti átirányításhoz és feladatátvételhez.
Globális terheléselosztók
A globális terheléselosztók egyetlen statikus ip-címet biztosítanak, amely automatikusan átirányítja a forgalmat az optimális regionális üzembe helyezéshez az ügyfél közelsége és a regionális állapot alapján. A globális terheléselosztók javítják az alkalmazás megbízhatóságát és teljesítményét.
A globális terheléselosztókkal több nyilvános terheléselosztót helyezhet üzembe különböző régiókban, és globális terheléselosztó szolgál globális előtérként. Ha az egyik régió háttérkiszolgálói problémát tapasztalnak, a forgalom dns-módosítások nélkül automatikusan kifogástalan állapotú régiókra vált, mert a küldési IP-cím állandó marad, és átirányítja a forgalmat egy másik régióba.
További információ: Globális terheléselosztó.
Egyéni többrégiós megoldások a rugalmasság érdekében
Az Azure különböző követelményeknek megfelelő terheléselosztási szolgáltatásokat biztosít. Válasszon egy terheléselosztót, amely megfelel a rugalmassági követelményeknek, és megfelel az alkalmazás típusának. További információ: Terheléselosztási beállítások.
Szolgáltatásiszint-szerződés
Az Azure-szolgáltatások szolgáltatásiszint-szerződése (SLA) leírja az egyes szolgáltatások várható elérhetőségét, valamint azokat a feltételeket, amelyeket a megoldásnak teljesítenie kell a rendelkezésre állási elvárás eléréséhez. További információ: SLA-k az online szolgáltatásokhoz.
A Load Balancer SLA akkor érvényes, ha legalább két kifogástalan állapotú virtuális gép van konfigurálva háttérpéldányként. Az SLA kizárja az állásidőt az SNAT-portok kimerülése vagy a forgalmat blokkoló hálózati biztonsági csoportok (NSG-k) miatt.