Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

COST09-BP03 Fornisci risorse in modo dinamico - AWS Well-Architected Framework

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

COST09-BP03 Fornisci risorse in modo dinamico

Le risorse sono allocate in modo pianificato. La pianificazione può essere basata sulla domanda, ad esempio tramite il dimensionamento automatico, oppure sul tempo, quando la domanda è prevedibile e le risorse sono fornite in base al tempo. Questi metodi comportano la minore quantità possibile di provisioning in eccesso o in difetto.

Livello di rischio associato se questa best practice non fosse adottata: basso

Guida all'implementazione

I AWS clienti possono aumentare le risorse disponibili per le proprie applicazioni e fornire risorse per soddisfare la domanda. Una di queste opzioni consiste nell'utilizzare AWS Instance Scheduler, che automatizza l'avvio e l'arresto delle istanze Amazon Elastic Compute Cloud (AmazonEC2) e Amazon Relational Database Service (Amazon). RDS L'altra opzione è l'utilizzo AWS Auto Scaling, che consente di scalare automaticamente le risorse di elaborazione in base alla domanda dell'applicazione o del servizio. Fornire risorse in base alla domanda ti consentirà di pagare solo per le risorse che usi, di ridurre i costi lanciando le risorse quando sono necessarie e di interromperle quando non servono più.

AWS Instance Scheduler ti consente di configurare l'arresto e l'avvio delle RDS istanze Amazon EC2 e Amazon in orari definiti in modo da soddisfare la domanda delle stesse risorse entro uno schema temporale coerente, ad esempio ogni giorno gli utenti accedono alle EC2 istanze Amazon alle otto del mattino e non ne hanno bisogno dopo le sei di sera. Questa soluzione aiuta a ridurre i costi operativi fermando le risorse non utilizzate e avviandole quando sono necessarie.

Diagramma che mostra l'ottimizzazione dei costi utilizzando Instance Scheduler. AWS

Ottimizzazione dei costi con AWS Instance Scheduler.

Puoi anche configurare facilmente le pianificazioni per le tue EC2 istanze Amazon tra i tuoi account e le tue regioni con una semplice interfaccia utente (UI) utilizzando AWS Systems Manager Quick Setup. Puoi pianificare RDS istanze Amazon EC2 o Amazon con AWS Instance Scheduler e interrompere e avviare le istanze esistenti. Tuttavia, non puoi fermare e avviare istanze che fanno parte del tuo gruppo Auto Scaling ASG () o che gestiscono servizi come Amazon Redshift o Amazon Service. OpenSearch I gruppi Auto Scaling presentano una propria pianificazione in merito alle istanze del gruppo e queste istanze vengono create.

AWS Auto Scaling ti aiuta a regolare la capacità per mantenere prestazioni stabili e prevedibili al minor costo possibile per soddisfare le mutevoli esigenze. È un servizio completamente gestito e gratuito per scalare la capacità della tua applicazione che si integra con EC2 istanze Amazon e flotte Spot, Amazon, Amazon ECS DynamoDB e Amazon Aurora. Auto Scaling fornisce il rilevamento automatico delle risorse per aiutare a trovare risorse nel carico di lavoro che possono essere configurate, dispone di strategie di dimensionamento integrate per ottimizzare le prestazioni, i costi o un equilibrio tra i due e fornisce il dimensionamento predittivo per aiutare a risolvere i picchi ricorrenti con regolarità.

Sono disponibili diverse opzioni di dimensionamento per scalare il tuo gruppo Auto Scaling:

  • Mantenimento dei livelli di istanza correnti in qualsiasi momento

  • Dimensionamento manuale

  • Dimensionamento in base a una pianificazione

  • Dimensionamento on demand

  • Utilizzo del dimensionamento predittivo

Le policy di Auto Scaling sono diverse e possono essere classificate come policy di dimensionamento dinamico e pianificato. Le policy dinamiche fanno riferimento al dimensionamento manuale o dinamico, programmato o predittivo. È possibile utilizzare le policy di dimensionamento per il dimensionamento dinamico, pianificato e predittivo. Puoi anche utilizzare i parametri e gli allarmi di Amazon CloudWatch per attivare eventi di scalabilità per il tuo carico di lavoro. Noi ti suggeriamo di utilizzare i modelli di avvio, che consentono di accedere alle funzionalità e ai miglioramenti più recenti. In caso di utilizzo di configurazioni di avvio, non tutte le funzionalità di Auto Scaling sono disponibili. Ad esempio, non è possibile creare un gruppo Auto Scaling che avvii istanze spot e on demand oppure che specifichi più tipi di istanza. Per configurare queste caratteristiche, sarà necessario utilizzare un modello di avvio. Quando utilizzi i modelli di avvio, ti consigliamo di modificare ciascuno di essi. Con il controllo delle versioni dei modelli di avvio, è possibile creare un sottoinsieme del set completo di parametri. Quindi, è possibile riutilizzarlo per creare altre versioni dello stesso modello di avvio.

Puoi utilizzare AWS Auto Scaling o incorporare la scalabilità nel tuo codice con o.AWS APIs SDKs Ciò riduce i costi complessivi del carico di lavoro rimuovendo i costi operativi dall'apportare manualmente modifiche al tuo ambiente; le modifiche possono essere apportate molto più rapidamente. In questo modo, inoltre, il carico di lavoro viene adattato alla domanda in qualsiasi momento. Per seguire questa best practice e fornire risorse in modo dinamico alla tua organizzazione, devi comprendere la scalabilità orizzontale e verticale delle applicazioni in esecuzione sulle Cloud AWS istanze Amazon e la natura delle applicazioni in esecuzione su istanze AmazonEC2. È meglio che il team di Cloud Financial Management collabori con i team tecnici per seguire questa best practice.

Elastic Load Balancing (bilanciamento del carico elastico) consente di scalare le risorse distribuendo la domanda su più risorse. Con l'utilizzo ASG di Elastic Load Balancing, puoi gestire le richieste in entrata instradando il traffico in modo ottimale in modo che nessuna istanza sia sovraccarica in un gruppo di Auto Scaling. Le richieste vengono distribuite tra tutti gli obiettivi di un gruppo target in modalità Round Robin, senza tenere conto della capacità o dell'utilizzo.

Le metriche tipiche possono essere parametri standard di AmazonEC2, come l'CPUutilizzo, il throughput di rete e la latenza di richiesta e risposta osservata da Elastic Load Balancing. Quando possibile, è consigliabile utilizzare un parametro indicativo dell'esperienza del cliente, in genere si tratta di un parametro personalizzato che potrebbe avere origine dal codice dell'applicazione all'interno del carico di lavoro. Per capire come soddisfare la domanda in modo dinamico in questo documento, Auto Scaling verrà suddiviso in due categorie (modello di fornitura basata sulla domanda e modello di fornitura basata sul tempo) e verrà approfondito ciascun modello.

Fornitura basata sulla domanda: sfrutta l'elasticità del cloud per fornire risorse in grado di soddisfare la domanda in continua evoluzione facendo riferimento allo stato della domanda quasi in tempo reale. Per funzionalità di fornitura, utilizzo APIs o servizio basate sulla domanda per variare in modo programmatico la quantità di risorse cloud presenti nell'architettura. Ciò ti consente di scalare i componenti nella tua architettura e aumentare il numero di risorse durante i picchi di domanda per mantenere le prestazioni, nonché diminuire la capacità quando la domanda cala in modo da ridurre i costi.

Diagramma che descrive le policy di dimensionamento basato sulla domanda, come il dimensionamento semplice/graduale e il monitoraggio degli obiettivi.

Policy di dimensionamento dinamico basato sulla domanda

  • Dimensionamento semplice/graduale: monitora le metriche e aggiunge/rimuove le istanze secondo i passaggi definiti manualmente dai clienti.

  • Monitoraggio degli obiettivi: meccanismo di controllo simile a un termostato che aggiunge o rimuove automaticamente le istanze per mantenere le metriche in base a un obiettivo definito dal cliente.

Quando prevedi una strategia basata sulla domanda in un progetto, tieni presenti due considerazioni principali. In primo luogo, devi capire con quale velocità è necessario predisporre le nuove risorse. In secondo luogo, devi capire che la dimensione del margine tra domanda e risorse fornite cambierà. Devi prepararti ad affrontare le variazioni nella domanda, nonché le risorse insufficienti.

Fornitura basata sul tempo: una strategia basata sul tempo allinea la capacità delle risorse alla domanda, che è prevedibile o ben definita nel tempo. In genere questa strategia non dipende dai livelli di utilizzo delle risorse. Una strategia basata sul tempo assicura che le risorse siano disponibili nel momento esatto in cui vengono richieste e possano essere fornite senza ritardi dovuti alle procedure di avvio e ai controlli di sistema o di coerenza. Attraverso una strategia basata sul tempo si possono fornire risorse aggiuntive o incrementare la capacità nei periodi più intensi.

Diagramma che descrive le policy di dimensionamento basato sul tempo, come il dimensionamento programmato e predittivo.

Policy di dimensionamento basato sul tempo

Puoi utilizzare il dimensionamento automatico pianificato e predittivo per implementare un approccio basato sul tempo. I carichi di lavoro possono essere programmati per aumentare orizzontalmente in determinati momenti (ad esempio, all'inizio dell'orario di lavoro), garantendo quindi la disponibilità delle risorse all'arrivo degli utenti on demand. Il dimensionamento predittivo utilizza modelli per aumentare orizzontalmente, mentre il dimensionamento pianificato utilizza tempi predefiniti per aumentare orizzontalmente. È inoltre possibile utilizzare la strategia di selezione del tipo di istanza (ABS) basata sugli attributi nei gruppi di Auto Scaling, che consente di esprimere i requisiti dell'istanza sotto forma di un insieme di attributi, come vCPU, memoria e archiviazione. Ciò consente inoltre di utilizzare automaticamente i tipi di istanze di nuova generazione quando vengono rilasciati e di accedere a una gamma più ampia di capacità con le istanze Amazon EC2 Spot. Amazon EC2 Fleet e Amazon EC2 Auto Scaling selezionano e avviano le istanze che soddisfano gli attributi specificati, eliminando la necessità di selezionare manualmente i tipi di istanza.

Puoi anche sfruttare e fornire AWS APIsSDKse AWS CloudFormationdisattivare automaticamente interi ambienti quando ne hai bisogno. Questa strategia risulta particolarmente adatta per gli ambienti di sviluppo o di prova che operano solo in determinati orari di lavoro o periodi di tempo. È possibile utilizzarlo APIs per scalare le dimensioni delle risorse all'interno di un ambiente (scalabilità verticale). Ad esempio, potresti aumentare verticalmente un carico di lavoro di produzione modificando la dimensione o la classe dell'istanza. Ciò è possibile interrompendo e avviando l'istanza e selezionando una dimensione o classe diversa. Questa tecnica può essere applicata anche ad altre risorse, come Amazon EBS Elastic Volumes, che possono essere modificate per aumentare le dimensioni, regolare le prestazioni (IOPS) o cambiare il tipo di volume durante l'uso.

Quando prevedi una strategia basata sul tempo in un progetto, tieni presenti due considerazioni principali. In primo luogo, che livello di coerenza presenta il modello di utilizzo? In secondo luogo, qual è l'impatto se il modello cambia? Puoi migliorare l'accuratezza delle previsioni monitorando i tuoi carichi di lavoro e utilizzando la business intelligence. Se si notano cambiamenti significativi nel modello di utilizzo, si possono modificare i tempi per assicurarti che la copertura sia fornita.

Passaggi dell'implementazione

  • Configura il dimensionamento pianificato: per le variazioni prevedibili della domanda, il dimensionamento basato sul tempo può fornire il numero corretto di risorse in modo tempestivo. È utile anche se la creazione e la configurazione delle risorse non avvengono in maniera sufficientemente rapida per rispondere alle modifiche on demand. Utilizzando l'analisi del carico di lavoro, configura il dimensionamento pianificato utilizzando AWS Auto Scaling. Per configurare la pianificazione basata sul tempo, puoi utilizzare la scalabilità predittiva della scalabilità pianificata per aumentare in anticipo il numero di istanze Amazon EC2 nei tuoi gruppi di Auto Scaling in base alle variazioni di carico previste o prevedibili.

  • Configura la scalabilità predittiva: la scalabilità predittiva ti consente di aumentare il numero di EC2 istanze Amazon nel tuo gruppo Auto Scaling in anticipo rispetto agli schemi giornalieri e settimanali dei flussi di traffico. Se si hanno picchi di traffico regolari e applicazioni che richiedono molto tempo per avviarsi, si dovrebbe prendere in considerazione l'utilizzo del dimensionamento predittivo. Il dimensionamento predittivo può aiutare a scalare più velocemente inizializzando la capacità prima del carico previsto rispetto al solo dimensionamento dinamico, che è di natura reattiva. Ad esempio, se gli utenti iniziano a utilizzare il carico di lavoro all'inizio dell'orario di lavoro e non lo utilizzano dopo l'orario di lavoro, il dimensionamento predittivo può aggiungere capacità prima dell'orario di lavoro, eliminando i ritardi del dimensionamento dinamico per reagire alle variazioni del traffico.

  • Configura il dimensionamento automatico dinamico: per configurare il dimensionamento in base ai parametri del carico di lavoro attivi, utilizza Auto Scaling. Utilizza l'analisi e configura Auto Scaling per l'avvio sui livelli di risorse corretti e assicurati che il carico di lavoro si riduca orizzontalmente nel tempo richiesto. È possibile avviare e scalare automaticamente un parco di istanze on demand e istanze spot all'interno di un singolo gruppo con un singolo gruppo Auto Scaling. Oltre a ricevere sconti per l'utilizzo di Istanze Spot, è possibile utilizzare Istanze riservate o Savings Plan per ricevere tariffe scontate sul normale prezzo delle istanze on demand. Tutti questi fattori combinati ti aiutano a ottimizzare i risparmi sui costi per EC2 le istanze Amazon e ti aiutano a ottenere la scalabilità e le prestazioni desiderate per la tua applicazione.

Risorse

Documenti correlati:

Video correlati:

Esempi correlati:

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.