Cos'è un cloud hosting?
Il “cloud host”, il cui nome completo è “cloud computing host”, rappresenta un servizio di calcolo flessibile fornito grazie alle tecnologie di virtualizzazione e alle piattaforme di cloud computing. Si tratta di una soluzione che abbandona la concezione tradizionale dei server fisici: gli utenti non sono più costretti ad acquistare, mantenere o distribuire hardware fisico, ma possono noleggiare risorse di calcolo, archiviazione e rete in modo dinamico e su richiesta direttamente dal fornitore di servizi cloud tramite Internet. Queste risorse vengono in realtà allocate e integrate dinamicamente da un ampio insieme di server fisici presenti all’interno di data center di grandi dimensioni.
Il cuore di un host cloud risiede nelle sue caratteristiche tipiche legate al “cloud”: la condivisione delle risorse, l’auto-adattamento (elastic scaling), il pagamento in base all’uso effettivo e la possibilità di gestire le risorse in modo autonomo. È possibile modificare la configurazione in qualsiasi momento tramite la console o le API, ad esempio il numero di core CPU, la capacità di memoria, lo spazio disco e la larghezza di banda di rete, e di solito si paga solo per il tempo effettivamente utilizzato e per le risorse consumate. Questo modello riduce notevolmente gli ostacoli tecnici e i costi di gestione per le aziende, in particolare per le startup e i progetti internet.
Dal punto di vista dell’implementazione tecnica, i server cloud vengono eseguiti su server fisici e rappresentano istanze di macchine virtuali create e gestite da un Hypervisor (lo strato di virtualizzazione). Ogni istanza dispone di un proprio sistema operativo, indirizzo IP e spazio di archiviazione, ed è logicamente isolata dalle altre, garantendo così sicurezza e stabilità.
Come valutare le proprie esigenze?
Prima di iniziare a fare acquisti, valutare chiaramente le esigenze del proprio business è un passo fondamentale per evitare sprechi di risorse o problemi di prestazioni. Cercare ciecamente soluzioni con configurazioni elevate non solo aumenta i costi, ma può anche causare problemi a causa di una progettazione architetturale inadeguata.
Business Scenarios and Load Analysis
Innanzitutto, è necessario chiarire il tipo di attività che svolgete. Si tratta di creare un sito web aziendale con un traffico costante, di gestire una piattaforma commerciale che supporta un elevato numero di transazioni in contemporanea, oppure di eseguire compiti intensivi che richiedono calcoli scientifici su larga scala? Ogni scenario presenta esigenze specifiche in termini di potenza di calcolo, operazioni di I/O (input/output) e rete.
Si consiglia di leggere Guida completa all’acquisto di server cloud: dalla spiegazione dei concetti alla selezione dei fornitori e all’implementazione pratica。
Ad esempio, i siti web dedicati alla visualizzazione di contenuti (come blog o siti promozionali) di solito non richiedono prestazioni elevate del processore (CPU) o della memoria, ma necessitano di una rete stabile e una larghezza di banda sufficiente; i servizi di database o cache (come MySQL, Redis), invece, richiedono un processore potente, una memoria veloce e operazioni di I/O su disco a basso ritardo; applicazioni come il streaming di contenuti o il processing video sono invece molto intensive in termini di utilizzo della CPU e di consumo di banda.
In secondo luogo, è necessario analizzare i modelli di carico. Il traffico aziendale è stabile e ciclico (ad esempio, picchi durante il giorno e bassi livelli di attività di notte), oppure sono presenti picchi improvvisi e imprevedibili (come durante eventi di vendita flash o notizie di tendenza)? Questo aspetto influisce direttamente sulla necessità di utilizzare le funzionalità di scalabilità automatica offerte dai server cloud, e sul modo in cui tali funzionalità devono essere impiegate.
Stime sulle prestazioni e sulla configurazione
Basandosi sull’analisi dei scenari, si stima la capacità di calcolo necessaria. Il numero di core del processore non è necessariamente maggiore è meglio: l’importante è che le prestazioni di ciascun core soddisfino le esigenze dell’applicazione. La dimensione della memoria deve essere determinata in base al picco di utilizzo della memoria durante l’esecuzione dell’applicazione, con l’aggiunta di uno spazio di buffer sufficiente.
Si consiglia di leggere Analisi approfondita dei server cloud: una guida completa dai concetti di base all’acquisto fino all’ottimizzazione dei costi。
Per quanto riguarda lo storage, è necessario valutare la capacità totale, le prestazioni di lettura/scrittura (IOPS) e l’affidabilità dei dati. Se le esigenze di I/O sui dischi sono molto elevate, è consigliabile scegliere un’istanza dotata di SSD locali o di dischi cloud ad alte prestazioni. Per quanto riguarda la rete, bisogna considerare il picco della larghezza di banda di rete pubblica, la larghezza di banda di rete privata e il modello di tariffazione del traffico.
Un errore comune è trascurare i tempi di latenza della rete. Se il vostro pubblico principale si trova nella Cina continentale, è fondamentale scegliere un host cloud situato in una regione vicina, poiché ciò può migliorare notevolmente la velocità di accesso ai servizi. Per architetture complesse che richiedono il deployment su più nodi, è inoltre necessario prendere in considerazione la qualità della comunicazione tra le diverse aree disponibili (availability zones).
Confronto tra parametri chiave e opzioni di selezione
Comprendere i parametri dei prodotti offerti dai fornitori di servizi cloud è fondamentale per prendere decisioni informate. Sebbene i prodotti di hosting cloud sul mercato seguano principi simili, ognuno di essi si distingue per le proprie caratteristiche di implementazione e le strategie di pricing.
CPU, memoria e famiglie di specifiche delle istanze
I fornitori di servizi cloud suddividono le risorse di calcolo e memoria in diverse “famiglie di specifiche di istanza”. I tipi più comuni includono:
Universale: fornisce risorse di calcolo, memoria e rete equilibrate, adatte alla maggior parte degli scenari generici, come ad esempio applicazioni Web di medie e piccole dimensioni e ambienti di test e sviluppo.
Ottimizzato per il calcolo: CPU dotate di una frequenza di clock più elevata o di un numero maggiore di core, con un rapporto memoria/CPU relativamente basso, adatte per applicazioni che richiedono un'intensa attività di calcolo, come l'elaborazione in batch, la codifica video e il calcolo scientifico ad alte prestazioni.
Ottimizzazione della memoria: dotato di una capacità di memoria enorme, è adatto per applicazioni che richiedono un utilizzo intensivo della memoria, come ad esempio database ad alte prestazioni (SAP HANA), cache della memoria e analisi dei big data.
Tipo Big Data: di solito è dotato di un'archiviazione locale di grandi dimensioni, adatta per framework di calcolo distribuito come Hadoop e Spark.
GPU accelerato: integra una GPU (unità di elaborazione grafica) e si adatta a scenari come l'addestramento dell'apprendimento profondo, il rendering grafico e la simulazione scientifica.
Si consiglia di leggere Come scegliere e configurare un server cloud: una guida completa dall'inizio alla perfezione.。
Quando si effettua una scelta, è necessario leggere attentamente la descrizione dettagliata della famiglia di prodotti, comprendendo il modello di CPU (ad esempio Intel Xeon, AMD EPYC), l’architettura (ad esempio x86, ARM) e il tipo di memoria (ad esempio DDR4). Questi aspetti sono direttamente correlati alle prestazioni del singolo core e al rapporto tra prestazioni ed efficienza energetica.
Opzioni di archiviazione, rete e larghezza di banda
La memorizzazione rappresenta un altro aspetto fondamentale. Si può suddividere principalmente in le seguenti categorie:
– Dischi rigidi cloud: Forniscono un’archiviazione bloccata persistente che può essere montata e dismontata separatamente, con un’altissima affidabilità dei dati (solitamente garantita al livello di 99,99999991% di disponibilità). In base alle prestazioni, possono essere suddivisi in dischi rigidi cloud SSD ad alte prestazioni e dischi rigidi cloud standard.
Storage locale: è uno spazio di archiviazione temporaneo situato sul server fisico, che offre prestazioni di I/O eccellenti, ma la persistenza dei dati dipende dal ciclo di vita dell'istanza; i dati non vengono conservati dopo il rilascio dell'istanza.
Archiviazione degli oggetti: servizio di archiviazione di dati non strutturati, generalmente accessibile tramite API, adatto per immagini, video e archivi di backup, ma non adatto come disco di sistema o disco di database.
Per quanto riguarda la rete, è necessario prestare attenzione al metodo di fatturazione dell’IP pubblico (fatturazione basata sulla larghezza di banda fissa o sul traffico effettivo), al limite di larghezza di banda della rete interna, nonché al supporto per gli IP pubblici flessibili (che possono essere acquistati separatamente e associati a qualsiasi istanza). Per le attività che richiedono accesso transfrontaliero, è inoltre importante valutare le capacità di accelerazione globale o di rete di qualità offerte dal fornitore di servizi.
Passaggi per l’acquisto pratico e punti da evitare
Una volta acquisite le conoscenze teoriche e le informazioni sui parametri necessari, possiamo passare alla fase pratica della scelta. Seguendo i passaggi indicati di seguito, sarà possibile effettuare una selezione accurata e evitare gli errori più comuni.
Primo passo: Identificare il fornitore di servizi e la regione geografica.
È fondamentale scegliere un provider di servizi cloud di fascia alta che possieda una buona reputazione, tecnologie mature e un servizio di qualità elevata. È necessario valutare il suo mercato di riferimento, la varietà della sua offerta di prodotti, le garanzie fornite dall’SLA (Service Level Agreement), la velocità di risposta del supporto tecnico e l’intera catena di strumenti disponibili per l’utilizzo dei suoi servizi. Inoltre, si può considerare l’adozione di una strategia “multi-cloud” per ridurre il rischio di essere legati a un singolo fornitore.
Il principio fondamentale nella selezione della regione è “l’accessibilità per l’utente”. Distribuire gli istanzi nella regione più vicina ai vostri utenti finali permette di ridurre al minimo i tempi di latenza di rete. È inoltre necessario valutare la possibilità di distribuirli in diverse regioni al fine di garantire la disponibilità del servizio in caso di guasti (disaster recovery) e di creare copie di sicurezza dei dati (backup). È importante tenere presente che le leggi e i regolamenti di alcune aree possono prevedere requisiti specifici per la conservazione dei dati.
Secondo passo: Scegliere la configurazione dell’istanza e l’immagine da utilizzare.
In base alla valutazione delle esigenze precedenti, è necessario filtrare nella console del provider di servizi le famiglie di specifiche di istanza e le configurazioni più adatte. Per scenari iniziali non ancora ben definiti, si consiglia di partire da configurazioni più semplici, poiché uno dei vantaggi dei server cloud è la possibilità di aggiornarle in modo flessibile in seguito (alcune specifiche possono essere aggiornate in tempo reale, altre richiedono invece l’interruzione del servizio).
Anche la scelta dell’immagine del sistema è molto importante. È possibile scegliere un’immagine pubblica (un sistema operativo standardizzato e legale fornito dal fornitore di servizi), un’immagine personalizzata (creata basandosi su un’istanza propria) o un’immagine disponibile sul mercato (che integra applicazioni o ambienti specifici forniti da terze parti). Solitamente, scegliere un’immagine pubblica ufficiale, ottimizzata e sicura, rappresenta un punto di partenza sicuro e affidabile.
Terzo passo: Configurare la rete e i gruppi di sicurezza
Assegnare o creare un Virtual Private Cloud (VPC) per un’istanza rappresenta la scelta ideale per ottenere un ambiente di rete logicamente isolato. All’interno del VPC è possibile configurare sottoreti e pianificare gli indirizzi IP. I gruppi di sicurezza funzionano come firewall virtuali e devono essere impostati seguendo il “principio delle minime autorizzazioni”: ad esempio, i server Web di solito hanno bisogno di avere aperti solo i porti 80 (HTTP) e 443 (HTTPS), mentre i porti SSH (22) o RDP (3389) dovrebbero essere accessibili solo da IP affidabili, per evitare di esporre le risorse a tutta la rete.
Quarto passo: Esaminare il modello di fatturazione e ottimizzare i costi.
I modi di fatturazione per gli host cloud sono diversi e includono principalmente:
Fatturazione a consumo: la fatturazione avviene a seconda dei secondi o delle ore, con un periodo di flessibilità senza vincoli, adatto per esigenze flessibili a breve termine o per ambienti di test.
Abbonamento annuale e mensile: pagamento anticipato a lungo termine, con un prezzo unitario molto inferiore rispetto alla tariffazione a consumo, adatto per ambienti di produzione che richiedono un funzionamento stabile a lungo termine.
Istanziazione preemptiva: sfrutta le risorse libere della piattaforma cloud, con un prezzo molto basso ma che potrebbe essere recuperato dal sistema in qualsiasi momento, ed è adatta per lavori di elaborazione batch che possono essere interrotti.
L’ottimizzazione dei costi è un processo continuo. È necessario esaminare regolarmente l’efficienza nell’utilizzo delle risorse, spegnere o liberare gli istanze inutilizzate; utilizzare strumenti di monitoraggio per individuare i punti di blocco nel funzionamento del sistema, evitando di pagare per risorse che non vengono sfruttate al massimo; per i servizi con un elevato volume di traffico, valutare soluzioni a lungo termine come l’acquisto di coupon per istanze o piani di risparmio economico.
Riassumendo
Scegliere il host cloud appropriato rappresenta un processo sistemico che richiede una valutazione complessiva di aspetti tecnici, aziendali e di costo. Un’ottima scelta inizia con una profonda comprensione dei propri scenari di business e delle caratteristiche del carico di lavoro, il che si traduce in requisiti specifici per parametri fondamentali come calcolo, memoria, archiviazione e rete. Un confronto approfondito tra le varie offerte di servizi forniti dai provider, in termini di specifiche delle risorse, tipi di archiviazione e modelli di fatturazione, è essenziale per garantire un ottimo rapporto qualità-prezzo. Durante l’implementazione pratica, ogni dettaglio della configurazione – dalla regione geografica all’immagine del sistema, fino alla sicurezza della rete – è di fondamentale importanza. Infine, è necessario sviluppare una consapevolezza dei costi e un meccanismo di ottimizzazione continua, al fine di trasformare appieno i vantaggi di flessibilità ed efficienza offerti dal host cloud in una vera forza motrice per lo sviluppo aziendale.
FAQ - Domande frequenti
Quali sono le differenze tra i server cloud e i tradizionali server fisici/VPS?
I server cloud si basano su un ampio pool di risorse e offrono vantaggi fondamentali come l’auto-scalabilità, il pagamento su richiesta e un’elevata disponibilità (solitamente supportati da cluster). È possibile modificare le configurazioni in pochi minuti, e un guasto hardware su un singolo componente ha un impatto estremamente ridotto sul funzionamento del servizio.
I server fisici tradizionali sono dispositivi hardware indipendenti, caratterizzati da prestazioni esclusive e stabili; tuttavia, la loro espansione è difficile (richiede l’aggiornamento dell’hardware), i costi iniziali sono elevati e le operazioni di manutenzione sono complesse. I VPS (Virtual Private Servers), pur essendo anch’essi basati sulla virtualizzazione, sono solitamente distribuiti su un unico server fisico, e quindi presentano una minore isolazione delle risorse e una minore flessibilità rispetto ai server cloud. Anche la loro espansione è limitata.
Dovrei scegliere la tariffa a consumo o quella a pagamento annuale o mensile?
Dipende dalla stabilità e dalla prevedibilità del business. Per i sistemi di produzione che richiedono un funzionamento continuo 24 ore su 24 per lunghi periodi di tempo (ad esempio, più di un anno), il prezzo a consumo mensile è più conveniente, garantendo un costo totale più vantaggioso. Per gli ambienti di sviluppo e test, i progetti temporanei, o i business con fluttuazioni di carico intense o imprevedibili, il pagamento a consumo offre la massima flessibilità, evitando lo spreco di risorse. Una strategia comune è utilizzare il pagamento a consumo mensile per i sistemi di produzione principali e il pagamento a consumo per le risorse flessibili necessarie per gestire i picchi di traffico.
Come garantire la sicurezza dei dati sul cloud hosting?
La sicurezza dei dati richiede una protezione a più livelli. Innanzitutto, è necessario utilizzare la funzione di snapshot dei dischi rigidi cloud per effettuare backup regolari dei dati, che possono essere anche copiati in aree geografiche diverse. In secondo luogo, è importante configurare con attenzione i gruppi di sicurezza e le regole di accesso (ACL) della rete, aprendo soltanto i porti di servizio necessari. A livello del sistema operativo, è essenziale aggiornare tempestivamente i patch di sicurezza, utilizzare password o chiavi robuste per l’accesso e considerare l’installazione di software di protezione per il sistema host. Per i dati sensibili, è fondamentale utilizzare metodi di crittografia durante la memorizzazione e la trasmissione (ad esempio, crittografia dei dischi rigidi cloud o protocolli SSL/TLS). Inoltre, è necessario gestire correttamente i permessi di accesso agli account della piattaforma cloud, abilitare il processo di autenticazione a più fattori e evitare la perdita di informazioni di accesso.
Le prestazioni del server cloud non sono all’altezza delle aspettative. Quali potrebbero essere le cause?
I problemi di prestazioni devono essere analizzati da diversi punti di vista. Inizialmente, utilizzare gli strumenti di monitoraggio cloud per verificare l’utilizzo della CPU, della memoria, dell’I/O del disco e della larghezza di banda di rete, al fine di individuare eventuali colli di bottiglia nei risorse. Successivamente, controllare se il problema sia legato all’applicazione stessa, ad esempio a un codice inefficiente o a query di database non ottimizzate. Inoltre, prendere in considerazione il tipo di disco: se l’applicazione richiede un elevato numero di operazioni di I/O (IOPS) ma utilizza un disco cloud standard, questo potrebbe rappresentare un fattore limitante per le prestazioni. La latenza di rete può influenzare negativamente l’esperienza d’uso; quindi, verificare se la regione in cui si trova l’istanza corrisponde alla posizione degli utenti. Infine, se le istanze presenti sullo stesso host fisico competono eccessivamente per le risorse, ciò può causare fluttuazioni nelle prestazioni (noto come problema dei “vicini rumorosi”); in questo caso, è possibile provare a riavviare l’istanza o passare a un tipo di istanza più performante.
Il prossimo passo, cosa dovremo fare dopo?
Per una lettura approfondita e conoscenza pratica
I seguenti contenuti sono correlati all'argomento di questo articolo e sono adatti per una lettura approfondita. È consigliabile iniziare con l'articolo più vicino al tuo problema attuale, per poi passare gradualmente agli argomenti correlati, il che di solito dà risultati migliori.
- Analisi completa dei server VPS: dall’approccio iniziale all’esperto, per costruire rapidamente il tuo server personale.
- La guida definitiva per la scelta di un host VPS: da zero a uno, crea facilmente il tuo server dedicato.
- Server indipendenti: come scegliere una soluzione di hosting dedicato ad alta prestazione adatta alle aziende
- Come scegliere il VPS più adatto a te: una guida completa e i punti essenziali per l’acquisto
- La guida definitiva ai server cloud: un'analisi completa dal concetto, alla selezione del modello, fino all'implementazione e all'ottimizzazione.