Disclaimer: sono stato nominato vExpert da VMware, e adoro i loro prodotti. Sono però al tempo stesso un consulente che lavora per molti clienti, e devo sempre trovare quello che per loro è la migliore soluzione. Il post che segue non è un “public bashing”, ma un tentativo di ragionare sulle possibili implicazioni che il nuovo licensing potrebbe portare. Le opinioni che vi trovate sono ovviamente le mie.
Alla fine la versione 5 di vSphere, a due anni dalla presentazione della 4, è arrivata tra noi.
Troverete sul sito ufficiale di VMware e nella blogosfera tantissimi articoli, blog posts e informazioni circa le nuove funzioni tecnologiche che sono state introdotte. Sicuramente avrò modo anche io di parlarne.
Ho notato però dai commenti su twitter che l’argomento che ha scaldato gli animi è stato il licensing, e non poteva essere diversamente.
Se molte funzioni presentate rappresentano una logica roadmap evolutiva (badate bene, non dico siano banali, solo erano prevedibili almeno alcune di esse) il licensing è cambiato profondamente.
VMware ha indirettamente riconosciuto che il licensing per socket, e per un numero massimo di core per socket, semplicemente non rispecchiava più l’evoluzione tecnologica dell’hardware sottostante. Non era pensabile dover continuare ad usare ad esempio due licenze standard per licenziare una cpu ad 8 core.
Pertanto, con l’introduzione di vSphere 5, è stato introdotto un nuovo formato di licensing, che potete leggere nel dettaglio fin d’ora in questo pdf. Il funzionamento può essere riassunto in questi punti:
– vengono sempre conteggiati e licenziati i socket presenti
– non vengono più conteggati i core di ogni socket
– ogni licenza CPU porta in dote al datacenter una entitled ram, ovvero un quantitativo di RAM licenziata
– sparisce la versione Advanced (che viene aggiornata ad enterprise)
– ciò che differenzia ogni versione (Essentials, Essentials Plus, Standard, Enterprise, Enterprise Plus) è sia il set di funzioni disponibili, sia la ram disponibile nella licenza di ogni CPU. Questo schema preso direttamente dal documento di licensing riassume questi valori:
La RAM può essere aggregata per vcenter generando un vRAM Pool, che sarà il valore complessivo delle licenze RAM possedute.
C’è però concetto da introdurre per avere un quadro chiaro: si parla nelle licenze di Assigned RAM e non Consumed RAM. Ovvero, una virtual machine creata con 4 Gb di ram e che consuma 1 Gb di ram di ESXi, verrà conteggiata come 4.
Se a questo punto siete rimasti perplessi e vi è venuto qualche dubbio, sappiate che non siete i soli: all’annuncio di ieri sera del licensing twitter si è trasformato in una bolgia. Però piuttosto che difendere a spada tratta il nuovo licensing oppure rifiutarlo a priori, dovremo provare a fare delle simulazioni, perchè credo sicuramente ci saranno situazioni peggiorative e migliorative.
Tenete presente alcune cose, che vi indico in ordine sparso man mano che le ho scoperte anche io:
– il limite di ram è soft. Vcenter invierà dei warning all’approssimarsi della soglia di consumo massima prevista. Solo il bundle Essentials ha un hard limit di 144 Gb.
– in generale, i valori di ram mi paiono decisamente bassi. Nella realtà i server sono sempre più in grado di gestire grandi quantitativi di ram, e anche un semplice server a 2 socket 4 core arriva tranquillamente a oltre 96 gb di ram. Col nuovo Enterprise Plus, ne potete usare solo 96 Gb. Durante la presentazione si è parlato tanto di huge VMs, ma per poter gestirle sarà necessario un vRAM pool adeguato. Ci saranno condizioni in cui, a fronte di un determinato numero di CPU possedute, le licenze dovranno essere in numero maggiore per poter avere un vRAM pool sufficiente. Ad esempio, la tanto decantata VM massima di 1 Tb di ram, richiederà l’uso di 22 licenze Enterprise Plus, anche se ovviamente questa VM girerà su un solo nodo.
Facciamo un paragone valoce: virtual machine con 256 Gb di ram ospitata su un singolo server dual socket, a parità di licenze Enterprise Plus se con VS4 mi bastavano 2 licenze, adesso per eseguire questa VM di licenze ne devo possedere 6.
Vorrei vedere delle simulazioni in cui ho un risparmio rispetto al passato, nel poco tempo intercorso tra la presentazione e il post non ho avuto tempo di fare calcoli approfonditi. A prima vista qualsiasi configurazione con più ram di quella permessa da ogni CPU sullo stesso nodo è svantaggioso, ad esempio andando oltre i 192 Gb di ram su un server quad socket licenziato con Enterprise Plus. Le huge VMs (per modo di dire, dato che pare 192 Gb un limite oltre il quale la ram diventa economicamente sconveniente, mentre con VS4 arrivavamo a 255 sempre…) in ogni caso devono essere licenziate per la ram assegnata, e avremo necessità di server sottostanti con quel quantitativo di ram per eseguirle…
– usare l’assigned ram come unità di misura è un colpo inferto alle tecnologie di page sharing, compression, e a tutti gli strumenti di capacity planning, tuning o altro. A cosa mi serve il page sharing se alla fine dovrò sempre pagare la assigned RAM?
Attendo veramente fiducioso documenti e interventi più dettagliati da parte di VMware sull’argomento, perchè adoro il prodotto tecnologico, e mi spiace che questa nuova modalità di licensing ha distolto l’attenzione dalle nuovissime e avanzate funzioni che vSphere 5 possiede.
E questo è l’errore più spiacevole…
PS: lo ridico ancora. Tecnologicamente il prodotto è OTTIMO.