Kapacitástervezési javaslatok

Az Azure Well-Architected Framework teljesítményhatékonysági ellenőrzőlistájára vonatkozó javaslatra vonatkozik:

PE:02 Végezze el a kapacitástervezést. A kapacitástervezést a használati minták előrejelzett változásai előtt kell elvégezni. Az előrejelzett változások közé tartoznak a szezonális változások, a termékfrissítések, a marketingkampányok, a különleges események vagy a szabályozási változások.

Ez az útmutató a kapacitástervezésre vonatkozó javaslatokat ismerteti. A kapacitástervezés a számítási feladatok teljesítménycéljainak teljesítéséhez szükséges erőforrások meghatározásának folyamatát jelenti. Ez magában foglalja a számítási feladatok teljesítménykövetelményeinek támogatásához szükséges számítási erőforrások, például a PROCESSZOR, a memória, a tárterület és a hálózati sávszélesség becslését. A kapacitástervezés segít elkerülni az alulépítést, és biztosítja, hogy a számítási feladat elegendő erőforrással rendelkezik a várt számítási feladatok igényeinek kezeléséhez anélkül, hogy teljesítménycsökkenést vagy szűk keresztmetszeteket tapasztal. Emellett segít megelőzni a túlépítést és a szükségtelen költségeket. A kapacitástervezés hiánya teljesítményproblémákhoz, erőforrás-szűk keresztmetszetekhez, megnövekedett költségekhez, nem hatékony kiosztáshoz, méretezhetőségi kihívásokhoz és a számítási feladatok kiszámíthatatlan teljesítményéhez vezethet.

Definíciók

Időszak Definíció
Kapacitástervezés Az erőforrások előrejelzésének folyamata, amelynek a számítási feladatnak meg kell felelnie a teljesítménycéljainak.
Funkcionális követelmények A számítási feladatok funkcióinak és képességeinek meg kell felelniük a kívánt célnak.
Technikai követelmények A funkcionális követelmények teljesítéséhez szükséges kód és infrastruktúra.
Trendanalízis Előzményadatok elemzése a jövőbeli kereslet előrejelzéséhez.

Kulcsfontosságú tervezési stratégiák

A kapacitástervezés egy előretekintő folyamat, amely a számítási feladatok várható igényei és mintázatai alapján hoz döntéseket. Célja a számítási feladatok teljesítményének optimalizálása a folyamatos és a csúcsterhelési forgatókönyvek között. A használat változásainak, például a szezonális műszakoknak vagy a termékkiadásoknak a megismerésével stratégiailag lefoglalhatja az erőforrásokat, megakadályozva a rendszer terhelését a nagy terhelési időszakokban. Ez a proaktív stratégia csökkenti a fennakadásokat, és növeli a teljesítmény hatékonyságát. A korábbi használati trendek és a növekedési adatok elemzésével rövid és hosszú távú igényeket jelezhet előre. Megállapíthatja a lehetséges szűk keresztmetszeteket és a skálázási problémákat, biztosítva a számítási feladatok konzisztens és hatékony teljesítményét.

Kapacitásadatok gyűjtése

A számítási feladatok kihasználtsági adatainak összegyűjtése magában foglalja a számítási feladatok erőforrásainak felhasználásával kapcsolatos információk gyűjtését és elemzését. Adatokat kell gyűjtenie a meglévő számítási feladatok előzménymintáiról és az új számítási feladatok prediktív mértékeiről. Ez a folyamat segít műszaki követelményekké alakítani az üzleti célkitűzéseket, és elengedhetetlen a kapacitás előrejelzéséhez. Vegye figyelembe a következőket:

Meglévő számítási feladatok ismertetése

A kapacitástervezéshez használt meglévő számítási feladatok megértéséhez a számítási feladat erőforrásainak felhasználásával kapcsolatos előzményadatok elemzésére van szükség. Olyan metrikákat foglal magában, mint az erőforrás-használat, a teljesítményadatok és a számítási feladatok mintái. Ez a megértés biztosítja a hatékony erőforrás-kiosztást, műszaki követelményekké alakítja az üzleti célokat, és segít azonosítani a lehetséges szűk keresztmetszeteket.

  • Az adatok ismertetése: Tekintse át a rendelkezésre álló előzményadatokat, és ismerje meg a kapacitástervezés struktúráját, formátumát és relevanciáját. A felülvizsgálat tartalmazhat erőforrás-használati metrikákat, számításifeladat-mintákat, teljesítménymetrikákat és egyéb releváns adatpontokat. Megismerheti az üzleti folyamatokat és az alkalmazások kritikusságát. Azonosítsa a használati csúcsidőket, a felhasználói terhelést, a tranzakciós díjakat és más releváns metrikákat.

  • Adatok tisztítása és előfeldolgozása: Készítse elő az adatokat elemzésre az inkonzisztenciák, hibák vagy kiugró értékek eltávolításával. Az adatok előkészítéséhez olyan adattisztítási technikákra lehet szükség, mint az adatszámítás, a hiányzó értékek kezelése vagy a normalizálás.

  • Főbb metrikák azonosítása: A kapacitástervezés szempontjából releváns metrikák azonosítása. A metrikák közé tartozhat a processzorkihasználtság, a memóriahasználat, a hálózati átviteli sebesség és a válaszidő.

  • Szűk keresztmetszetek azonosítása: Mérje meg az átviteli sebességet és a válaszidőket, hogy azonosítsa a rendszer azon összetevőit, amelyek a számítási feladat növekedésével szűk keresztmetszetekké válhatnak. A másodpercenkénti kérések és az adatbázis processzorhasználata jó kapacitásmutató lehet.

  • Adatok vizualizációja: Vizualizációkat, például diagramokat vagy diagramokat hozhat létre, hogy jobb betekintést nyerjen az előzményadatokba. A vizualizációk segítségével azonosíthatja az adatok mintáit, trendjeit és rendellenességeit, így jobban megértheti a számítási feladatok viselkedését.

Új számítási feladat megismerése

A kapacitástervezés új számítási feladatainak megismerése egy előzményadatok nélküli jövőbeli tevékenység erőforrás-követelményeinek előrejelzését jelenti. Az előzményadatok nélküli számítási feladatok jövőbeli igényeinek előrejelzése nagyobb kihívást jelenthet. Ez a folyamat biztosítja, hogy a számítási feladat bevezetésekor hatékonyan lefoglalja az erőforrásokat, és a kiosztásokat a számítási feladatok célkitűzéseihez igazítsa. Vegye figyelembe a következőket:

  • Piackutatás: A hasonló termékek vagy szolgáltatások iránti kereslet megértésére irányuló piackutatás értékes betekintést nyújthat az új számítási feladatok iránti lehetséges keresletbe. A kutatás magában foglalhatja a piaci trendek elemzését, felmérések elvégzését vagy a versenytársak ajánlatainak tanulmányozását.

  • Szakértői vélemény: Az iparágban jártos szakértőktől vagy szakemberektől származó visszajelzések segíthetnek megbecsülni az új számítási feladatok iránti keresletet. Szakértelmük és megállapításuk értékes információkkal szolgálhat az előrejelzéshez.

  • Próbaprojektek vagy prototípusok: A kis léptékű próbaprojektek vagy prototípusok segítségével valós idejű adatokat és visszajelzéseket gyűjthet. Ezeket az adatokat ezután felhasználhatja a kapacitástervezési folyamat tájékoztatására és az előrejelzett kereslet módosítására.

  • Külső adatforrások: A külső adatforrások, például az iparági jelentések, a piackutatások vagy az ügyfélfelmérések további információkat nyújthatnak az új számítási feladatok iránti kereslet becsléséhez. Ezek a források értékes betekintést nyújtanak az ügyfél preferenciáiba, a piaci trendekbe és a potenciális keresleti tényezőkbe.

Kereslet előrejelzése

Az igények előrejelzéséhez számítási feladatok adatainak használatával kell előrejelezni egy szolgáltatás vagy termék jövőbeli igényeit. A kapacitástervezéshez elengedhetetlen a hatékony erőforrás-kiosztás biztosítása, a növekedési minták előrejelzése és a potenciális keresletnövekedésre való felkészülés. A jövőbeli igények előrejelezésekor az adatok segítségével képet kaphat a jövőbeli igényekről. A jövőbeli kereslet előrejelzéséhez statisztikai elemzési, trendelemzési vagy prediktív modellezési technikákat kell alkalmaznia az adatokra. Ezek a módszerek figyelembe veszik az előzmény- vagy a várható mintákat, és előrejelezik őket a jövőben, hogy megbecsüljék a számítási feladatok várható terhelését. A kereslet előrejelzéséhez vegye figyelembe az alábbi stratégiákat:

Különböző forgatókönyvek figyelembe vétele

A kapacitástervezés során különböző forgatókönyveket kell megterveznie, amelyek előfordulhatnak. Ennek a tervezésnek kiszámítható növekedési mintákat és váratlan keresletnövekedéseket is tartalmaznia kell. A használati minták növekedhetnek vagy zsugorodhatnak. Lehetnek organikusak (többé-kevésbé felhasználók) vagy szervetlenek (események vagy biztonsági incidensek). A kapacitástervezést a használat módosítása előtt, a következő kulcsfontosságú időpontokban kell elvégeznie:

  • Tervezés (előrejelzés)
  • Normál csúcsok (8:00 bejelentkezési rohanás)
  • Indítás (előrejelzés ellenőrzése)
  • Üzleti modell módosítása
  • Felvásárlás vagy egyesülés
  • Marketinges leküldés
  • Szezonális változás
  • Funkció indítása
  • Rendszeresen

Előrejelzési technikák használata

Egy szolgáltatás vagy termék jövőbeli keresletének előrejelzéséhez olyan technikákat kell használni, mint a statisztikai elemzés, a trendelemzés és a prediktív modellezés. Az alábbiakban áttekintjük, hogyan használhatja ezeket a technikákat:

  • Statisztikai elemzés: A statisztikai módszerek segítségével mintázatokat és kapcsolatokat tárhat fel az előzményadatokban. Ezekkel a mintákkal előrejelzheti a jövőbeli keresletet. Az adatok trendjeinek, szezonalitásának és egyéb mintáinak azonosításához olyan technikákat használhat, mint az idősorozat-elemzés, a regresszióelemzés és a mozgóátlagok.

  • Trendelemzés: A trendelemzés az előzményadatok vizsgálatával azonosítja a konzisztens mintákat, és extrapolálja ezeket a mintákat a jövőbe. Ha például a számítási feladatok iránti kereslet 10 százalékkal nőtt az elmúlt évben, akkor ennek a trendnek a folytatását jelezheti előre. Ha egy adott időszakban elemzi a korábbi keresleti adatokat, azonosíthatja a növekedési vagy csökkentési trendeket. A jövőbeli kereslet előrejelzéséhez használja ezeket a trendeket. A trendelemzés képes azonosítani az egyszeri események hatásait is, amelyek a forgalom gyors (szervetlen) eltolódását okozzák. A funkciókiadások például folyamatosan 5 százalékkal növelhetik a keresletet. Ha évente négy fő kiadással rendelkezik, minden alkalommal 5 százalékos növekedést kell terveznie.

  • Prediktív modellezés: A prediktív modellezés olyan matematikai modellek létrehozásának folyamata, amelyek előzményadatokat és más releváns változókat használnak a jövőbeli igények előrejelzéséhez. Használhat olyan technikákat, mint a gépi tanulási algoritmusok, a neurális hálózatok vagy a döntési fák. Ezek a modellek több tényezőt és változót is figyelembe vehetnek, hogy pontosabb előrejelzéseket nyújtsanak.

Előrejelzések igazítása a számítási feladatok célkitűzéseihez

Az előrejelzések és a számítási feladatok célkitűzéseinek összehangolása magában foglalja a prediktív kapacitásmodellek módosítását, hogy azok megfeleljenek az adott számítási feladat konkrét céljainak és igényeinek. Ez az igazítás biztosítja az erőforrások megfelelő kiépítését, ami megakadályozza az alulkihasználtságot és a számítási feladatok esetleges túlterhelését. Ha például egy 1 millió felhasználónak szánt API-t szeretne támogatni 1 MB-os fájlok másodpercenkénti feltöltéséhez, de a jelenlegi adatok lassú írási sebességet mutatnak, módosítania kell a rendszert. Elengedhetetlen, hogy az érdekelt felekkel beszéljünk a számítási feladatok követelményeinek megértéséhez. Győződjön meg arról, hogy a tervek összhangban vannak a szolgáltatók ígéreteivel (SLA-kkal). Ez az igazítás biztosítja, hogy a kapacitás megfeleljen a várt igényeknek, és segít meghatározni a rendszer azon területeit, amelyek esetleg módosításokat igényelnek.

Erőforráskövetelmények meghatározása

A kapacitástervezés erőforrás-követelményeinek meghatározása magában foglalja az előrejelzett igények kielégítéséhez szükséges erőforrások értékelését. Ha például egy alkalmazás 50%-os felhasználói növekedést vár egy promóciós kampány során, előfordulhat, hogy több felhőpéldányt kell lefoglalnia, vagy módosítania kell az automatikus skálázási paramétereket a megnövekedett terhelés kezeléséhez.

A számítási feladatok számos erőforrással rendelkezhetnek, ezért egyetlen metrikát sem kell megfigyelni az erőforráskövetelmények meghatározásához. A hasznos eredmények eléréséhez erőforrásszinten kell mérnie a kapacitást. Az erőforrások várható keresletének becslése az előzményadatok, a piaci trendek és az üzleti előrejelzések alapján. Vegye figyelembe a tranzakciók számát, az egyidejű felhasználókat vagy bármely más releváns metrikát.

Az előrejelzett kereslet alapján számítsa ki az adott igény kielégítéséhez szükséges erőforrásokat. Vegye figyelembe az olyan tényezőket, mint a kiszolgálókapacitás, a hálózati sávszélesség, a tárolókapacitás és a személyzet:

  • Kiszolgálókapacitás: Határozza meg a szükséges kiszolgálókapacitást az egyidejű felhasználók vagy tranzakciók becsült száma alapján. Vegye figyelembe az olyan tényezőket, mint a processzor-, memória- és lemezterület-követelmények, hogy a kiszolgálók képesek legyenek kezelni a várt számítási feladatot.

  • Hálózati sávszélesség: Értékelje ki a várható forgalomszint támogatásához szükséges hálózati sávszélességet. A kiszolgálók és az ügyfelek közötti zökkenőmentes és hatékony kommunikáció érdekében a bejövő és a kimenő adatátviteli díjakat is meg kell adnia.

  • Tárolási kapacitás: Becsülje meg a számítási feladat által az előrejelzett igény során létrehozott vagy feldolgozott adatok mennyiségét. Vegye figyelembe az olyan tényezőket, mint az adatbázis mérete, a fájltárolási követelmények és az alkalmazásra jellemző egyéb adattárolási igények.

  • Személyzet: Felmérheti az infrastruktúra kezeléséhez és karbantartásához, az ügyfélszolgálat kezeléséhez, a rendszer karbantartásához és a zökkenőmentes működés biztosításához szükséges emberi erőforrásokat. Vegye figyelembe az olyan tényezőket, mint a számítási feladatok elosztása, a képességcsoport és a szükséges szakértelem.

Az erőforrás-korlátozások ismertetése

A számítási feladat erőforrásai teljesítménykorlátozásokkal rendelkeznek. A teljesítménykorlátozások az egyes szolgáltatásokon belüli szolgáltatásokra és termékváltozatokra vonatkoznak. Meg kell értenie a számítási feladat erőforrásainak korlátozásait, és figyelembe kell helyeznie ezeket a korlátozásokat a tervezési döntésekben. Tudnia kell például, hogy az erőforrás-korlátozások megkövetelik-e a termékváltozatok módosítását vagy az erőforrások teljes módosítását.

Az elérhető korlátokat is azonosítania kell. A számítási feladatok maximális küszöbértékeinek vagy határainak meghatározására utal. Ezek a korlátozások általában az infrastruktúrára (számítás, memória, tárolás, hálózat), az alkalmazásra (egyidejű adatbázis kapcsolatok, válaszidőkre, rendelkezésre állásra), a szolgáltatásra (másodpercenkénti kérelmekre) és a skálázásra vonatkoznak. Ha a kapacitástervezés eléri a korlátokat, módosítania kell a számítási feladatot, mielőtt a korlát teljesítményproblémát okoz. A teljesítménykonfigurációk, a folyamatos monitorozás és a tesztelés elengedhetetlenek a korlátok és a megoldás érvényesítéséhez.

Kompromisszum: A helytelen kapacitástervezés az erőforrások túlzott kiépítéséhez vagy alulkiépítéséhez vezethet. A túlkiépítés magasabb költségekhez vezet. Az alulkiépítés gyenge teljesítményt eredményezhet. Próbálja meg megtalálni a megfelelő egyensúlyt.

Azure-beli facilitálás

Kapacitásadatok gyűjtése és az előrejelzési igények: Az Azure Monitor lehetővé teszi az alkalmazások és az infrastruktúra telemetriai adatainak gyűjtését és elemzését. Támogatja a különböző Azure-erőforrások, köztük a virtuális gépek, tárolók és tárfiókok monitorozását. A legfontosabb eszközök közé tartozik az Application Insights és a Log Analytics. Az adatgyűjtés konfigurálásával, valamint a monitorozni kívánt metrikák és naplók meghatározásával értékes számítási feladatadatokat gyűjthet elemzés céljából. A hálózatfigyeléshez kombinálja az Azure Monitort az Azure Network Watcher, az Azure Monitor hálózati elemzéseket és az Azure ExpressRoute-monitorozást.

Az Azure Monitor lehetővé teszi az előzményadatok elemzését és az előrejelzési technikák alkalmazását a számítási feladatok jövőbeli trendjeinek és kapacitásigényének előrejelzésére. Olyan előrejelzéseket hozhat létre, amelyek segíthetnek a kapacitástervezésben. Ezek az előrejelzések segítenek megbecsülni a kiszolgálókapacitást, a hálózati sávszélességet, a tárolókapacitást és az egyéb erőforrás-igényeket az előrejelzett keresleti minták használatával.

Erőforráskövetelmények meghatározása: Mivel számos konfigurációt biztosítanak, az Azure-eszközök és -szolgáltatások segíthetnek a műszaki követelmények meghatározásában. A számítási feladatokra vonatkozó követelményeket a rendelkezésre álló Azure-erőforrásokhoz igazíthatja, biztosítva, hogy a funkcionális igényeknek megfelelően válassza ki a megfelelő összetevőket és beállításokat.

Az erőforrás-korlátozások ismertetése: Az Azure dokumentációt és erőforrásokat biztosít a különböző Azure-szolgáltatások és termékváltozatok teljesítménykorlátozásainak megértéséhez. Ezeknek a korlátozásoknak a figyelembevételével megalapozott tervezési döntéseket hozhat, és optimalizálhatja a számítási feladatok architektúráját a teljesítmény és a költséghatékonyság érdekében.

Az Azure olyan méretezhetőségi lehetőségeket biztosít, mint az automatikus skálázás, amely automatikusan módosíthatja az erőforrásokat a számítási feladatok igényei alapján. Vertikálisan skálázhatja az erőforrások kapacitását egy nagyobb virtuálisgép-méret használatával, vagy horizontálisan skálázhat egy erőforrás új példányainak hozzáadásával. Az automatikus skálázási képességekkel rendelkező Azure-szolgáltatások automatikusan felskálázhatják a kapacitást a számítási feladatok csúcsai alatt, és a terhelés csökkenésekor visszatérhetnek a normál állapothoz. A konfigurációban és a szolgáltatásokban vannak skálázási korlátok, amelyeket érdemes figyelembe vennie. Elolvashatja a dokumentációt, vagy teszteket futtathat. Az Azure olyan eszközöket biztosít, mint az Azure Load Testing, amely szimulálja a terhelést és a különböző használati mintákat, így releváns adatokat gyűjthet a számítási feladatról.

Teljesítményhatékonyság ellenőrzőlista

Tekintse meg a javaslatok teljes készletét.