Le migliori pratiche per le dimensioni delle attività di Amazon ECS - Amazon Elastic Container Service

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 migliori pratiche per le dimensioni delle attività di Amazon ECS

Le dimensioni dei contenitori e delle attività sono entrambe essenziali per la scalabilità e la pianificazione della capacità. In Amazon ECS, CPU e memoria sono due parametri di risorse utilizzati per determinare la capacità. La CPU viene misurata in unità di 1/1024 di una vCPU completa (dove 1024 unità equivalgono a 1 vCPU intera). La memoria viene misurata in megabyte. Nella definizione dell'attività, è possibile configurare le prenotazioni e i limiti delle risorse.

Quando configuri una prenotazione, stai impostando la quantità minima di risorse richiesta da un'attività. L'attività riceve almeno la quantità di risorse richieste. L'applicazione potrebbe essere in grado di utilizzare più CPU o memoria rispetto alla prenotazione dichiarata. Tuttavia, ciò è soggetto ai limiti che hai anche dichiarato. L'utilizzo di un importo superiore all'importo della prenotazione è noto come bursting. In Amazon ECS, le prenotazioni sono garantite. Ad esempio, se utilizzi EC2 istanze Amazon per fornire capacità, Amazon ECS non inserisce un'attività su un'istanza in cui la prenotazione non può essere soddisfatta.

Un limite è la quantità massima di unità CPU o memoria che il contenitore o l'attività può utilizzare. Qualsiasi tentativo di utilizzare una quantità di CPU superiore a questo limite comporta un rallentamento. Qualsiasi tentativo di utilizzare più memoria comporta l'interruzione del contenitore.

La scelta di questi valori può essere difficile. Questo perché i valori più adatti all'applicazione dipendono in larga misura dai requisiti di risorse dell'applicazione. Il test di carico dell'applicazione è la chiave per una corretta pianificazione del fabbisogno di risorse e una migliore comprensione dei requisiti dell'applicazione.

Applicazioni stateless

Per le applicazioni stateless con scalabilità orizzontale, ad esempio un'applicazione con sistema di bilanciamento del carico, consigliamo innanzitutto di determinare la quantità di memoria che l'applicazione consuma per soddisfare le richieste. A tale scopo, è possibile utilizzare strumenti tradizionali come ps or o soluzioni di monitoraggio come top Container Insights. CloudWatch

Nel determinare una prenotazione della CPU, considerate come volete scalare l'applicazione per soddisfare i requisiti aziendali. È possibile utilizzare riserve di CPU più piccole, ad esempio 256 unità CPU (o 1/4 vCPU), per scalare orizzontalmente in modo da ridurre al minimo i costi. Tuttavia, potrebbero non scalare abbastanza velocemente per soddisfare i picchi significativi della domanda. È possibile utilizzare prenotazioni di CPU più grandi per scalare più rapidamente e quindi soddisfare più rapidamente i picchi di domanda. Tuttavia, le prenotazioni di CPU più grandi sono più costose.

Altre applicazioni

Per le applicazioni che non sono scalabili orizzontalmente, come Singleton Worker o server di database, la capacità e i costi disponibili rappresentano le considerazioni più importanti. È consigliabile scegliere la quantità di memoria e CPU in base a ciò che i test di carico indicano che è necessario servire il traffico per raggiungere l'obiettivo del livello di servizio. Amazon ECS garantisce che l'applicazione sia collocata su un host con una capacità adeguata.