Panoramica della policy sulla scalabilità automatica
Per utilizzare il dimensionamento automatico, è necessario definire una policy di dimensionamento che aggiunge e rimuove il numero di istanze per la variante di produzione in risposta ai carichi di lavoro effettivi.
Per scalare automaticamente in base alle variazioni del carico di lavoro, sono disponibili due opzioni: policy di dimensionamento con monitoraggio delle destinazioni e policy di dimensionamento per fasi.
Nella maggior parte dei casi, è consigliato l’utilizzo di policy di dimensionamento con monitoraggio delle destinazioni. Con il monitoraggio delle destinazioni, scegli una metrica e un valore di destinazione di Amazon CloudWatch. Il dimensionamento automatico crea e gestisce gli allarmi di CloudWatch per la policy di dimensionamento e calcola le regolazioni di dimensionamento in base alla metrica e al valore di destinazione. La policy aggiunge e rimuove il numero di istanze in base alle esigenze, per mantenere la metrica in corrispondenza del valore di destinazione specificato o vicino a esso. Ad esempio, una policy di dimensionamento che utilizza il parametro predefinito InvocationsPerInstance con un valore target di 70 può mantenere InvocationsPerInstance a o vicino a 70. Per ulteriori informazioni, consulta Policy di dimensionamento del monitoraggio di target nella Guida per l'utente di Application Auto Scaling.
Puoi utilizzare il dimensionamento per fasi quando richiedi una configurazione avanzata, ad esempio specificando quante istanze distribuire in quali condizioni. Ad esempio, è necessario utilizzare il dimensionamento per fasi per consentire a un endpoint di aumentare orizzontalmente partendo da zero istanze attive. Per una panoramica delle policy di dimensionamento per fasi, consulta Policy di dimensionamento per fasi nella Guida per l’utente di Application Auto Scaling.
Per creare una policy di dimensionamento con monitoraggio degli obiettivi, è necessario specificare quanto segue:
-
Metrica - La metrica CloudWatch da monitorare, ad esempio il numero medio di invocazioni per istanza.
-
Valore di destinazione - Il valore di destinazione per la metrica, ad esempio 70 invocazioni per istanza al minuto.
Puoi creare policy di dimensionamento con monitoraggio degli obiettivi sia con parametri predefiniti che personalizzati. Una metrica predefinita viene definita in un’enumerazione in modo che sia possibile specificarla per nome nel codice o utilizzarla nella console SageMaker AI. In alternativa, è possibile utilizzare l’AWS CLI o l’API Application Auto Scaling per applicare una policy di dimensionamento con monitoraggio delle destinazioni in base a una metrica predefinita o personalizzata.
Le attività di dimensionamento vengono eseguite con tempi di raffreddamento intermedi per evitare rapide fluttuazioni della capacità. Facoltativamente, puoi configurare i tempi di raffreddamento per la tua policy di dimensionamento.
Per ulteriori informazioni sui concetti chiave del dimensionamento automatico, è possibile consultare la seguente sezione.
Dimensionamento basato su pianificazione
È anche possibile creare azioni pianificate per eseguire attività di dimensionamento a orari specifici. È possibile creare operazioni pianificate sia una tantum che ricorrenti. Dopo l’esecuzione di un’azione pianificata, la policy di dimensionamento può continuare a prendere decisioni sull’opportunità di scalare dinamicamente in base alle modifiche del carico di lavoro. Il dimensionamento pianificato può essere gestito solo dall’AWS CLI o dall’API Application Auto Scaling. Per ulteriori informazioni, consulta Dimensionamento pianificato nella Guida per l'utente di Dimensionamento automatico delle applicazioni.
Limiti di dimensionamento minimo e massimo
In fase di configurazione del dimensionamento automatico, è necessario specificare i limiti di dimensionamento prima di creare una policy. I limiti per i valori minimo e massimo vengono impostati separatamente.
Il valore massimo deve essere almeno 1 e uguale o minore del valore specificato per il valore massimo.
Il valore massimo deve essere maggiore o uguale al valore specificato per il valore minimo. Il dimensionamento automatico di SageMaker AI non applica un limite per questo valore.
Per determinare i limiti di dimensionamento necessari per il traffico tipico, testa la configurazione del dimensionamento automatico con il tasso di traffico previsto verso il modello.
Se il traffico di una variante diventa zero, SageMaker AI si riduce orizzontalmente in modo automatico al numero minimo di istanze specificato. In questo caso, SageMaker AI emette metriche con un valore pari a zero.
Esistono tre opzioni per specificare le capacità minima e massima:
-
Utilizza la console per aggiornare le impostazioni Conteggio istanze minimo e Conteggio istanze massimo.
-
Utilizza l’AWS CLI e includi le opzioni
--min-capacitye--max-capacityquando esegui il comando register-scalable-target. -
Chiama l’API RegisterScalableTarget e specifica i parametri
MinCapacityeMaxCapacity.
Suggerimento
È possibile aumentare orizzontalmente in modo manuale incrementando il valore minimo oppure ridurre orizzontalmente in modo manuale diminuendo il valore massimo.
Periodo di attesa
Un tempo di raffreddamento viene utilizzato per proteggersi dal sovradimensionamento quando il modello viene ridotto orizzontalmente (riduzione della capacità) o aumentato orizzontalmente (aumento della capacità). A tale scopo, rallenta le successive attività di dimensionamento fino alla scadenza del periodo. Nello specifico, blocca l’eliminazione delle istanze per le richieste di riduzione orizzontale e limita la creazione di istanze per le richieste di aumento orizzontale. Per ulteriori informazioni, consulta Definizione dei tempi di raffreddamento nella Guida per l’utente di Application Auto Scaling.
Configura il tempo di raffreddamento nella policy di dimensionamento.
Se non specifichi un tempo di raffreddamento per ridurre orizzontalmente o aumentare orizzontalmente, la policy di dimensionamento utilizza il valore predefinito, pari a 300 secondi per ognuno.
Se le istanze vengono aggiunte o rimosse troppo rapidamente quando testi la configurazione di dimensionamento, prova ad aumentare questo valore. Puoi vedere questo comportamento se il traffico verso il tuo modello ha molti picchi oppure se hai più policy di dimensionamento definite per una variante.
Se le istanze non vengono aggiunte abbastanza rapidamente per affrontare un aumento del traffico, considera la diminuzione di questo valore.
Risorse correlate
Per ulteriori informazioni sul dimensionamento automatico della configurazione, consulta le risorse seguenti:
-
La sezione application-autoscaling di Riferimento ai comandi AWS CLI.
Nota
SageMaker AI ha recentemente introdotto nuove funzionalità di inferenza basate su endpoint di inferenza in tempo reale. Crea un endpoint SageMaker AI con una configurazione dell’endpoint che definisce il tipo di istanza e il numero iniziale di istanze per l’endpoint. Quindi, crea un componente di inferenza, ovvero un oggetto di hosting SageMaker AI che è possibile utilizzare per implementare un modello in un endpoint. Per informazioni sul dimensionamento dei componenti di inferenza, vedi SageMaker AI adds new inference capabilities to help reduce foundation model deployment costs and latency