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.
Azure App Service egy HTTP-alapú szolgáltatás webalkalmazások, REST API-k és mobil háttérrendszerek üzemeltetésére. Az App Service integrálható a Microsoft Azure, hogy biztonságot, terheléselosztást, automatikus skálázást és automatizált felügyeletet biztosítson az alkalmazások számára. Az App Service Azure szolgáltatásként számos képességet biztosít a megbízhatósági követelmények támogatására.
Az Azure használatakor a megbízhatóság közös felelősség. Microsoft számos képességet biztosít 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 azt ismerteti, hogyan teheti rugalmassá az App Service-t 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, a régiókimaradásokat és a szolgáltatáskarbantartást. Azt is ismerteti, hogyan használható biztonsági másolatok más típusú problémákból való helyreállításra, és kiemeli az App Service szolgáltatásiszint-szerződéssel (SLA) kapcsolatos legfontosabb információkat.
Megjegyzés:
Ha App Service Environment megbízhatósági támogatásáról szeretne információt keresni, tekintse meg a Reliability in App Service Environment című témakört.
Termelési üzembe helyezési javaslatok
A Azure Well-Architected-keretrendszer megbízhatósági, teljesítmény-, biztonsági, költség- és üzemeltetési 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ó App Service-megoldáshoz, tekintse meg a Architecture ajánlott eljárásait az App Service -hez (Web Apps) a Azure Well-Architected-keretrendszerben.
A megbízhatósági architektúra áttekintése
App Service-webalkalmazás létrehozásakor meg kell adnia az alkalmazást futtató App Service-csomagot .
Az App Service-csomagok a webalkalmazásokat futtató számítási erőforrások készletét határozzák meg. Minden webalkalmazásnak terven belül kell futnia. A terveket skálázhatja úgy, hogy több virtuálisgép-példányon fusson, más néven feldolgozókon. Ezek a példányok biztosítják az alkalmazáskódot futtató számítási erőforrásokat. Egyetlen App Service-csomag több alkalmazást is üzemeltethet. Minden alkalmazás ugyanazon a megosztott virtuálisgép-példányon fut.
Az App Service a következő redundanciaszolgáltatásokat biztosítja:
A hibatartományok közötti szétosztás: Platformszinten Azure automatikusan elosztja az App Service-csomag virtuálisgép-példányait fault tartományok között a Azure régióban. Ez az elosztás minimálisra csökkenti a honosított hardverhibák kockázatát egy közös áramforrással és hálózati kapcsolóval rendelkező virtuális gépek csoportosításával.
A rendelkezésre állási zónák közötti szétosztás: Ha engedélyezi a zónaredundanciát egy támogatott App Service-csomagban, Azure elosztja a példányokat a régió rendelkezésre állási zónái között. Ez a konfiguráció nagyobb rugalmasságot biztosít zónakimaradás esetén. A zónaredundanciáról további információt a rendelkezésre állási zónák támogatásával kapcsolatban talál.
Alkalmazás skálázása: Ha az App Service-csomagot több virtuálisgép-példány futtatására konfigurálja, a csomag összes alkalmazása alapértelmezés szerint minden példányon fut. Ha automatikus skálázásra konfigurálja a tervet, az összes alkalmazás együtt méretezhető fel az automatikus skálázási beállítások alapján. Azonban testre szabhatja, hogy hány példány fut egy adott alkalmazást alkalmazásonkénti skálázással.
Méretezési egységek: Az App Service belsőleg egy skálázási egységeknek nevezett platforminfrastruktúrán fut, más néven bélyegeken vagy webtereken. A méretezési egység tartalmazza az App Service üzemeltetéséhez és futtatásához szükséges összes összetevőt, beleértve a számítást, a tárolást, a hálózatkezelést és a terheléselosztást. Azure skálázási egységeket kezel a kiegyensúlyozott számítási feladatok elosztása, a rutinszerű karbantartás és a platform általános megbízhatóságának fenntartása érdekében.
Egyes képességek csak adott méretezési egységekre alkalmazhatók. Előfordulhat például, hogy egyes App Service-méretezési egységek támogatják a zónaredundanciát, míg az ugyanabban a régióban található más méretezési egységek nem.
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ást, amikor a felhőben üzemeltetett API-kkal, adatbázisokkal és más összetevőkkel kommunikálnak. További információ: Átmeneti hibák kezelésére vonatkozó javaslatok.
Microsoft által biztosított SDK-k általában átmeneti hibákat kezelnek. Mivel saját alkalmazásokat üzemeltet az App Service-ben, tegyen lépéseket az átmeneti hibák esélyének csökkentésére:
Helyezzen üzembe több példányt a tervben. Az App Service automatikus frissítéseket és egyéb karbantartási formákat hajt végre a tervben lévő példányoknál. Ha egy példány állapota nem megfelelő, a szolgáltatás automatikusan lecserélheti a példányt egy új kifogástalan állapotú példányra. A cserefolyamat során előfordulhat, hogy az előző példány nem érhető el, és egy új példány nem áll készen a forgalom kiszolgálására. Ezeknek a hatásoknak a mérséklése érdekében helyezze üzembe az App Service-csomag több példányát.
Üzembehelyezési pontok használata. Az App Service üzembehelyezési pontjai lehetővé teszik az alkalmazások leállási idő nélküli üzembe helyezését. Az üzembehelyezési pontok használatával minimalizálhatja az üzembe helyezések és a konfigurációs módosítások hatását a felhasználók számára. Az üzembehelyezési pontok emellett csökkentik az alkalmazás újraindításának valószínűségét. Az alkalmazás újraindítása átmeneti hibát okoz.
Kerülje a nagyítást vagy a kicsinyítést. Ezek a műveletek megváltoztatják az egyes példányokhoz rendelt processzort, memóriát és egyéb erőforrásokat, és elindíthatják az alkalmazás újraindítását. Ehelyett válasszon ki egy olyan réteget és példányméretet, amely megfelel a teljesítménykövetelményeknek a tipikus terhelés alatt. A skálázás kifelé és befelé érdekében dinamikusan vegyen fel és távolítson el példányokat a forgalommennyiség változásainak kezelésére.
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.
Prémium v2 és v4 szintek esetén az App Service zónaredundánsként konfigurálható, ami azt jelenti, hogy az erőforrások több rendelkezésre állási zónában vannak elosztva. Több zónára kiterjedő elosztás segít elérni a gyártási munkaterhelések rugalmasságát és megbízhatóságát. Amikor zónaredundanciát konfigurál az App Service-csomagokban, a csomagot használó összes alkalmazás zónaredundánssá válik.
Ha az App Service-csomag nincs zónaredundánsként konfigurálva, akkor nemzónásnak minősül, és a mögöttes virtuális gép példányok nem ellenállnak az elérhetőségi zóna meghibásodásával szemben. Állásidőt tapasztalhatnak, ha a régió bármely zónájában üzemszünet van.
Requirements
A zónaredundancia engedélyezéséhez meg kell felelnie a következő követelményeknek:
Régiótámogatás: Az App Service Premium v2- és v3-csomagok esetében a zónaredundancia minden olyan régióban támogatott, amely támogatja a rendelkezésre állási zónákat.
Csomag típusa:A Premium v2 használatával v4 csomagtípusokat használhat.
Fontos
Az App Service Premium v4-csomagok zónaredundanciának engedélyezéséhez ellenőriznie kell, hogy a kívánt régió támogatja-e a v4-csomagokat , és hogy támogatja-e a rendelkezésre állási zónákat.
Példányok minimális száma: Helyezzen üzembe legalább két példányt a tervezetedben.
Skálázási egység: Az alkalmazást üzembe kell helyezni egy olyan méretezési egységben, amely támogatja a rendelkezésre állási zónákat. Közvetlenül nem szabályozhatja a terv által használt méretezési egységet. Ehelyett egy App Service-csomag létrehozásakor a csomag egy skálázási egységhez lesz rendelve a terv erőforráscsoportja alapján. Annak megállapításához, hogy az App Service-csomag méretezési egysége támogatja-e a zónaredundanciát, tekintse meg az App Service-csomag zónaredundancia-támogatásának ellenőrzése című témakört.
Ha az App Service-csomag olyan skálázási egységen van, amely nem támogatja a zónaredundanciát, nem engedélyezheti a zónaredundanciát a csomagban. Ehelyett újra kell üzembe helyeznie az alkalmazásokat egy másik skálaegység új tervében.
Példányok eloszlása zónák között
Zónaredundáns App Service-csomag létrehozásakor Azure elosztja a csomag példányait a régió rendelkezésre állási zónái között. Ez a disztribúció biztosítja, hogy az alkalmazások akkor is elérhetők maradjanak, ha egy zónában kimaradás történik.
A zónaredundáns példányeloszlás meghatározott szabályokat követ. Ezek a szabályok az alkalmazás fel- és felskálázása során is érvényesek:
Minimális példányok: Az App Service-csomagnak legalább két példánysal kell rendelkeznie a zónaredundanciához.
Maximum csomag által támogatott rendelkezésre állási zónák: Azure meghatározza a csomag által használható rendelkezésre állási zónák számát, amelyet maximumNumberOfZones néven nevezünk. Az adott csomag által használható rendelkezésre állási zónák számának megtekintéséhez tekintse meg az App Service-csomag zónaredundancia-támogatásának ellenőrzése című témakört.
Megjegyzés:
A csomaghoz elérhető rendelkezésre állási zónák száma (maximumNumberOfZones) skálázási egység és régió szerint változik. A zónaredundáns telepítés mindig legalább két rendelkezésre állási zónát használ, és a méretezési egységtől függően többet is igénybe vehet. A zónák számától függetlenül a zónaredundáns üzembe helyezés rugalmasságot biztosít egyetlen zónahiba esetén, és ugyanazt az SLA-t kínálja.
Instance-disztribúció: Ha a zónaredundancia engedélyezve van, az Azure automatikusan elosztja az példányokat több rendelkezésre állási zónában. A terjesztés a következő szabályokon alapul:
Ha a példányok száma meghaladja a maximumNumberOfZones és egyenlően osztja el a példányokat, Azure egyenletesen osztja el a példányokat a zónák között.
Ha a példányok száma nem egyenlő, Azure elosztja a többi példányt a többi zónában.
Amikor az App Service-platform példányokat foglal le egy zónaredundáns App Service-csomaghoz, a legjobb erőkifejtés melletti zóna-kiegyenlítést használja, amelyet az alapul szolgáló Azure virtuális gép skála készletek biztosítanak. A terv akkor kiegyensúlyozott, ha minden zónában azonos számú virtuális gép található, vagy egy példányban különbözik. További információ: Zónaelosztás.
Fizikai zóna elhelyezése: Megtekintheti az Egyes App Service-csomagpéldányokhoz használt fizikai rendelkezésre állási zónát . További információt az App Service-csomagok fizikai zónáinak megtekintése című témakörben talál.
Megfontolások
Nonruntime viselkedések: A Premium v2-4 csomagok esetében a rendelkezésre állási zónák leállása hatással lehet a Azure App Service bizonyos aspektusaira, annak ellenére, hogy az alkalmazás továbbra is kiszolgálja a forgalmat. Ilyen viselkedés például az App Service-csomag skálázása, az alkalmazás létrehozása, az alkalmazáskonfiguráció és az alkalmazás közzététele.
Platformfrissítések: Ha engedélyezi a zónaredundanciát az App Service Premium v2-4-es csomagban, akkor a platformfrissítések során a rugalmasság is javul. További információ: Rugalmasság a szolgáltatáskarbantartáshoz.
Költség
Ha az App Service Premium v2–v4 csomagjait használja, a zónaredundancia engedélyezése nem jár külön díjjal. Magának a zónaredundancia funkciónak nincs külön mérőszáma, és a zónaredundáns csomag példányonkénti ára megegyezik az egyzónás csomag árával. A zónaredundancia engedélyezése azonban növeli a terv által futtatandó példányok minimális számát, ami növelheti a számlát.
Ha engedélyezi a rendelkezésre állási zónákat, de kétnál kisebb kapacitást ad meg, a platform minimálisan két példányszámot kényszerít ki. A platform a két instance-ért díjat számít fel.
A díjak az App Service-csomag termékváltozatán, a megadott kapacitáson és az automatikus skálázási feltételek alapján skálázható példányokon alapulnak. További információkért tekintse meg az Azure App Service on Linux díjszabását és Azure App Service Windows díjszabását.
A rendelkezésre állási zóna támogatásának konfigurálása
Hozzon létre egy zónaredundáns új App Service-csomagtervet. További információ: Új App Service-csomag létrehozása zónaredundanciával.
Zónaredundancia engedélyezése vagy letiltása egy meglévő App Service-csomagon. További információ: Zónaredundancia beállítása meglévő App Service-csomaghoz.
Kapacitástervezés és -kezelés
A rendelkezésre állási zóna meghibásodására való felkészüléshez fontolja meg az App Service-csomag kapacitásának túlzott kiépítését . Ez a megközelítés lehetővé teszi, hogy a megoldás elviseljen némi kapacitásvesztést, és a teljesítmény romlása nélkül működjön tovább. További információ: Kapacitás kezelése túlkiépítés használatával.
Viselkedés, ha minden zóna kifogástalan
Az alábbi lista bemutatja, mire számíthat, ha az App Service-csomagok zónaredundanciára vannak konfigurálva, és az összes rendelkezésre állási zóna működőképes:
Forgalomirányítás zónák között: A normál műveletek során a rendszer az összes rendelkezésre állási zónában az összes elérhető App Service-csomagpéldány között irányítja a forgalmat.
Adatreplikálás zónák között: A normál műveletek során az alkalmazás fájlrendszerében tárolt állapotok zónaredundáns tárolóban vannak tárolva, és szinkron módon replikálódnak a rendelkezésre állási zónák között.
Viselkedés zónahiba esetén
A rendelkezésre állási zónák kimaradása hatással lehet az App Service bizonyos aspektusaira, annak ellenére, hogy az alkalmazás továbbra is kiszolgálja a forgalmat. Ilyen viselkedés például az App Service-csomag skálázása, az alkalmazás létrehozása, az alkalmazáskonfiguráció és az alkalmazás közzététele.
Az alábbi lista bemutatja, mire számíthat, ha az App Service-csomagok zónaredundanciára vannak konfigurálva, és egy vagy több rendelkezésre állási zóna nem érhető el:
- Észlelés és válasz: Az App Service platform automatikusan észleli a rendelkezésre állási zónák hibáit, és választ kezdeményez. A zónaátállás kezdeményezéséhez nincs szükség manuális beavatkozásra.
- Értesítés: A Microsoft nem értesíti önt automatikusan, ha egy zóna nem működik. A 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. A 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: A hibás rendelkezésre állási zónában lévő App Service-csomagpéldányhoz csatlakozó folyamatban lévő kérések leállnak. Próbálkozzon újra a kérésekkel.
Forgalom átirányítása: Az App Service észleli az elveszett példányokat az adott zónából, és megpróbálja megtalálni az új helyettesítő példányokat. Miután az App Service megtalálta a helyettesítő példányokat, átirányítja a forgalmat az új példányokra, amennyiben szükséges.
Ha az automatikus skálázás konfigurálva van, és megállapítja, hogy több példányra van szükség, példányokat kér az App Service-től. Az automatikus méretezési viselkedés az App Service platform viselkedésétől függetlenül működik. Így a példányszám specifikációjának nem kell kettő többszörösének lennie. További információ: Alkalmazás vertikális felskálázása az App Service-ben és az automatikus skálázás áttekintése.
Fontos
Azure nem garantálja, hogy a több példány kérésére irányuló kérések sikeresek lesznek zóna-leállás esetén. A platform megpróbálja a lehető legjobban visszapótolni az elveszett példányokat. Ha garantált kapacitásra van szüksége a rendelkezésre állási zóna meghibásodása során, hozza létre és konfigurálja az App Service-csomagokat úgy, hogy a kapacitás túlkiosztásával számoljanak a zónavesztéssel.
Nem futtatókörnyezeti viselkedések: A zóna-redundáns App Service csomagban lévő alkalmazások továbbra is működnek és kiszolgálják a forgalmat, még akkor is, ha egy rendelkezésre állási zóna kiesést tapasztal. A rendelkezésre állási zónák leállása azonban hatással lehet a nem futtatási viselkedésre. Ilyen viselkedés például az App Service-csomag skálázása, az alkalmazás létrehozása, az alkalmazáskonfiguráció és az alkalmazás közzététele.
Zóna helyreállítása
A rendelkezésre állási zóna helyreállításakor az App Service automatikusan létrehozza a példányokat a helyreállított rendelkezésre állási zónában, eltávolítja a többi rendelkezésre állási zónában létrehozott ideiglenes példányokat, és a szokásos módon irányítja a forgalmat a példányok között.
Zónahibák tesztelése
Az App Service platform kezeli a zónaredundáns App Service-csomagok forgalmi útválasztását, átállást és visszaállást. Ez a funkció teljes mértékben felügyelt, így nem kell kezdeményeznie vagy ellenőriznie a rendelkezésre állási zónák meghibásodási folyamatait.
Rugalmasság régiószintű hibákhoz
Az App Service egy egyrégiós szolgáltatás. Ha a régió elérhetetlenné válik, az alkalmazás is elérhetetlenné válik.
Egyéni többrégiós megoldások a rugalmasság érdekében
Az alkalmazást érintő egyrégiós hibák kockázatának csökkentése érdekében több régióban is üzembe helyezhet csomagokat. A következő lépések segítenek a rugalmasság megerősítésében:
- Helyezze üzembe az alkalmazást az egyes régiók tervei szerint.
- Terheléselosztási és feladatátvételi szabályzatok konfigurálása.
- Másolja az adatait a különböző régiók között, hogy helyreállíthassa az alkalmazásának legutóbbi állapotát.
Vegye figyelembe a következő kapcsolódó erőforrásokat:
- Referenciaarchitektúra: Magas rendelkezésre állású többrégiós webalkalmazás
- Megfontolandó megközelítések
- Oktatóanyag: Magas rendelkezésre állású többrégiós alkalmazás létrehozása az App Service-ben
Biztonsági mentés és visszaállítás
Ha az alapszintű vagy magasabb szintet használja, az App Service biztonsági mentési és visszaállítási képességeinek használatával biztonsági másolatot készíthet az App Service-alkalmazásokról egy fájlra.
Ezek a képességek segítenek, ha nehéz újra üzembe helyezni a kódot, vagy ha az állapotot lemezen tárolja. A legtöbb megoldásnak nem szabad kizárólag biztonsági másolatokra támaszkodnia. Ehelyett használja az útmutatóban szereplő egyéb képességeket a rugalmassági követelmények támogatására. A biztonsági másolatok azonban védelmet nyújtanak bizonyos kockázatok ellen, amelyeket más megközelítések nem.
Fontos
2028. március 31-től az Azure App Service egyéni biztonsági másolatai többé nem támogatják a csatolt adatbázisok biztonsági mentését. További információt a csatolt adatbázis biztonsági másolatainak elavulását ismertető cikkben talál.
Ehelyett használja a csatolt adatbázis natív biztonsági mentési és visszaállítási eszközeit. További információ: Alkalmazás biztonsági mentése és visszaállítása az App Service-ben.
A szolgáltatás karbantartásával szembeni rugalmasság
Az App Service rendszeres szolgáltatásfrissítéseket és egyéb karbantartási feladatokat hajt végre. A frissítés során elvárt kapacitás fenntartása érdekében a platform automatikusan hozzáadja az App Service-csomag további példányait a frissítési folyamat során.
Zónaredundancia engedélyezése. Ha engedélyezi a zónaredundanciát az App Service-csomagban, a platformfrissítések során a rugalmasság is javul. A frissítési tartományok olyan virtuális gépek gyűjteményeiből állnak, amelyek a frissítés során offline állapotba kerülnek, és rendelkezésre állási zónákra vannak leképezve. Ha több példányt helyez üzembe az App Service-csomagban, és engedélyezi a zónaredundanciát a csomaghoz, további rugalmassági réteget biztosít, ha egy példány vagy zóna nem megfelelő állapotba kerül a frissítés során.
További információ: Az App Service rutinszerű tervezett karbantartása és az App Service rutinkarbantartása, az újraindítások és az állásidő.
Szolgáltatásiszint-szerződés
A 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 az adott rendelkezésre állási elvárás eléréséhez. További információ: SLAs for online szolgáltatások.
Zónaredundáns App Service-csomag telepítésekor nő az SLA-ban meghatározott üzemidő-százalék. Ugyanez az SLA a mögöttes méretezési egységen elérhető zónák számától függetlenül érvényes.