Cos'è un'istanza nel cloud computing?
Un'istanza nel cloud computing è una risorsa server fornita da servizi cloud di terze parti. Sebbene sia possibile gestire e mantenere le risorse fisiche del server on-premise, è costoso e inefficace. I provider di servizi cloud mantengono l'hardware nei loro data center e offrono accesso virtuale alle risorse di calcolo sotto forma di istanza. È possibile utilizzare l'istanza cloud per eseguire carichi di lavoro a uso intensivo del calcolo come container, database, microservizi e macchine virtuali.
Perché le istanze cloud sono importanti?
Un'istanza cloud consente agli sviluppatori di software di dimensionare oltre i confini fisici tradizionali. A differenza dei server fisici, gli sviluppatori non devono preoccuparsi dell'hardware sottostante quando implementano carichi di lavoro su un'istanza cloud. Le istanze cloud hanno due vantaggi principali.
Scalabilità
Gli sviluppatori dimensionano le risorse di calcolo in un'istanza cloud in base ai requisiti del carico di lavoro. Ad esempio, gli sviluppatori di software implementano un'applicazione su un'istanza. Man mano che l'app acquisisce più utenti, il traffico aumenta e rallenta i tempi di risposta. Gli sviluppatori possono dimensionare orizzontalmente le risorse cloud aumentando le risorse di CPU, memoria, archiviazione e rete per l'istanza specifica.
Tolleranza ai guasti
Le organizzazioni creano ridondanza utilizzando più istanze duplicate per il backup. Tali istanze sono particolarmente utili per la gestione di carichi di lavoro a uso intensivo di memoria come l'elaborazione dei dati. Ad esempio, un'applicazione può essere comunque eseguita su altre istanze negli Stati Uniti e in Asia se un'istanza cloud ospitata in Europa riporta un errore.
Quali tipi di carichi di lavoro è possibile eseguire su un'istanza cloud?
Elevato utilizzo del calcolo
È possibile eseguire carichi di lavoro di calcolo ad elevate prestazioni su istanze, ad esempio analisi distribuite, algoritmi di machine learning (ML), elaborazione in batch, pubblicazione di annunci, codifica video, modellazione scientifica e applicazioni di gioco multi-player scalabili.
Elevato utilizzo della memoria
Le istanze sono utili per l'esecuzione di carichi di lavoro a elevato utilizzo della memoria come l'importazione dei dati in tempo reale, cache in memoria distribuite, analisi dei big data, applicazioni aziendali a elevato utilizzo di memoria e database ad alte prestazioni.
Elevato utilizzo della grafica
Le applicazioni che eseguono rendering grafici richiedono elevate capacità di elaborazione e archiviazione. È possibile eseguire applicazioni di realtà virtuale, rendering 3D, animazione, visione artificiale, streaming video e altri carichi di lavoro grafici su un'istanza cloud.
Come funzionano le istanze cloud?
Un'istanza cloud astrae l'infrastruttura di calcolo fisica utilizzando la tecnologia delle macchine virtuali. È come avere la propria macchina server nel cloud. Fondamentalmente, si crea e si gestisce la propria istanza di server virtuale nell'ambiente di cloud computing. È possibile configurare questo server cloud per soddisfare le esigenze di memoria, elaborazione grafica, CPU e altri requisiti.
I passaggi per creare una nuova istanza sono i seguenti:
- Si utilizza un'interfaccia visiva o chiamate API per creare istanze in modo programmatico
- Si specificano le risorse necessarie o si utilizzano tipi di istanza preesistenti definiti dal provider di servizi cloud
- È quindi possibile ospitare il proprio sistema operativo e altre applicazioni software su un'istanza
Il fornitore di servizi cloud in genere addebita solo le risorse effettivamente utilizzate. È possibile creare e distruggere tutte le istanze desiderate. Ad esempio, è possibile utilizzare Amazon Machine Images (AMI) per configurare e avviare istanze cloud su AWS.
Qual è il ciclo di vita dell'istanza?
Gli sviluppatori utilizzano una serie di passaggi per configurare, eseguire, gestire e arrestare un'istanza. Le fasi seguenti descrivono il ciclo di vita di un'istanza.
Provisioning
Provisioning di un'istanza significa impostare le risorse di calcolo richieste dall'istanza. Quando gli sviluppatori avviano un'istanza con provisioning, l'istanza entra in una fase in sospeso.
In esecuzione
In questa fase, l'istanza viene implementate ed è attiva nel cloud. Gli sviluppatori possono implementare carichi di lavoro come applicazioni containerizzate su istanze in esecuzione. I costi vengono fatturati nel momento in cui un'istanza inizia a funzionare.
In fase di arresto
Gli sviluppatori potrebbero arrestare un'istanza per risolvere i problemi che interessano i carichi di lavoro in esecuzione sull'istanza stessa. Quando arrestano un'istanza, questa entra nella fase di arresto prima di essere completamente bloccata. Gli sviluppatori possono modificare l'impostazione dell'istanza quando viene arrestata.
Terminata
Gli sviluppatori possono arrestare un'istanza quando non è più in uso. Arrestando un'istanza, la piattaforma cloud si prepara a terminare l'istanza e a rimuovere i dati corrispondenti nel volume dell'archivio dell'istanza. Il volume dell'archivio dell'istanza è un archivio temporaneo che risiede sullo stesso computer dell'istanza.
Cos'è un'istanza prerilasciabile?
Un'istanza prerilasciabile è un server virtuale che utilizza risorse di calcolo di riserva e non riservate. Le risorse di calcolo di riserva e non riservate consentono di terminare l'istanza prerilasciabile dopo un determinato periodo di tempo o se l'infrastruttura cloud riassegna le risorse allocate. Gli sviluppatori utilizzano istanze prerilasciabili per attività non fondamentali, come l'elaborazione in batch, l'analisi dei dati o i test.
Cos'è un gruppo di istanze?
Un gruppo di istanze è una raccolta di molte istanze che condividono la stessa configurazione. Gli sviluppatori utilizzano i gruppi di istanze per impostare facilmente policy e regole uniformi su più istanze. Tutte le istanze di un gruppo di istanze attraversano contemporaneamente lo stesso ciclo di vita.
Istanza singola e istanza multipla
L'istanza singola descrive una configurazione dell'infrastruttura cloud in cui viene creata e allocata all'utente una sola istanza delle risorse di calcolo. Istanza multipla, invece, è un termine utilizzato per più istanze identiche che vengono eseguite in parallelo. In una configurazione a più istanze, ogni istanza ha le proprie risorse di calcolo.
Tenant singolo e multi-tenant
Tenant singolo significa che l'infrastruttura cloud è esclusiva per un utente. Questa situazione è comune su un server on-premise, in cui l'organizzazione potrebbe eseguire più carichi di lavoro su un singolo computer. Una configurazione multi-tenant, invece, condivide l'infrastruttura cloud tra più utenti. Ciò consente loro di dimensionare i carichi di lavoro sul cloud a un costo inferiore.
Cos'è una macchina virtuale?
Una macchina virtuale è un computer presente nell'ambiente virtuale. Le macchine virtuali utilizzano le risorse di elaborazione disponibili nel computer fisico. Tuttavia, tali risorse di elaborazione, come la potenza di elaborazione e la memoria, non sono sotto forma di hardware fisico. Vengono invece fornite e gestite come codice all'interno del computer fisico.
Istanza e macchina virtuale
È possibile eseguire più macchine virtuali su un singolo computer, ma quando le macchine virtuali vengono eseguite nell'ambiente cloud, sono note come istanze. L'esecuzione di macchine virtuali nel cloud consente alle organizzazioni di trarre vantaggio dall'efficacia dei costi di condivisione e dimensionamento delle risorse.
Quali sono i tipi di istanza su AWS?
AWS Elastic Compute Cloud (Amazon EC2) consente agli sviluppatori di creare app scalabili nell'ambiente cloud. Amazon EC2 offre vari tipi di istanze ottimizzate per diversi carichi di lavoro.
Istanza per uso generico
Un tipo di istanza per uso generico è ideale per le applicazioni che richiedono una quota uguale di potenza di elaborazione, memoria e risorse di rete. Ad esempio, le organizzazioni utilizzano un'istanza per uso generico per i server Web.
Istanza ottimizzata per il calcolo
Le istanze ottimizzate per il calcolo sono adatte per applicazioni a elaborazione intensiva che richiedono un'elevata potenza di calcolo. Ad esempio, gli sviluppatori implementano server di gioco, modellazione scientifica e carichi di lavoro di transcodifica multimediale su istanze ottimizzate per il calcolo.
Istanza di calcolo accelerata
Le istanze di calcolo accelerata forniscono acceleratori hardware e sono adatte per carichi di lavoro analitici o a uso intensivo di grafica. Ad esempio, gli sviluppatori creano e implementano applicazioni di machine learning (ML) su un'istanza di calcolo accelerata.
Istanza ottimizzata per la memoria
Le istanze ottimizzate per la memoria consentono agli sviluppatori di implementare applicazioni a uso intensivo di memoria in AWS senza compromettere le prestazioni. Ad esempio, gli sviluppatori utilizzano istanze ottimizzate per la memoria per l'analisi dei big data.
Istanza ottimizzata per l'archiviazione
Le istanze ottimizzate per l'archiviazione includono spazio di archiviazione persistente per scrivere e recuperare informazioni dai database a una velocità molto elevata. Ad esempio, gli sviluppatori creano funzioni dei motori di ricerca con un'istanza ottimizzata per l'archiviazione.
Inizia subito a utilizzare le istanze su Amazon EC2 creando un account AWS gratuito oggi stesso.
Fasi successive delle istanze nel cloud AWS
Ottieni accesso istantaneo al piano gratuito di AWS.