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.
I limiti della versione FREE quali sono?
Ha un limite di 8 Gb di vRAM, non si sa ancora se soft o hard.
Luca.
nel qual caso prevedo una lunga vita di esx 4.x
8GB è impraticabile.
A questo punto sarà necessario VMware vSphere Essentials anche per le piccolissime realtà.
Il limite di VMware vSphere Essentials è di 144GB vRAm e 3 HOST e quindi 6 CPU fisiche.
Credi sia possibile avere situazioni con meno host usando il limite complessivo della licenza? per esempio un solo host con 4 CPU fisiche e 96GB vRAM?
Leggetevi bene la spiegazione: la vRAM è la ram totale delle VM accese, non del server host. E il valore è complessivo per tutto vcenter.
Con Essentials potrò quindi accendere un totale di 144 Gb, anche avendo per assurdo una singola VM da 100 Gb ospitata su uno dei nodi.
non mi e`ancora chiara una cosa: memoria fisica corrisponde alla memoria virtuale in termini dimensionali?grazie
No.
La memoria fisica è quella installata sui vari host ESXi.
La memoria virtuale, o meglio la vRAM per usare il nuovo termine, è quella assegnata alla singola macchina virtuale.
Se hai un server ESXi con 32 Gb di ram che ospita una virtual machine Windows 2008 con 8 Gb di ram, 32 è la fisica e 8 la vRAM.
Perfetto l’articolo ma non mi sono chiare alcune cose:
L’update dalla vers. 4.1 alla 5.0 potrà avvenire tramite l’update manager o scaricando e installando la nuova versione tramite dvd. Ho già trovato sul sito di vSphere 5 la procedura, ma per la licenza come si fa? Io possiedo una Essential plus formata da 2 Host con n.1 processore a 4 core e 16GB di ram per ciascun host(sto pensando a un upgrade). Piccola cosa quindi rapportata ai tuoi numeri. Attualmente uso per le VM 9GB per ciascun host. Ma come si fa con la licenza? La 5.0 con la mia config è compatibile senza effettuare un upgrade della licenza? Se ho capito i dati-> n.1 CPU = max 24GB di vRam + ram fisica per ESXi… giusto?
L’upgrade sarà fatto direttamente al bundle Essentials Plus 5.0, che ti permette di avere un totale di vRAM di 144 Gb. Se sei ancora coperto dal supporto, aggiornerai i codici nel portale licenze e procederai poi ad aggiornare vcenter e ESXi. La ram fisica non è più un limite, avrai un totale per vcenter di 144 Gb utilizzabili per tutte le VMs. Usando tu 18 Gb di vRAM sei decisamente al di sotto dei limiti di licenza.
Perdonami ma non capisco da dove escono i 144Gb.
Dall’immagine che hai postato poi proprio non mi raccapezzo. Nel cluster ho n.2 host pari a n.2 CPU(8 CORE) e 32GB di phisical RAM. Ora nel tuo grafico raffigurante la comparativa tra le licenze capisco che io potrei, avendo 2 CPU fisiche, assegnare un max di 48Gb di vRAM(che al momento non possiedo). Percui volendo io portare la phisical RAM a 72GB nel cluster e avere 4 CPU fisiche, non lo posso fare. La mia Essential Plus prevede(va) un max di 3host con n.2 CPU ciascuna con max 6 core per cpu e non si fa nessun riferimento alla phisical RAM o vRAM. Ora come si modificherà?
Grazie per l’aiuto.
Non conta più nulla la ram fisica presente nel server, puoi averne fino a 256 Gb (con le varie versioni che non siano la Enteprise Plus, che arriva fino a 2 Tb) e ESXi la riconosce.
Quello che conta è la vRAM, che ripeto è la ram ASSEGNATA alle virtual machines.
Il computo della vRAM va fatta per tutto vcenter, quindi se anche hai solo due nodi, ma carichi nel vcenter tutte le licenze, sei autorizzato ad usare 144 Gb di vRAM. Valore che infatti corrisponde ai 24 Gb per socket (non per core!) per 6 cpu. Quello che vedi nel grafico è l’autorizzazione di vRAM per cpu, quindi avendo Essentials Plus 6 licenze cpu, ecco che arrivi a 144. Con questo potresti avere anche una singola VM da 144 Gb, ed essere in grado di accenderla.
E secondo te quando farò l’upgrade della licenza(ho supporto x i prox 3 anni) mi rimarrà attiva per 6CPU? oppure a tuo parere mi sarà limitata a un numero inferiore di licenze per CPU? Perchè così tanto per parlare se prima potevo montare 3 server con 2 CPU ciascuno, ora potrei avere 6 server con 1 CPU ciascuna… mica male… Un server per ogni tipologia di lavoro che devo fare… Ora ho dei Xeon E5504 che sono la base, potrei un giorno poter comprare altri 2 Host(tot. 4 host) molto + potenti e tenere questi come riserva in HA oppure tenerli per il web. Insomma, era solo per dire, ma nella mia configurazione la v5.0 mi sblocca non poche cose 🙂
Fossi in te mi scorderei l’idea di usare le 6 licenze CPU su altrettanti server, i bundle essentials sono sempre stati legati anche al numero fisico di hosts, finora di 3.