Aanbevelingen voor capaciteitsplanning

Is van toepassing op deze aanbeveling voor de controlelijst voor prestatie-efficiëntie van Azure Well-Architected Framework:

PE:02 Capaciteitsplanning uitvoeren. Capaciteitsplanning moet worden uitgevoerd voordat er voorspelde wijzigingen in gebruikspatronen zijn. Voorspelde wijzigingen zijn seizoensgebonden variaties, productupdates, marketingcampagnes, speciale evenementen of wijzigingen in regelgeving.

In deze handleiding worden de aanbevelingen voor capaciteitsplanning beschreven. Capaciteitsplanning verwijst naar het proces van het bepalen van de resources die nodig zijn om te voldoen aan de prestatiedoelen voor workloads. Het omvat het schatten van de hoeveelheid rekenresources, zoals CPU, geheugen, opslag en netwerkbandbreedte die nodig zijn om de prestatievereisten van de workload te ondersteunen. Capaciteitsplanning helpt te voorkomen dat er te weinig wordt ingericht en zorgt ervoor dat de workload voldoende resources heeft om de verwachte workloadvereisten aan te kunnen, zonder prestatievermindering of knelpunten. Het helpt ook overprovisioning en onnodige kosten te voorkomen. Een gebrek aan capaciteitsplanning kan leiden tot prestatieproblemen, resourceknelpunten, hogere kosten, inefficiënte toewijzing, schaalbaarheidsproblemen en onvoorspelbare workloadprestaties.

Definities

Termijn Definitie
Capaciteitsplanning Het proces van het voorspellen van de resources die een workload nodig heeft om te voldoen aan de prestatiedoelen.
Functionele vereisten De functies en mogelijkheden die een workload moet hebben om het beoogde doel te bereiken.
Technische vereisten De code en infrastructuur die nodig zijn om te voldoen aan de functionele vereisten.
Trendanalyses Historische gegevensanalyse om de toekomstige vraag te voorspellen.

Belangrijke ontwerpstrategieën

Capaciteitsplanning is een vooruitziend proces waarbij beslissingen worden genomen op basis van verwachte workloadvereisten en -patronen. Het doel is om de prestaties van workloads te optimaliseren in scenario's met continue belasting en piekbelasting. Door inzicht te krijgen in wijzigingen in het gebruik, zoals seizoensgebonden verschuivingen of productreleases, kunt u resources strategisch toewijzen, waardoor systeembelasting tijdens perioden met een hoge vraag wordt voorkomen. Deze proactieve strategie vermindert onderbrekingen en verbetert de efficiëntie van de prestaties. Door eerdere gebruikstrends en groeigegevens te analyseren, kunt u behoeften op korte en lange termijn voorspellen. U kunt potentiële knelpunten en schaalproblemen aanwijzen, waardoor consistente en efficiënte workloadprestaties worden gegarandeerd.

Capaciteitsgegevens verzamelen

Het verzamelen van gegevens over het gebruik van workloads omvat het verzamelen en analyseren van informatie over hoe een workload resources gebruikt. U moet gegevens verzamelen over historische patronen voor bestaande workloads en voorspellende metingen voor nieuwe workloads. Dit proces helpt bij het vertalen van bedrijfsdoelstellingen in technische vereisten en is essentieel voor het voorspellen van de capaciteit. Bekijk de volgende aanbevelingen:

Inzicht in een bestaande workload

Inzicht in een bestaande workload voor capaciteitsplanning omvat het analyseren van historische gegevens met betrekking tot de wijze waarop de workload resources gebruikt. Het omvat metrische gegevens zoals resourcegebruik, prestatiegegevens en workloadpatronen. Dit inzicht zorgt voor een efficiënte toewijzing van resources, vertaalt bedrijfsdoelen in technische vereisten en helpt bij het identificeren van mogelijke knelpunten.

  • Inzicht in de gegevens: bekijk de beschikbare historische gegevens en begrijp de structuur, indeling en relevantie voor capaciteitsplanning. De beoordeling kan metrische gegevens over resourcegebruik, workloadpatronen, metrische prestatiegegevens en andere relevante gegevenspunten omvatten. Inzicht in de bedrijfsprocessen en de ernst van de toepassingen. Identificeer de piekgebruikstijden, gebruikersbelasting, transactiesnelheden en andere relevante metrische gegevens.

  • De gegevens opschonen en voorverwerken: bereid de gegevens voor op analyse door inconsistenties, fouten of uitbijters te verwijderen. Het voorbereiden van de gegevens kan bestaan uit technieken voor het opschonen van gegevens, zoals het invoeren van gegevens, het verwerken van ontbrekende waarden of normalisatie.

  • Belangrijke metrische gegevens identificeren: identificeer de metrische gegevens die relevant zijn voor capaciteitsplanning. Metrische gegevens kunnen cpu-gebruik, geheugengebruik, netwerkdoorvoer en reactietijden omvatten.

  • Knelpunten identificeren: Meet de doorvoer en reactietijden om de specifieke onderdelen van uw systeem te identificeren die knelpunten kunnen worden naarmate de workload toeneemt. Aanvragen per seconde en database-CPU-gebruik kunnen goede indicatoren van de capaciteit zijn.

  • De gegevens visualiseren: maak visualisaties, zoals grafieken of diagrammen, om beter inzicht te krijgen in historische gegevens. Visualisaties kunnen u helpen patronen, trends en afwijkingen in gegevens te identificeren, zodat u beter inzicht krijgt in het gedrag van workloads.

Inzicht in een nieuwe workload

Inzicht in een nieuwe workload voor capaciteitsplanning verwijst naar het voorspellen van de resourcevereisten van een toekomstige taak zonder historische gegevens. Het voorspellen van de toekomstige behoeften van een nieuwe workload zonder historische gegevens kan lastiger zijn. Dit proces zorgt ervoor dat u resources efficiënt toewijst en toewijzingen afstemt op de workloaddoelstellingen wanneer de workload wordt geïntroduceerd. Bekijk de volgende aanbevelingen:

  • Marktonderzoek: Het uitvoeren van marktonderzoek om inzicht te krijgen in de vraag naar vergelijkbare producten of services kan waardevolle inzichten geven in de potentiële vraag naar een nieuwe workload. Het onderzoek kan betrekking hebben op het analyseren van markttrends, het uitvoeren van enquêtes of het bestuderen van aanbiedingen van concurrenten.

  • Oordeel van experts: Met behulp van input van deskundigen of professionals die ervaring hebben in de branche, kunt u een schatting maken van de vraag naar een nieuwe workload. Hun expertise en inzichten kunnen waardevolle input bieden voor prognoses.

  • Proefprojecten of prototypen: Kleinschalige proefprojecten of prototypen kunnen u helpen realtime gegevens en feedback te verzamelen. U kunt deze gegevens vervolgens gebruiken om het capaciteitsplanningsproces te informeren en de geraamde vraag aan te passen.

  • Externe gegevensbronnen: externe gegevensbronnen, zoals brancherapporten, marktonderzoeken of klantonderzoeken, kunnen aanvullende informatie bieden voor het schatten van de vraag naar een nieuwe workload. Deze bronnen kunnen waardevolle inzichten bieden in klantvoorkeuren, markttrends en potentiële vraagfactoren.

Vraag voorspellen

Het voorspellen van de vraag omvat het gebruik van workloadgegevens om toekomstige behoeften voor een service of product te voorspellen. Het is essentieel voor capaciteitsplanning om efficiënte toewijzing van resources te garanderen, te anticiperen op groeipatronen en voor te bereiden op mogelijke pieken in de vraag. Wanneer u de toekomstige vraag voorspelt, gebruikt u gegevens om een idee te krijgen van toekomstige behoeften. U past statistische analyse, trendanalyse of voorspellende modelleringstechnieken toe op de gegevens die u nodig hebt om de toekomstige vraag te voorspellen. Deze methoden houden rekening met historische of verwachte patronen en projecteren deze in de toekomst om schattingen te maken van de verwachte vraag naar workloads. Overweeg de volgende strategieën om de vraag te voorspellen:

Account voor verschillende scenario's

Wanneer u capaciteitsplanning uitvoert, moet u plannen voor verschillende scenario's die zich kunnen voordoen. Deze planning moet zowel voorspelbare groeipatronen als onverwachte pieken in de vraag omvatten. Gebruikspatronen kunnen toenemen of verkleinen. Ze kunnen organisch (meer of minder gebruikers) of anorganisch (een gebeurtenis of beveiligingsincident) zijn. U moet capaciteitsplanning uitvoeren voordat het gebruik verandert, op belangrijke momenten:

  • Ontwerp (voorspelling)
  • Normale pieken (aanmeldingsdruk om 8:00 uur)
  • Starten (voorspellingsvalidatie)
  • Wijziging van bedrijfsmodel
  • Overname of fusie
  • Marketing push
  • Seizoensgebonden verandering
  • Functie starten
  • Periodiek

Voorspellingstechnieken gebruiken

Het voorspellen van de toekomstige vraag naar een service of product omvat het gebruik van technieken zoals statistische analyse, trendanalyse en voorspellende modellering. Hier volgt een overzicht van hoe u deze technieken kunt gebruiken:

  • Statistische analyse: met statistische methoden kunt u patronen en relaties in historische gegevens blootleggen. U kunt deze patronen gebruiken om de toekomstige vraag te voorspellen. U kunt technieken zoals tijdreeksanalyse, regressieanalyse en zwevende gemiddelden gebruiken om trends, seizoensgebondenheid en andere patronen in de gegevens te identificeren.

  • Trendanalyse: trendanalyse omvat het onderzoeken van historische gegevens om consistente patronen te identificeren en deze patronen naar de toekomst te extrapoleren. Als de vraag naar workloads het afgelopen jaar bijvoorbeeld met 10 procent is toegenomen, kunt u een voortzetting van deze trend voorspellen. Wanneer u historische vraaggegevens over een bepaalde periode analyseert, kunt u groei- of reductietrends identificeren. Gebruik deze trends als basis voor het voorspellen van de toekomstige vraag. Trendanalyse kan ook de effecten identificeren van eenmalige gebeurtenissen die snelle verschuivingen in verkeer (anorganisch) veroorzaken. Zo kunnen functiereleases de vraag consistent met 5 procent verhogen. Als u vier grote releases per jaar hebt, moet u elke keer een groei van 5 procent plannen.

  • Voorspellende modellering: voorspellende modellering is het proces van het bouwen van wiskundige modellen die gebruikmaken van historische gegevens en andere relevante variabelen om voorspellingen te doen over de toekomstige vraag. U kunt technieken gebruiken zoals machine learning-algoritmen, neurale netwerken of beslissingsstructuren. Deze modellen kunnen rekening houden met meerdere factoren en variabelen om nauwkeurigere prognoses te bieden.

Prognoses afstemmen op workloaddoelstellingen

Het afstemmen van prognoses met workloaddoelstellingen omvat het aanpassen van voorspellende capaciteitsmodellen om ervoor te zorgen dat ze voldoen aan de specifieke doelstellingen en vereisten van een bepaalde workload. Deze uitlijning zorgt ervoor dat resources adequaat worden ingericht, waardoor zowel onderbezetting als potentiële workloadoverbelastingen worden voorkomen. Als u bijvoorbeeld een API wilt ondersteunen voor 1 miljoen gebruikers voor het uploaden van 1 MB-bestanden in een seconde, maar de huidige gegevens trage schrijfsnelheden laten zien, moet u uw systeem aanpassen. Het is essentieel om met belanghebbenden te praten om de vereisten van de workload te begrijpen. Zorg ervoor dat uw plannen overeenkomen met de beloftes (SLA's) van uw serviceproviders. Deze uitlijning zorgt ervoor dat uw capaciteit voldoet aan de verwachte vraag en helpt bij het aanwijzen van gebieden in het systeem die mogelijk moeten worden gewijzigd.

Resourcevereisten bepalen

Het bepalen van de resourcevereisten voor capaciteitsplanning omvat het beoordelen van de resources die u nodig hebt om te voldoen aan de geraamde vraag. Als een toepassing bijvoorbeeld een toename van 50% van het aantal gebruikers verwacht tijdens een promotiecampagne, moet de toepassing mogelijk meer cloudexemplaren toewijzen of de parameters voor automatisch schalen aanpassen om de verhoogde belasting af te handelen.

Een workload kan veel resources bevatten, dus er is geen metrische waarde om de resourcevereisten te bepalen. U moet de capaciteit op resourceniveau meten om zinvolle resultaten te krijgen. Maak een schatting van de verwachte vraag naar uw resources op basis van historische gegevens, markttrends en bedrijfsprognoses. Houd rekening met het aantal transacties, gelijktijdige gebruikers of andere relevante metrische gegevens.

Bereken op basis van de geraamde vraag de resources die nodig zijn om aan die vraag te voldoen. Houd rekening met factoren zoals servercapaciteit, netwerkbandbreedte, opslagcapaciteit en personeel:

  • Servercapaciteit: bepaal de vereiste servercapaciteit op basis van het geschatte aantal gelijktijdige gebruikers of transacties. Houd rekening met factoren zoals CPU, geheugen en schijfruimtevereisten om ervoor te zorgen dat uw servers de verwachte werkbelasting kunnen verwerken.

  • Netwerkbandbreedte: evalueer de netwerkbandbreedte die u nodig hebt om het verwachte niveau van verkeer te ondersteunen. U moet zowel inkomende als uitgaande gegevensoverdrachtsnelheden opnemen om een soepele en efficiënte communicatie tussen servers en clients te garanderen.

  • Opslagcapaciteit: maak een schatting van de hoeveelheid gegevens die de workload genereert of verwerkt tijdens de voorspelde vraag. Houd rekening met factoren zoals databasegrootte, vereisten voor bestandsopslag en andere behoeften voor gegevensopslag die specifiek zijn voor uw toepassing.

  • Personeel: Beoordeel de personele resources die nodig zijn voor het beheren en onderhouden van de infrastructuur, het afhandelen van klantondersteuning, het uitvoeren van systeemonderhoud en het garanderen van een soepele werking. Houd rekening met factoren zoals workloaddistributie, vaardigheden en vereiste expertise.

Resourcebeperkingen begrijpen

Voor resources in uw workload gelden prestatiebeperkingen. Prestatiebeperkingen zijn van toepassing op services en SKU's binnen elke service. U moet de beperkingen van de resources in uw workload begrijpen en deze beperkingen meenemen in uw ontwerpbeslissingen. U moet bijvoorbeeld weten of resourcebeperkingen vereisen dat u SKU's wijzigt of resources helemaal wijzigt.

U moet ook bereikbare limieten identificeren. Het verwijst naar het aanwijzen van de maximumdrempels of grenzen van een workload. Deze limieten zijn meestal van toepassing op infrastructuur (rekenkracht, geheugen, opslag, netwerk), toepassing (gelijktijdige database verbindingen, reactietijden, beschikbaarheid), service (aanvragen per seconde) en schalen. Wanneer capaciteitsplanning bereikbare limieten identificeert, moet u de workload wijzigen voordat de limiet een prestatieprobleem veroorzaakt. Prestatiebasislijnen, continue bewaking en testen zijn essentieel voor het valideren van de limieten en de oplossing.

Afweging: Een onjuiste capaciteitsplanning kan leiden tot over- of onderinrichting van resources. Over-inrichting leidt tot hogere kosten. Te weinig inrichten kan leiden tot slechte prestaties. Probeer de juiste balans te vinden.

Azure-facilitering

Capaciteitsgegevens verzamelen en de vraag voorspellen: Met Azure Monitor kunt u telemetriegegevens van uw toepassingen en infrastructuur verzamelen en analyseren. Het ondersteunt de bewaking van verschillende Azure-resources, waaronder virtuele machines, containers en opslagaccounts. Belangrijke hulpprogramma's zijn Application Insights en Log Analytics. Door gegevensverzameling te configureren en metrische gegevens en logboeken te definiëren die u wilt bewaken, kunt u waardevolle workloadgegevens verzamelen voor analyse. Voor netwerkbewaking combineert u Azure Monitor met Azure Network Watcher, Azure Monitor-netwerk insights en Azure ExpressRoute-bewaking.

Met Azure Monitor kunt u historische gegevens analyseren en prognosetechnieken toepassen om toekomstige workloadtrends en capaciteitsvereisten te voorspellen. U kunt prognoses genereren die u kunnen helpen bij de capaciteitsplanning. Deze prognoses helpen bij het schatten van servercapaciteit, netwerkbandbreedte, opslagcapaciteit en andere resourcebehoeften met behulp van voorspelde vraagpatronen.

Resourcevereisten bepalen: Omdat ze een breed scala aan configuraties bieden, kunnen Azure-hulpprogramma's en -services u helpen bij het definiëren van technische vereisten. U kunt uw workloadvereisten afstemmen op beschikbare Azure-resources, zodat u de juiste onderdelen en instellingen selecteert die voldoen aan uw functionele behoeften.

Informatie over resourcebeperkingen: Azure biedt documentatie en resources om inzicht te krijgen in de prestatiebeperkingen van verschillende Azure-services en -SKU's. Als u rekening houdt met deze beperkingen, kunt u weloverwogen ontwerpbeslissingen nemen en uw workloadarchitectuur optimaliseren voor prestaties en kosteneffectiviteit.

Azure biedt schaalbaarheidsopties zoals automatisch schalen, waarmee resources automatisch kunnen worden aangepast op basis van de vraag naar workloads. U kunt verticaal schalen door de capaciteit van een resource te vergroten met behulp van een grotere virtuele machine of u kunt horizontaal schalen door nieuwe exemplaren van een resource toe te voegen. Azure-services met mogelijkheden voor automatisch schalen kunnen automatisch worden uitgeschaald om ervoor te zorgen dat de capaciteit tijdens pieken in de werkbelasting wordt gegarandeerd en weer normaal wordt wanneer de belasting afneemt. Er zijn schaallimieten binnen uw configuratie en services waar u rekening mee moet houden. U kunt de documentatie lezen of tests uitvoeren. Azure biedt hulpprogramma's zoals Azure Load Testing, waarmee belasting en verschillende gebruikspatronen kunnen worden gesimuleerd om u te helpen relevante gegevens over uw workload te verzamelen.

Controlelijst voor efficiëntie van prestaties

Raadpleeg de volledige set aanbevelingen.