View a markdown version of this page

PERF02-BP05 Dimensionamento dinamico delle risorse di elaborazione - Framework AWS Well-Architected

PERF02-BP05 Dimensionamento dinamico delle risorse di elaborazione

Sfrutta l'elasticità del cloud per dimensionare dinamicamente le risorse di elaborazione per soddisfare le tue esigenze ed evitare un provisioning eccessivo o insufficiente per il tuo carico di lavoro.

Anti-pattern comuni:

  • Risposta agli allarmi aumentando manualmente la capacità.

  • Utilizzi le stesse linee guida per il dimensionamento (generalmente infrastruttura statica) di quelle on-premise.

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

Vantaggi dell'adozione di questa best practice: La configurazione e il test dell'elasticità delle risorse di elaborazione possono aiutarti a risparmiare denaro, mantenere i benchmark delle prestazioni e migliorare l'affidabilità al variare del traffico.

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

Guida all'implementazione

AWS offre la flessibilità necessaria per dimensionare le risorse in modo dinamico attraverso una varietà di meccanismi di dimensionamento per soddisfare le variazioni della domanda. In combinazione con i parametri relativi all'elaborazione, il dimensionamento dinamico consente ai carichi di lavoro di rispondere automaticamente alle modifiche e utilizzare il set ottimale di risorse di elaborazione per raggiungere l'obiettivo.

Puoi adottare varie strategie di approccio per associare l'offerta di risorse alla domanda.

  • Approccio al tracciamento degli obiettivi: monitora il parametro di dimensionamento e aumenta o diminuisci automaticamente la capacità in base alle esigenze.

  • Dimensionamento predittivo: dimensiona in previsione delle tendenze giornaliere e settimanali.

  • Approccio basato sulla pianificazione: imposta il tuo programma di dimensionamento in base alle variazioni di carico prevedibili.

  • Scalabilità del servizio: scegli i servizi (come quelli serverless) che si dimensionano automaticamente per progettazione.

Assicurati che le distribuzioni dei carichi di lavoro siano in grado di gestire eventi di dimensionamento.

Passaggi dell'implementazione

  • Istanze di elaborazione, container e funzioni forniscono tutti meccanismi di elasticità, in combinazione con il dimensionamento automatico o sotto forma di funzionalità del servizio. Ecco alcuni esempi di meccanismi di dimensionamento automatico:

    Meccanismo di scalabilità automatica Dove usare
    Amazon EC2 Auto Scaling Per assicurarti di avere il numero corretto di Amazon EC2 istanze disponibili per gestire il carico utente per la tua applicazione.
    Application Auto Scaling per dimensionare automaticamente le risorse per servizi AWS diversi da Amazon EC2, ad esempio AWS Lambda funzioni o Amazon Elastic Container Service (Amazon ECS) servizi.
    Kubernetes Cluster Autoscaler/Karpenter Per dimensionare automaticamente i cluster Kubernetes.
  • Si parla spesso di dimensionamento con servizi di elaborazione come le istanze Amazon EC2 o le funzioni AWS Lambda. Assicurati di considerare anche la configurazione di servizi non di elaborazione come AWS Glue per soddisfare la domanda.

  • Verifica che i parametri per il dimensionamento corrispondano alle caratteristiche del carico di lavoro da implementare. Se distribuisci un'applicazione di transcodifica video, è previsto il 100% di utilizzo della CPU e non deve essere il parametro principale. Utilizza la profondità della coda dei processi di transcodifica. Puoi utilizzare una metrica personalizzata per la tua politica di scalabilità, se necessario. Per scegliere la metrica corretta, consulta le linee guida seguenti per Amazon EC2:

    • La metrica deve essere una metrica di utilizzo valida e descrivere il livello di impiego di un'istanza.

    • Il valore della metrica deve aumentare o diminuire proporzionalmente in base al numero di istanze nel gruppo con Auto Scaling.

  • Assicurati di utilizzare il dimensionamento dinamico invece del dimensionamento manuale per il gruppo con Auto Scaling in uso. È consigliabile utilizzare le policy di dimensionamento del monitoraggio degli obiettivi nel dimensionamento dinamico.

  • Verifica che le implementazioni dei carichi di lavoro siano in grado di gestire entrambi gli eventi di dimensionamento (aumento e riduzione). Ad esempio, puoi usare la cronologia delle attività per verificare un'attività di dimensionamento per un gruppo Auto Scaling.

  • Analizza il tuo carico di lavoro per individuare modelli prevedibili e dimensionare le tue risorse in modo proattivo, anticipando variazioni nella domanda previste e pianificate. Con il dimensionamento predittivo puoi eliminare la necessità di offrire capacità in eccedenza. Per ulteriori informazioni, consulta Dimensionamento predittivo con Amazon EC2 Auto Scaling.

Risorse

Documenti correlati:

Video correlati:

Esempi correlati: