Tutti gli articoli della Rubrica VPS:
- VPS: il trucco dei Core nei Cloud Server
- VPS (seconda parte): il trucco delle SSD
- VPS (terza parte): valutare le prestazioni
- VPS (quarta parte): troubleshooting di base in Linux
Proseguiamo il nostro percorso nell’analisi delle offerte di VPS presenti sul mercato per ragionare su uno dei fattori più critici in assoluto nella scelta di una macchina virtuale: le prestazioni, lo capacità, l’affidabilità e la tipologia dello storage.
La prima osservazione importante riguarda le garanzie di conservazione dei dati che vengono proposte per la VPS che stiamo acquistando. La maggior parte delle VPS che potete trovare in offerta su Internet non offre alcuna garanzia di backup e conservazione dei vostri dati. Anche se questo può sembrarvi folle. Si vedono però qua e là offerte che iniziano a proporre – a un costo aggiuntivo – livelli di protezione leggermente più elevati.
Purtroppo anche chi fornisce una opzione di backup non sempre lo fa nel modo più comodo per l’utilizzatore. La maggior parte di questi servizi infatti – pur caricando fino al 20 o 30% in più rispetto al costo base della VPS per abilitarvi la funzione di backup – si limita a fare una immagine del disco della macchina, ma non offre un backup più granulare. Se dunque ad esempio fate girare qualche sistema di object storage come Owncloud su una VPS e una cartella o un singolo file vengono inavvertitamente cancellate l’unica opzione che avrete sarà quella di ripristinare l’immagine precedente, con la perdita di tutti gli altri file modificati nell’ultima giornata o nell’ultima settimana (in base alla frequenza del backup). Naturalmente esiste una sola soluzione con cui mettervi il cuore in pace: fare voi il backup, con tutti i costi, gli oneri e i problemi di archiviazione che questo comporta. Ovviamente il backup dovrete memorizzarlo altrove, non sul disco della stessa VPS o su una VPS che risiede sullo stesso storage. Fate dunque bene i conti prima di trarre conclusioni affrettate.
Windows vs Linux: attenzione allo spazio
Abitualmente lo spazio che viene messo a disposizione in una VPS Windows o Linux è quello del disco principale del sistema operativo. Dunque non sarà ovviamente tutto libero per memorizzare i vostri dati. Come sapete Windows è particolarmente avido di spazio 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. Altrimenti un progetto con budget pari a 20 euro al mese nel corso di poco tempo potrebbe arrivare a costarvi anche 60 o 100 euro (per lo stesso periodo) solo per soddisfare i requisiti di spazio su disco.
Questione di storage
Un discorso importante invece riguarda la tipologia di dischi utilizzati e le loro prestazioni. La prima cosa fondamentale 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. Una VPS con storage SSD dovrebbe essere più veloce in termini di prestazioni I/O rispetto a una con dischi tradizionali, ma questo dipende strettamente da quante VPS girano sullo stesso storage.
Le SSD infatti sono abitualmente utilizzate soprattutto dai provider che praticano overselling in modo più spinto, a causa del maggior numero di IOPS che permettono di offrire: se facessero lo stesso con i dischi tradizionali venderebbero macchine virtuali pressoché inutilizzabili. In pratica se siete un provider e volete guadagnare il più possibile vorrete mettere più VPS possibili su un singolo server con un singolo storage: questo non significa però offrire prestazioni migliori, ma peggiori, sia sul fronte CPU sia su quello disco.
Dunque se state cercando un fornitore focalizzatevi appunto su cosa ha effettivamente a disposizione la VPS, cercate offerte con garanzie di prestazioni che vi garantiscano un accesso a disco rapido e compatibile con le applicazioni che vorrete implementare. È bene privilegiare in particolare chi spiega chiaramente quali storage interni o condivisi vengono utilizzati e con quali criteri vengono gestiti. Un disco consumer SATA ad esempio ha canoni di affidabilità molto inferiori a quelli di un disco Enterprise SAS, al di là del numero di giri o delle IOPS che fornisce effettivamente. In caso di guasto dunque il rischio di perdita dei dati sarà maggiore e voi dovrete avere un piano di disaster recovery pronto per essere attuato, qualsiasi sia il vostro fornitore. Soprattutto per le VPS di produzione particolarmente critiche.
Occhio alle specifiche
Ricordatevi infine di leggere sempre bene fino in fondo tutte le clausole e descrizioni delle VPS prima di pianificare una migrazione o di realizzare un nuovo progetto. Ad esempio molti di voi avranno visto che Microsoft nel suo servizio Azure offre una tipologia di macchine virtuali – disponibili da settembre dello scorso anno – che include SSD ad alta velocità per chi ha bisogno di prestazioni I/O maggiori rispetto a quelle delle VM standard. In questo caso Microsoft offre un prodotto decisamente caro che però potrebbe sembrare appetibile per chi è in cerca di prestazioni significative. Nel momento in cui scriviamo una VM di tipo D1 con 1 solo core e 3,5 Gbyte di Ram con 50 Gbyte di SSD costa 88 euro al mese, mentre una D4 con 8 core, 28 Gbyte di Ram e però soli 400 Gbyte di disco SSD costa ben 703 euro al mese. Le prestazioni per la SSD “locale” (questo il termine usato da Microsoft) sono purtroppo proporzionali alla sua dimensione, dunque per la D1 le prestazioni attese sono scarsine (dati forniti da Microsoft a questo indirizzo ): 48 Mbyte/s in lettura, 24 in scrittura e 3.000 IOPS. Va un po’ meglio per la D4: 24.000 IOPS, 384 Mbyte in lettura e 192 in scrittura. Inoltre sempre secondo Microsoft a causa dell’implementazione basata su un VHD (disco virtuale) dinamico (l’equivalente di un disco Thin per VMware) la velocità diminuirà al crescere del disco.
Purtroppo non è tutto qua: la SSD locale infatti – al di là di quello che sarebbe ragionevole pensare – non viene utilizzata dalle VM Azure per il sistema operativo! È solo un disco locale aggiuntivo che può essere usato per accelerare alcune applicazioni. Microsoft lo descrive come “local temporary storage”: disco temporaneo locale. Non penserete dunque di memorizzare qualche file su questa SSD dunque!
Anche Amazon sconsiglia la memorizzazione di dati sul suo Elastic Block Storage (EBS), lo spazio che viene venduto insieme ad ogni macchina virtuale venduta dal gigante della vendita online. Nella logica dell’architettura Amazon per la memorizzazione dei dati bisogna infatti usare S3, che va naturalmente pagato a parte. Per quanto riguarda le SSD Amazon parla per alcune istanze di General Purpose SSD per uso generale e Provisioned IOPS SSD per chi vuole prestazioni coerenti e bassa latenza. Infine per alcune istanze come le I2 si possono avere SSD dedicate da 800 Gbyte collegate direttamente alla VPS, in una logica di maggiori prestazioni a fronte però di una affidabilità inferiore. Questo tipo di storage viene chiamato Instant Store e solo alcune istanze specifiche supportano ad esempio il Trim delle SSD (indispensabile per mantenere buone prestazioni nel tempo): le I2 e le R3. Per avere una idea dei costi le istanze riservate I2 (4 vCPU, 30,5 Gbyte di Ram, 1 SSD da 800 Gbyte) partono da circa 310 dollari al mese, le r3 (2 vCPU, 15,25 Gbyte Ram, 1 SSD 32 Gbyte) da 80 dollari.Articolo successivo: VPS (terza parte): Valutare le prestazioni