SaaS-számítási feladatok számítása az Azure-ban
A szolgáltatásként nyújtott szoftveralkalmazásnak (SaaS) számítási platformon kell futnia. Az architektúra többi összetevőjéhez hasonlóan az üzleti követelményeknek is meg kell felelnie, és az üzleti modellnek megfelelően kell megterveznie. A számítási platform kiválasztása jelentős tervezési döntés. A döntés hatással van az ügyfelek elkülönítésére, teljesítményére és rugalmasságára, és a számítási platform befolyásolja a teljes SaaS-megoldás méretezését és növekedését.
Ez a cikk bemutatja az üzemeltetési modell kiválasztásának szempontjait, a modell működési szempontjait, valamint azt, hogy hogyan optimalizálhatja a technológiai lehetőségeket a szolgáltatásiszint-szerződések (SLA-k) és a szolgáltatásiszint-célkitűzések (SLA-k) teljesítéséhez.
Számítási platform kiválasztása
Fontos a megfelelő számítási platform kiválasztása az SaaS-számítási feladathoz, de az elérhető lehetőségek bősége miatt a választás túlterheltnek érezheti magát. A legjobb platform olyan tényezőktől függ, mint az alkalmazásarchitektúra, a skálázás, a teljesítményigények és a bérlői elkülönítési modell. Előfordulhat, hogy az egyik alkalmazás optimálisan nem egy másik alkalmazáshoz optimális.
Kialakítási szempontok
Üzemeltetési modell. Az Azure különböző üzemeltetési modelleket kínál, elsősorban szolgáltatásként nyújtott infrastruktúrát (IaaS) és szolgáltatásként nyújtott platformot (PaaS), mindegyik saját előnyökkel és kompromisszumokkal rendelkezik. Értékelje ki az alkalmazás követelményeit, és válassza ki a legmegfelelőbb modellt.
Az IaaS virtuális gépeket (virtuális gépeket) biztosít, és teljes körű felügyeletet biztosít felettük, beleértve a hálózatkezelést és a tárolást is. Ehhez azonban kezelésre és javításra van szükség, ami működési szempontból intenzív lehet. Ilyenek például a virtuálisgép-méretezési csoportok és az Azure Kubernetes Service-fürtök.
A PaaS lehetővé teszi alkalmazások üzembe helyezését a mögöttes infrastruktúra kezelése nélkül. Beépített funkciókat tartalmaz az automatikus skálázáshoz és a terheléselosztáshoz. Ilyenek például a Azure-alkalmazás Service és az Azure Container Apps.
A PaaS-szolgáltatások kevesebb vezérlést biztosítanak az IaaS-hez képest, ami problémás lehet, ha az alkalmazásnak konkrét konfigurációra van szüksége. Előfordulhat például, hogy az alkalmazás olyan operációs rendszeren fut, amelyet a PaaS szolgáltatás nem támogat.
Számítási feladat típusa. Egyes platformok speciális számítási feladatokra vannak specializáltak, míg mások sokoldalúak. Az App Service például webalkalmazásokhoz készült, míg az AKS általánosabb célú. Webalkalmazásokat, AI-számítási feladatokat és kötegelt számítási feladatokat is üzemeltethet.
Csapattudás fejlesztése. A nagy változások kihívást jelenthetnek, ha a csapat nem rendelkezik tapasztalattal az új platformmal. Felmérheti a csapat készségeit, és megfelelhet a platformkövetelményeknek. Kezdje egy egyszerű platformmal, és fokozatosan alakítsa ki az architektúrát ahelyett, hogy egyenesen egy fejlettebb megoldásra ugrik.
Ha például tárolóalapú alkalmazást hoz létre, kezdje a Container Apps használatával a könnyű kezelés érdekében. Ahogy egyre összetettebbé válnak az igényei, áttérhet az AKS-re, ha idővel jobban megismeri a platformot.
Felügyeleti többletterhelés. A számítási platformok kiegyensúlyozzák a többletterhelést és a vezérlést. A csapattól eltolt nagyobb felügyeleti felelősség kevesebb felügyeletet jelent a platform felett.
Az IaaS például magas szintű felügyeletet biztosít a virtuális gépek felett, de jelentős többletterheléssel jár. Ha az alkalmazás egy ügyfél környezetében van üzembe helyezve, előfordulhat, hogy korlátozott hozzáféréssel rendelkezik a felügyeleti műveletekhez. Annak felmérése, hogy ezek a kompromisszumok elfogadhatóak és megvalósíthatóak-e.
Teljesítménykövetelmények. Megismerheti az alkalmazás teljesítménykövetelményeit a processzor, a memória, a hálózat modellezésével, beleértve a sávszélességet és a késést, a GPU-t és a rendelkezésre állási igényeket. Érdemes megfontolni a jövőbeli növekedést is. Ezen információk segítségével kiválaszthatja a megfelelő számítási erőforrásokat, például a virtuális gépek sorozatát és méretét. Előfordulhat, hogy bizonyos régiókat is ki kell választania, amelyek támogatják az adott virtuálisgép-sorozatokat a speciális követelményeknek való megfelelés érdekében.
Megbízhatósági követelmények. Fontolja meg a számítási platform megbízhatósági funkcióit, és győződjön meg arról, hogy megfelelnek a megbízhatósági céloknak. Előfordulhat, hogy bizonyos szolgáltatási szinteket kell használnia ahhoz, hogy a megoldás több példánya legyen, vagy üzembe kell helyeznie a rendelkezésre állási zónák között a nagyobb megbízhatóság érdekében.
Tekintse meg a RE:04 megbízhatósági célok meghatározására vonatkozó javaslatokat.
Alkalmazásbiztonság és megfelelőség. Értékelje ki az egyes számítási platformok biztonsági funkcióit és megfelelőségi tanúsítványait , hogy biztosan megfeleljenek az igényeinek. Ha például figyelnie és szűrnie kell a kimenő forgalmat, előfordulhat, hogy adott számítási szolgáltatásokat vagy szinteket kell választania.
Tervezési javaslatok
Ajánlás | Juttatás |
---|---|
A processzor-, memória-, hálózati és GPU-méretezési méretek becslésével értékelje ki a számítási teljesítmény követelményeit. Végezzen terheléstesztelést, hogy pontosabb adatokat gyűjtsön a modellezési gyakorlat tájékoztatásához. |
Ezek a feladatok segítenek kiválasztani a számítási platform megfelelő méretezését, és a rendszer terhelésének növekedésével megfelelően méretezni. |
Értékelje ki a csapat jártasságát, és kezdje a legkevésbé összetett platformmal, amely megfelel az igényeinek, vagy egy olyan platformmal, amelyet a csapat már ismer. | Az általuk ismert számítási platform kiválasztásával gördülékenyebb műveleteket biztosíthat, és elkerülheti a csapat túlterhelését. |
Legyen rugalmas a kialakításban. Törekedjen egy olyan megoldásra, amely idővel iterálható a változó üzleti és műszaki követelményekhez való alkalmazkodáshoz. | A rugalmasság lehetővé teszi, hogy könnyebben alkalmazkodjon a változásokhoz és a fejlesztésekhez az idő múlásával. Hatékonyan reagálhat a fejlődő üzleti és technikai igényekre. |
Értékelje ki a teljes tulajdonosi költséget (TCO), beleértve a megoldás üzemeltetési költségeit is. | Tisztában van a költségekkel, ami elengedhetetlen a tarifamodell megtervezéséhez és a költséghatékony műveletek biztosításához. |
Felmérheti, hogy adott számítási platformokat kell-e használnia a technológiai verem miatt. Egyes számítási platformok jobban megfelelnek bizonyos programozási nyelveknek, eszközöknek és operációs rendszereknek. Törekedjen olyan platformok használatára, amelyek natív módon támogatják a technológiai döntéseket. | Elkerülheti az architektúra újratervezésének költségeit, ami magában foglalhatja az új platformra való migrálást is. |
Értékelje ki a platform megbízhatósági funkcióit, és vegye figyelembe a felhőszolgáltató garanciáit az SLO-kban. | A megbízhatósági funkciók tervezésével és rendelkezésre állási zónák használatával csökkentheti a honosított adatközpont-kimaradások kockázatát, ha elérhetők. |
Bérlői modell és elkülönítés
Az SaaS üzleti modell határozza meg, hogy erőforrásokat üzemeltet-e az ügyfelek számára, vagy az ügyfél környezetében kezeli őket. A legtöbb SaaS-szolgáltató az ügyfelek nevében üzemeltet erőforrásokat, így rugalmasan tervezhető a számítási platform. Az ügyfél számítási feladatainak hatékony elkülönítése a költséghatékonyság optimalizálása érdekében az ügyfélélmény és a teljesítmény veszélyeztetése nélkül.
Kialakítási szempontok
Tervezze meg a bérleti modellt. A bérlői modell határozza meg az ügyfelek közötti erőforrás-megosztást, és az üzleti és díjszabási modellek befolyásolják. Az egybérlős modellek ügyfélenként magasabb költségekkel rendelkeznek a teljes mértékben több-bérlős modellekhez képest. A díjszabásnak tükröznie kell ezeket a különbségeket.
Ügyfélkövetelmények. Egyes ügyfeleknek konkrét igényeik lehetnek az adattároláshoz, a teljesítménygaranciához vagy a biztonsági megfelelőséghez. Ha ezek a követelmények a szokásosnál magasabb elkülönítési szinteket igényelnek, gondolja át, hogyan tükrözheti az üzleti modell megnövekedett költségeit.
Zajos szomszéd probléma. Vegye figyelembe a szomszéd zajos problémáját, amikor erőforrásokat oszt meg a bérlők között. A számítási erőforrásokra a leginkább hatással van. További információ: Zajos szomszéd antipattern.
Ha bérlői modellt választ, egyensúlyba kell helyeznie az erőforrás-megosztás költségmegtakarítását az ügyfél teljesítményének biztosításával. Az erőforrások túlzott megosztása vagy a túlzott fogyasztás engedélyezése ronthatja az ügyfélélményt.
Kompromisszum: Teljesítmény és költség. Az erőforrások ügyfelek közötti megosztása költséghatékony lehet, de ha egyes ügyfelek a vártnál több erőforrást használnak, ez a megközelítés csökkentheti mások teljesítményét. Ennek megakadályozása érdekében implementáljon megfelelő erőforrás-szabályozást, hogy a bérlő kihasználtsága a várt korlátokon belül maradjon.
Tervezési javaslatok
Ajánlás | Juttatás |
---|---|
Értékelje ki a számítási platform elkülönítési funkcióit, hogy megfeleljen a bérlői modell követelményeinek. | A kritikus konfiguráció ellenőrzésével elkerülheti a platform újradolgozását. |
Kényszerítse ki az elkülönítési modellt. Legyen óvatos a megosztott erőforrásokkal, például a helyi lemezgyorsítótárakkal, a rendszermemóriával és a külső gyorsítótárakkal, mert véletlenül kiszivároghatnak az adatok a bérlők között, ha nincsenek megfelelően felügyelve. Magas elkülönítési követelmények esetén kényszerítse ki az elkülönítést a számítási platformon és az alkalmazásban. |
Az erős elkülönítés csökkenti a bérlők közötti adatszivárgás kockázatát, ami súlyos biztonsági incidens. |
Erőforrás-szabályozás és -monitorozás megvalósítása az ügyfélszintű metrikák láthatóságával. Proaktív módon monitorozza az egyes ügyfelek erőforrás-felhasználását a zajos szomszédproblémák észlelése és megoldása érdekében. |
Az erőforrás-felhasználás monitorozásával és a problémák korai mérséklésével megakadályozhatja, hogy a problémák más ügyfeleket is érintsék. |
Konfigurálás a méretezhetőséghez és a költséghatékonysághoz
Az ügyfelek különböző teljesítményprofilokkal használhatják az alkalmazást. Elvárják, hogy az alkalmazás a sebesség és a teljesítmény veszélyeztetése nélkül kezelje a növekvő felhasználói igényeket, a nagy méretű adatokat és az összetett számítási feladatokat. A rendszerarchitektúrának biztosítania kell a skálázhatóságot és az optimális teljesítményt, akár több száz vagy több millió felhasználót kezel, ugyanakkor ki kell egyensúlyoznia a teljesítményigényeket és a költségeket.
Kompromisszum: Teljesítmény és költség. A teljesítmény javítása általában erőforrások hozzáadásával jár, ami növeli a költségeket. A számítási feladatok holisztikus áttekintése annak megállapításához, hogy mely erőforrások biztosítják a legnagyobb előnyt a többletköltség szempontjából. Ha például a legfontosabb ügyfelet a dedikált infrastruktúrára szeretné elkülöníteni, érdemes lehet további költségekbe ütköznie a többi számítási feladat teljesítményproblémáinak elkerülése érdekében.
A költségkezelésről további információt az Azure-beli SaaS-számítási feladatok számlázása és költségkezelése című témakörben talál.
Kialakítási szempontok
Horizontális és függőleges skálázási stratégiák. A horizontális és függőleges skálázási módszerek a megnövekedett terhelés kezelésére alkalmasak. A használt megközelítés attól függ, hogy az alkalmazás képes-e több példányra skálázni.
- A horizontális skálázás magában foglalja a számítási csomópontok további példányainak hozzáadását. Az architektúrának terheléselosztóra van szüksége a bejövő forgalom több kiszolgáló vagy példány közötti elosztásához.
- A vertikális skálázás magában foglalja az erőforrások, például a PROCESSZOR és a memória növelését egyetlen kiszolgálón. Ezt a megközelítést olyan állapotalapú alkalmazásokhoz használhatja, amelyeknek nincs szükségük külső állapottárolókra, például gyorsítótárakra. A vertikális skálázás rövid szolgáltatáskimaradásokat okozhat, és egyetlen kiszolgálón erőforráskorláttal rendelkezik.
Tekintse meg a PE:05 skálázási és particionálási javaslatait.
Automatikus skálázás. A rendszereknek hatékonyan kell kezelnie a különböző igényeket. A felhasználói forgalom növekedésével az alkalmazás erőforrásainak vertikálisan fel kell skálázniuk a teljesítményt. Ha az igények csökkennek, az erőforrások leskálázhatók a költségek szabályozására anélkül, hogy befolyásolnák a felhasználói élményt. Ezeket a módosításokat olyan tényezők vezérelik, mint a processzorkihasználtság, a nap időpontja vagy a bejövő kérések. Az automatikus skálázás segít kiegyensúlyozni a teljesítményt és a költségeket, és csökkenti a magas kereslet más bérlőkre gyakorolt hatását.
Tekintse meg a RE:06 megbízható skálázásra vonatkozó javaslatait.
Kapacitástervezés és számítási kiosztás. Az új ügyfelek SaaS-számítási feladatba való előkészítése erőforrás-kapacitást használ fel. Még ha vertikálisan vagy vízszintesen is skáláz, a megoldás méretezhetőségében végül eléri a korlátokat, például a hálózatkezelési vagy tárolási korlátokat.
Feljegyzés
Az Üzembehelyezési bélyegek minta lehetővé teszi a megoldás több független példányának üzembe helyezését. Ez egy másik skálázási dimenziót biztosít. Fontos megérteni az egyes bélyegek kapacitását annak meghatározásához, hogy mikor érdemes többet üzembe helyezni. Ezt a fogalmat dobozos csomagolásnak is nevezik.
Tervezési javaslatok
Ajánlás | Juttatás |
---|---|
Vízszintes skálázás kiválasztása függőleges skálázás felett. A horizontális skálázás gyakran kevésbé összetett, megbízhatóbb és költséghatékonyabb, mint a függőleges skálázás. | A horizontális skálázás gyakran egyszerűbb, megbízhatóbb és költséghatékonyabb, ami lehetővé teszi a vertikális skálázásnál nagyobb mértékű skálázást. |
Végezzen terheléstesztelést. | A használat szimulálása segíthet azonosítani a szűk keresztmetszeteket és a méretezési küszöbértékeket az éles környezetben való üzembe helyezés előtt. |
Határozza meg az új bélyeg üzembe helyezéséhez szükséges méretezési küszöbértéket vízszintes vagy függőleges skálázás helyett. A teljesítményveszteség nélküli költséghatékony skálázás érdekében a bérlőket a lehető legkevesebb erőforrásra kell kondenzálni. |
Jobban felkészült a jelenlegi infrastruktúrán túli növekedés kezelésére. |
Lehetőség szerint automatikus skálázás implementálása. Állítsa be az automatikus méretezési szabályokat, hogy pontosan tükrözze az alkalmazás terhelését. | Az erőforrások igény szerinti növelésével és csökkentésével optimalizálhatja a teljesítményt és a költségeket. |
Ügyfélhasználati minták monitorozása és kiértékelése. | Tudja, mikor kell módosítania az infrastruktúrát a teljesítmény növelése vagy a költségek optimalizálása érdekében. |
Szükség esetén gyorsítótárazási mechanizmusok implementálása. | Csökkentheti a számítási réteg lehetséges feldolgozási terhelését. |
Költségriasztások használata. | A figyelmeztetések segítenek a magas használati és költségproblémák korai észlelésében. |
Az Azure-foglalásokat olyan ügyfelek számára használhatja, akik hosszú távú kötelezettségvállalásokkal és garantált számítási kihasználtsággal rendelkeznek az adott időszakra vonatkozóan. | Maximalizálhatja a fenntartott kapacitás költséghatékonyságát. |
Rugalmasságot szem előtt tartó tervezés
A számítási réteg rugalmassága nagy szerepet játszik az általános rugalmassági stratégiában. Az alkalmazásnak automatikusan és zökkenőmentesen, felhasználói hatás nélkül el kell viselnie és helyre kell állítania a gyakori hibákat.
Kialakítási szempontok
Megbízhatósági követelmények. Adjon meg egyértelmű megbízhatósági követelményeket. Ezek a követelmények közé tartoznak a belső célok, az SLO-k, valamint az ügyfelek kötelezettségvállalásai vagy SLA-k, amelyek gyakran a havi 99,9%-os üzemidejű célokat határozzák meg.
Tekintse meg a RE:04 megbízhatósági célok meghatározására vonatkozó javaslatokat.
Üzembe helyezési stratégia. A felhőerőforrások adott földrajzi régiókban vannak üzembe helyezve. Az Azure-ban a rendelkezésre állási zónák egy régióban elkülönített adatközpont-csoportok. A rugalmasság érdekében több rendelkezésre állási zónában is üzembe helyezhet alkalmazásokat. A régiók vagy felhőszolgáltatók közötti üzembe helyezés növeli a rugalmasságot, de növeli a költségeket és a működési összetettségeket.
A rendelkezésre állási zónák és régiók használatára vonatkozó RE:05-javaslatok.
Állapot nélküli számítási feladatok. A rugalmas alkalmazások üzembe helyezéséhez általában redundáns másolatokat kell futtatnia különböző helyeken. Ez a feladat kihívást jelenthet az állapotalapú számítási feladatok esetében, amelyeknek meg kell tartaniuk a munkamenet állapotát. Törekedjen állapot nélküli számítási feladatok létrehozására, ha lehetséges.
Tervezési javaslatok
Ajánlás | Juttatás |
---|---|
Kezelje az alkalmazás átmeneti hibáit . | A kisebb problémák gyors helyreállításával növelheti a rendelkezésre állást. |
Válasszon állapot nélküli alkalmazásokat. Ha az alkalmazásnak állapotalapúnak kell lennie, használjon egy külső állapottárolási mechanizmust, például egy gyorsítótárat az állapot tárolásához. | Megakadályozhatja az olyan állapotvesztést, amelyet egy példány nem érhető el, például hibás terheléselosztás vagy kimaradás során. |
Rendelkezésre állási zónák használata. | A helyi adatközpont-kimaradások mérséklésével növelheti a rugalmasságot. |
Többrégiós architektúra tervezése üzleti indokok esetén. | Megfelel a magas rendelkezésre állási követelményeknek, és támogatja a különböző régiókban lévő felhasználókat. |
Végezze el a káosz-tervezést. | Jobban megértheti, hogy hol vannak a meghibásodási pontok, és kijavíthatja őket a kimaradás előtt. |
Korlátozza a több bélyeggel megosztott összetevők használatát. | Kiküszöbölheti az egyetlen meghibásodási pontot, és csökkentheti a kimaradás lehetséges hatásterületét. |
További erőforrások
A több-bérlősség az SaaS-számítási feladatok tervezésének alapvető üzleti módszertana. Ezek a cikkek további információt nyújtanak a számítási platform szempontjairól:
Következő lépés
Ismerje meg az SaaS-számítási feladatok hálózatkezelési szempontjait.