PERF02-BP05 Utilizzo dell'elasticità disponibile delle risorse - Framework AWS Well-Architected

PERF02-BP05 Utilizzo dell'elasticità disponibile delle risorse

Il cloud offre la flessibilità necessaria per espandere o ridurre le risorse in modo dinamico attraverso una serie di meccanismi per soddisfare il mutare della domanda. Attraverso la combinazione di questa elasticità con metriche di calcolo, un carico di lavoro può rispondere automaticamente alle variazioni in modo da usare esclusivamente le risorse necessarie.

Anti-pattern comuni:

  • Provisioning in eccesso per affrontare possibili picchi.

  • Risposta agli allarmi aumentando manualmente la capacità.

  • Aumento della capacità senza tenere conto dei tempi di provisioning.

  • Mantenimento della maggiore capacità dopo un evento di dimensionamento, senza ripristinare quella originale.

  • Monitoraggio di metriche che non riflettono direttamente gli effettivi requisiti del carico di lavoro.

Vantaggi dell'adozione di questa best practice: la domanda può essere fissa, variabile, basata su un modello o caratterizzata da picchi. La corrispondenza tra offerta e domanda assicura il costo minore per un carico di lavoro. Il monitoraggio, la verifica e la configurazione dell'elasticità del carico di lavoro permettono di ottimizzare le prestazioni, risparmiare denaro e migliorare l'affidabilità in base al mutare delle esigenze di utilizzo. Benché sia possibile adottare un approccio manuale per raggiungere questi obiettivi, su scala più vasta risulta poco pratico. Un approccio automatico e basato su metriche permette alle risorse di soddisfare le esigenze in qualsiasi momento.

Livello di rischio associato alla mancata adozione di questa best practice: medio

Guida all'implementazione

L'automazione basata su metriche deve essere usata per usufruire dell'elasticità, con l'obiettivo di far corrispondere le risorse fornite con quelle richieste dal carico di lavoro. Ad esempio, puoi usare metriche Amazon CloudWatch per monitorare le risorse o metriche Amazon CloudWatch per i gruppi con Auto Scaling.

Se combinato con parametri relativi all'elaborazione, un carico di lavoro può rispondere automaticamente a questi cambiamenti e utilizzare la gamma di risorse più opportuna per raggiungere il suo obiettivo. Devi anche pianificare i tempi di provisioning e i possibili errori delle risorse.

Istanze, container e funzioni forniscono meccanismi per l'elasticità, come funzionalità del servizio, sotto forma di Application Auto Scaling o in combinazione con Amazon EC2 Auto Scaling. Usa l'elasticità nella tua architettura per verificare che la capacità sia sufficiente per soddisfare i requisiti di prestazioni a un'ampia gamma di livelli di utilizzo.

Convalida le metriche per aumentare o ridurre risorse elastiche rispetto al tipo di carico di lavoro implementato. Ad esempio, se implementi un'applicazione di transcodifica di video, è previsto il 100% di utilizzo della CPU e questa non deve essere la metrica principale. In alternativa, puoi misurare la profondità della coda dei processi di transcodifica in attesa di dimensionare i tipi di istanze.

Le implementazioni dei carichi di lavoro devono gestire eventi di aumento e riduzione delle risorse. Ridimensionare in modo sicuro i componenti del carico di lavoro è fondamentale quanto ricalibrare le risorse quando richiesto dalla domanda.

Crea scenari di test per eventi di dimensionamento in modo da verificare che il carico di lavoro si comporti come previsto.

Passaggi dell'implementazione

Risorse

Best practice correlate:

Documenti correlati:

Video correlati:

Esempi correlati: