Nell’articolo di settimana scorsa abbiamo analizzato assieme il pricing delle VPS. In questo nuovo appuntamento, data la complessità del mercato del Cloud, proviamo a valutarne in modo più approfondito le caratteristiche tecniche.
Nell’acquisto di una VPS i principali valori da valutare sono i core della CPU, la quantità di Ram, lo spazio su disco, la banda e la connettività a disposizione. Purtroppo non basta prendere qualche numero e confrontarlo per avere un’idea chiara della situazione.
I core si moltiplicano, le prestazioni si riducono
Il numero di core è certamente uno dei parametri più utilizzati in generale nella vendita di una Vps. Purtroppo però, si tratta di un termine quanto mai generico e poco indicativo, infatti da un punto di vista hardware, la capacità di elaborazione di un singolo core cambia in base al processore: possono variare significativamente anche solo all’interno della stessa generazione di processori Xeon. I divari possono diventare enormi se si considerano tutte le Cpu Intel e AMD che si trovano ancora su server in produzione.
Inoltre, i core possono essere facilmente condivisi assegnandoli a più VPS diverse. Dal lato utente è quindi molto difficile avere un riscontro effettivo finchè le VPS con cui si condividono le risorse sono sostanzialmente ferme o consumano pochi MHz.
Alcuni provider di fascia medio/alta non utilizzano l’assegnazione vCPU/Core uno a uno ma ogni core gestisce almeno 2 VPS.
Un altro approccio molto diffuso è quello di creare alcuni pacchetti di Ram e Core, per cui ad esempio chi vuole molta RAM si porta a casa anche molti Core e, allo stesso modo, chi ha bisogno di molti Core deve comprare anche molta Ram.
Qualora il provider indicasse il modello esatto di processore, non basterebbe per trarre conclusioni precise: ad esempio, fino a non molto tempo fa, Microsoft sulle macchine Azure A9 (che costano circa 3.000 euro al mese nella versione Windows, 2.800 euro per la versione Linux) basate su Xeon E5-2670 Sandybridge-EP, disabilitava il Turbo Boost per ridurre il costo dell’energia. In questa situazione, a parità di processore utilizzato, si ottiene un calo prestazionale nell’ordine del 40% con applicazioni single-thread.
Altri provider come Amazon, sulle VPS più economiche, usano invece sofisticati algoritmi per limitare l’uso della potenza elaborativa: chi ne usa troppa per un periodo prolungato viene poi limitato nei periodi successivi.
Storage: non è solo spazio!
Un altro parametro fondamentale nella valutazione delle VPS è lo storage messo a disposizione: la prima osservazione importante riguarda le garanzie di conservazione dei dati che vengono proposte per la VPS che stiamo acquistando. La maggior parte di queste non offre alcuna garanzia di backup e conservazione dei vostri dati. Purtroppo anche chi fornisce un’opzione di backup non sempre lo fa nel modo più comodo per l’utilizzatore, la maggior parte di questi servizi – pur chiedendo un sovrapprezzo che può arrivare al 30% in più rispetto al costo base della VPS per abilitare la funzione di backup – si limita a fare una semplice immagine del disco senza realizzare un backup più granulare a livello di file e cartelle.
La soluzione per essere veramente tranquilli è fare (in modo più o meno automatizzato) i backup della macchina su uno storage differente. Abitualmente lo spazio che viene messo a disposizione in una VPS Windows o Linux è quello del disco principale del sistema operativo, il cui ingombro va sottratto allo spazio complessivamente a disposizione. Come sapete, Windows è particolarmente avido di storage di sistema, nel confronto con Linux: considerate con attenzione questo problema nello scegliere il prodotto adatto alla vostra applicazione e privilegiate i provider che vi permettono di espandere il disco senza passare a una VPS superiore anche dal punto di vista di Ram e CPU. Stellar di CoreTech, ad esempio, consente upgrade incrementali e personalizzati all’aumentare delle risorse computazionali richieste.
Per portare un esempio in negativo, Amazon sconsiglia la memorizzazione di dati sul suo Elastic Block Storage (EBS), lo spazio che viene venduto insieme ad ogni macchina. Nella logica dell’architettura Amazon, per la memorizzazione dei dati bisogna utilizzare S3, che va naturalmente pagato a parte.
Un ulteriore aspetto da tenere bene a mente è che le prestazioni del vostro storage non sono strettamente correlate alla tipologia di dischi utilizzati. Dunque, se prendete una VPS con storage su SSD non è affatto detto che abbia prestazioni migliori rispetto a una che usa dischi tradizionali. La velocità complessiva dipende strettamente da quante VPS girano su uno stesso storage hardware condiviso. Le SSD infatti sono abitualmente utilizzate soprattutto dai provider che praticano overselling in modo spinto, grazie al maggior numero di IOPS che permettono di offrire: se facessero lo stesso con i dischi tradizionali, le macchine virtuali risulterebbero pressoché inutilizzabili. Stellar è uno dei pochi servizi che fornisce al cliente livelli di performance sullo storage garantiti.
Datacenter e location: la scelta giusta
Storage, Core e RAM vanno valutati in modo molto attento, perché sarà la loro combinazione a fornirci un determinato livello di performance complessivo. Tenete in considerazione anche la posizione geografica effettiva della VPS: se avete fatto un benchmark sul datacenter di Amsterdam non è detto che quello di Roma dello stesso fornitore dia gli stessi risultati. Magari le macchine che vengono usate per far provare il servizio sono differenti da quelle di produzione.
Inoltre, c’è un problema specifico che riguarda la progressiva obsolescenza delle infrastrutture. Se ad esempio voi avete acquistato una VPS nel 2013 dal vostro fornitore preferito potreste essere in una delle due seguenti situazioni: o la VPS è stata migrata nel corso di questi 2 anni su una nuova infrastruttura, oppure probabilmente soffrirà di tutti i problemi di una infrastruttura ormai obsoleta e completamente satura.
In ogni caso, qualsiasi test andiate a fare dovrà perlomeno essere provato ad orari e in giorni differenti poiché è strettamente legato al carico complessivo dell’intera infrastruttura del Cloud Provider.
Per concludere, un altro parametro importante che riguarda le prestazioni è naturalmente quello della connettività: la banda a disposizione della VPS può essere un parametro di scelta fondamentale e determinante in base all’utilizzo che si andrà a farne ed è importante verificarla al di là dei dati dichiarati sulla carta dal provider.
I provider di alto livello infatti posizionano le loro macchine all’interno di datacenter dedicati, strutture appositamente progettate per garantire i massimi livelli di sicurezza fisica dei dati, con ambienti climatizzati e impianti di alimentazione ad-hoc. In una situazione di questo, tipo anche la connettività verso Internet è garantita da linee multiple collegate da e verso il datacenter.