Home topics Scalabilità automatica Cos'è l'auto-scaling?
Esplora l'ottimizzazione dei costi del cloud
Illustrazione che rappresenta l'infrastruttura cloud ibrida

Data di pubblicazione: 12 dicembre 2023
Autori: Gita Jackson, Michael Goodwin

Cos'è l'auto-scaling?

L'auto-scaling, talvolta denominato "scaling automatico", è una funzione di cloud computing che alloca automaticamente le risorse computazionali in base alla domanda del sistema. 

L'auto-scaling viene utilizzato per garantire che le applicazioni dispongano delle risorse necessarie per mantenere una disponibilità coerente e raggiungere gli obiettivi prestazionali, nonché per promuovere l'uso efficiente delle risorse cloud e ridurre al minimo i costi del cloud. Secondo un white paper del 2023 di Infosys, le organizzazioni che migrano al cloud sprecano circa il 32% dei costi del cloud.1 Grazie alla sua attenzione all'utilizzo efficiente delle risorse, l'auto-scaling è un componente utile per una pratica FinOps di successo.

Quando le organizzazioni configurano l'infrastruttura cloud, forniscono le risorse in base a una "linea di base" di esigenze di risorse di elaborazione, storage e rete. Ma la domanda fluttua, ad esempio, con picchi o cali nel traffico di rete o nell'utilizzo delle applicazioni. Le funzioni di auto-scaling consentono di scalare le risorse per soddisfare la domanda in tempo reale in base a metriche specifiche come l'utilizzo della CPU o la disponibilità della larghezza di banda, senza l'intervento umano.

L'auto-scaling può essere utilizzato per ottimizzare l'allocazione delle risorse attraverso una varietà di mezzi, come lo scaling predittivo, che utilizza dati storici per prevedere la domanda futura, o lo scaling dinamico, che reagisce alle esigenze di risorse in tempo reale, come determinato dalle politiche di auto-scaling di un'organizzazione. Le politiche di auto-scaling automatizzano i cicli di vita delle istanze di cloud computing, avviando e terminando le virtual machine in base alle esigenze per soddisfare la domanda di risorse. L'auto-scaling viene spesso utilizzato in tandem con bilanciamento del carico elastico per sfruttare appieno le risorse cloud disponibili.

Esplora la demo interattiva di IBM Turbonomic

Riduci la spesa per il cloud preservando al contempo le prestazioni delle applicazioni con strumenti automatizzabili di ottimizzazione dei costi del cloud.

Contenuti correlati

Iscriviti alla newsletter IBM

Bilanciamento del carico e auto-scaling

Sebbene l'auto-scaling sia correlato al bilanciamento del carico, non sono esattamente la stessa cosa. Entrambi questi processi influiscono sull'allocazione delle risorse di back-end e vengono utilizzati per ottimizzare le prestazioni ed evitare l'overprovisioning. Vengono spesso utilizzati insieme.

I bilanciatori di carico distribuiscono il traffico in entrata su più server per ridurre il carico su qualsiasi particolare server. I bilanciatori di carico spesso offrono funzioni come le verifiche dell'integrità, che aiutano a dirigere il traffico lontano dalle istanze non sane e verso quelle sane. Il bilanciamento del carico di traffico aiuta a migliorare le prestazioni delle applicazioni in un ambiente cloud.

L'auto-scaling, al contrario, regola la capacità del sistema in base alla domanda per mantenere prestazioni costanti ed evitare un provisioning eccessivo delle risorse (ovvero utilizzando solo ciò che è necessario). L'auto-scaling aggiunge nuovi server o istanze di calcolo (o li interrompe) in base alla domanda di risorse e alle politiche di auto-scaling stabilite da un'organizzazione.

Come funziona l'auto-scaling

La maggior parte dei fornitori di cloud, come IBM Cloud, Amazon Web Services (a volte chiamato AWS Cloud), Microsoft Azure e Oracle Cloud Infrastructure offrono servizi di auto-scaling sulle loro piattaforme cloud. Questi servizi possono aiutare le organizzazioni a configurare politiche di auto-scaling per soddisfare le esigenze e gli obiettivi di cloud computing dell'organizzazione.

I diversi fornitori e le diverse piattaforme offrono funzioni, funzionalità e prezzi diversi, e le organizzazioni avranno risorse diverse a disposizione e casi d'uso diversi, ma in generale l'auto-scaling funziona come segue:

Il processo inizia con una configurazione di avvio, o distribuzione di base, in cui uno o più tipi di istanza vengono distribuiti con una capacità e caratteristiche prestazionali specifiche. Ciò avviene spesso utilizzando le chiamate API e l'infrastructure as code (IaC), un processo che sfrutta il codice per eseguire il provisioning e configurare gli elementi dell'infrastruttura IT in base alle specifiche predefinite.

Le organizzazioni determineranno la capacità desiderata e il tipo di attributi necessari all'istanza in base al workload previsto per tale istanza. Nell'impostare una politica di auto-scaling, le organizzazioni possono fissare obiettivi e soglie per l'uso di elaborazione, storage o rete che, una volta soddisfatti, attivano automaticamente un'azione specifica per soddisfare con maggiore precisione le attuali richieste di risorse. Se lo si desidera, le politiche possono essere configurate in modo che le notifiche vengano inviate ogni volta che viene avviata un'azione di scaling.

Gruppi di auto-scaling

Le organizzazioni possono anche configurare gruppi di istanze che mantengono un numero minimo o massimo di istanze per workload specifici o raggruppare diversi tipi di istanza per gestire diversi tipi di workload. I tipi di istanza includono:2

Istanze di uso generale

I tipi di istanza di uso generale sono progettati per una varietà di workload, inclusi server web, piccoli database e ambienti di sviluppo e test.

Istanze ottimizzate per il calcolo

Queste istanze sono ottimizzate per workload ad alta intensità di calcolo, come il calcolo ad alte prestazioni, l'elaborazione batch e la modellazione scientifica. Queste istanze massimizzano la potenza di calcolo utilizzando GPU e CPU con un numero elevato di core.

Istanze ottimizzate per la memoria

Queste istanze con memoria elevata sono ottimizzate per workload ad uso intensivo di memoria come database ad alte prestazioni, cache in memoria distribuite e trattamento dei dati/analytics di big data in tempo reale.

Istanze ottimizzate per lo storage

Queste istanze sono ottimizzate per workload ad uso intensivo di storage come big data, data warehousing ed elaborazione di log. Sfruttano caching ad alta capacità e unità SSD (Solid-State Drive) per supportare le intense attività di lettura e scrittura dei workload.


I gruppi di auto-scaling con tipi di istanze misti consentono ai team CloudOps e DevOps di soddisfare le richieste di risorse in modo più preciso ed efficiente. Ad esempio, se le esigenze di larghezza di banda sono adeguatamente soddisfatte, ma l'utilizzo della CPU ha superato la soglia stabilita nelle politiche di auto-scaling, le istanze specifiche di calcolo possono essere attivate mentre le istanze dedicate alla gestione del traffico di rete rimangono invariate.

Una volta che i team comprendono la domanda del workload, possono persino creare modelli di configurazione di lancio per le nuove istanze. Questi modelli definiscono il tipo di istanza, i parametri di configurazione e altri criteri per la rotazione di nuove istanze e il loro contributo all'ambiente cloud complessivo. Ciò consente alle organizzazioni di automatizzare completamente i cicli di vita delle virtual machine.

Tipi di auto-scaling

Esistono un paio di tipi diversi di scaling, nonché diversi metodi di auto-scaling:

Scaling orizzontale

Lo scaling orizzontale, o "scalabilità orizzontale", comporta l'aggiunta di più macchine o nodi a un ambiente di cloud computing. È anche possibile scalare, riducendo il numero di nodi nell'ambiente.

Scaling verticale

Lo scaling verticale, o "scalabilità verticale", è il processo di aggiunta di più potenza (RAM, CPU, storage, ad esempio) ai nodi esistenti nell'attuale ambiente di cloud computing.

Le politiche di auto-scaling possono essere predittive, dinamiche o pianificate.

Scaling predittivo

Le politiche di scaling predittive utilizzano l'intelligenza artificiale (AI) e il machine learning per prevedere le esigenze future delle risorse prima che si verifichino in base all'utilizzo storico.

Ad esempio, una politica di auto-scaling predittiva potrebbe identificare la probabilità di un aumento del traffico web per un'azienda di e-commerce prima della stagione degli acquisti natalizi e scalare in base alla politica impostata. Ciò può aiutare a ridurre al minimo in modo proattivo la latenza della rete e i tempi di inattività.

Scalatura dinamica

Le politiche di scaling dinamiche reagiscono alle esigenze di risorse nel momento in cui si verificano, regolando l'allocazione delle risorse in base all'utilizzo in tempo reale. Con una politica di scaling dinamica, le organizzazioni possono inviare più risorse a un particolare nodo o gruppo di auto-scaling o avviare istanze aggiuntive quando viene raggiunta una soglia specifica, come una percentuale di utilizzo della CPU.

Ad esempio, se un'organizzazione sta eseguendo un'applicazione web che consuma risorse significative in base a una pianificazione irregolare, è possibile utilizzare una politica di scaling dinamica per regolare la disponibilità delle risorse in base alle esigenze. Lo scaling dinamico è spesso accompagnato da un periodo di cooldown, in cui le risorse aumentate rimangono disponibili nel caso in cui si verifichino ulteriori picchi di traffico.

Scaling pianificato

Le politiche di auto-scaling pianificate assegnano le risorse in base a una pianificazione predeterminata. Ad esempio, se un'organizzazione sa che la domanda di traffico o di risorse è molto più elevata la sera che al mattino, è possibile impostare una politica di auto-scaling per soddisfare tale domanda.

Benefici dell'auto-scaling

Se implementato in modo efficace, l'auto-scaling può svolgere un ruolo significativo nell'ottimizzazione dell'ambiente di cloud computing di un'organizzazione e ridurre i costi complessivi del cloud.

Stabilendo solide politiche di auto-scaling, le organizzazioni possono ridurre la loro dipendenza dal provisioning manuale e garantire prestazioni di sistema più coerenti.

Riduci al minimo la configurazione manuale dell'infrastruttura

L'auto-scaling consente a un ambiente cloud di reagire in tempo reale alla domanda di risorse senza la necessità di intervento umano. Questo è semplicemente più efficiente dello scaling manuale. Aiuta a ridurre il burnout dei dipendenti, a migliorare la coerenza della configurazione e del provisioning e a liberare tempo per attività più preziose.

Aumenta la scalabilità

L'auto-scaling consente alle organizzazioni di espandere il proprio ambiente e le proprie funzionalità di cloud computing in modo più fluido, senza dover dedicare personale aggiuntivo al monitoraggio e al provisioning delle risorse.

Fornisci prestazioni costanti

Garantendo che un ambiente cloud disponga delle risorse di calcolo, rete e storage necessarie, indipendentemente dall'attività o dalla domanda, l'auto-scaling aiuta a mantenere le prestazioni coerenti e affidabili dei cloud service.

Migliora l'esperienza dell'utente

Prestazioni di rete e app web più coerenti significano un livello di servizio più coerente per l'utente.

Riduci i costi del cloud computing

Quando si affidano al provisioning manuale delle risorse, le organizzazioni spesso effettuano un overprovisioning per precauzione, solo per assicurarsi che le risorse siano disponibili nei momenti di picco della domanda. Utilizzando una piattaforma in grado di scalare automaticamente le risorse di elaborazione, rete e storage per soddisfare la domanda in tempo reale, le organizzazioni possono evitare l'overprovisioning e utilizzare solo ciò di cui hanno bisogno, con conseguente riduzione della bolletta del cloud e maggiore ROI.

Soluzioni correlate
Ottimizzazione dei costi del cloud con IBM Turbonomic

Utilizzando le soluzioni di automazione basata su AI e di ottimizzazione del cloud della piattaforma IBM Turbonomic, è possibile ottimizzare i costi pur continuando a garantire costantemente le prestazioni delle applicazioni (tradizionali e cloud-native). Gli strumenti della piattaforma per la gestione dei costi del cloud funzionano con ambienti di cloud pubblici, privati, multicloud e cloud ibridi e con qualsiasi provider di cloud. 

Esplora l'ottimizzazione dei costi del cloud con IBM Turbonomic Prova Turbonomic gratuitamente

IBM Turbonomic

La piattaforma di ottimizzazione dei costi del cloud ibrido di IBM Turbonomic consente di automatizzare continuamente le azioni critiche in tempo reale che offrono proattivamente un utilizzo più efficiente delle risorse di calcolo, di archiviazione e di rete per le app a ogni livello dello stack. 

Esplora IBM Turbonomic Prova la demo interattiva
Risorse Carhartt: un brand leggendario realizza vendite record durante le festività

Scopri come Carhartt ha utilizzato il software di ottimizzazione dei costi del cloud ibrido IBM Turbonomic per aiutare la sua infrastruttura di cloud ibrido a gestire nuovi picchi drammatici della domanda.

Best practice per la scelta di una soluzione di ottimizzazione del cloud

Leggi questo esclusivo report PeerPaper, con le procedure migliori basate su conoscenze di esperti del settore e le recensioni di utenti verificati di IBM Turbonomic.

AIOps più intelligenti

Metti all'opera l'automazione basata su AI nella tua attività per assicurare prestazioni ottimali delle applicazioni.

Rendere operativa l'automazione FinOps

Leggi questa guida rapida per approfondire una disciplina sempre più in voga: la gestione finanziaria nel cloud delle FinOps.

Panoramica di IBM Turbonomic

Scopri come la gestione delle risorse delle applicazioni porta dall'osservabilità all'azione grazie all'automazione basata su AI.

Documentazione IBM Turbonomic

Esplora la documentazione per tutte le versioni della piattaforma IBM Turbonomic.

Fai il passo successivo

IBM Turbonomic consente di eseguire le applicazioni senza soluzione di continuità, continuo ed economico allo scopo di ottenere prestazioni efficienti delle applicazioni riducendo al contempo i costi.

Scopri Turbonomic Prenota una demo gratuita
Note a piè di pagina

"Cloud cost optimization" (link esterno a ibm.com), Sarika Nandwani, Infosys.com, 2023

"AWS EC2 instance types: Challenges and best practices for hosting your application in AWS", Christopher Graham, 23 agosto 2023