domenica 15 giugno 2008

Regole empiriche per il dimensionamento dell'hardware

Massimo Re Ferrè Massimo Re Ferrè in un suo post sull'hardware sizing ha fornito indicazioni su come dimensionare empiricamente l'hardware fisico - CPU, RAM - in funzione del numero di Virtual CPU - le CPU associate a ciascuna Virtual Machine - che dovranno essere in esecuzione sull'host.

Nota: Solitamente si indicata con la sigla pCPU ciascun core della CPU del server fisico, mentre con la sigla vCPU si indica ciascun processore virtuale associato alla virtual Machine. Il prefisso p minuscolo è utilizzato per identificare la risorsa fisica - es. pCPU, pNIC -, mentre invece il prefisso v minuscolo è utilizzato per identificare la risorsa virtuale - es. vCPU, vNIC -.

Le due regole empiriche proposte da Massimo prescindono dal tipo di OS guest in esecuzione sulla Virtual Machine e dalla sua configurazione. Vediamo le due regole ed un esempio di utilizzo:

"...

  • Rule of thumb #1: Every brand new Intel/AMD core (or pCPU from now on) can support on average between 3 to 5 virtual CPU's (or vCPU from now on).
  • Rule of thumb #2: Per every brand new Intel/AMD core configured you should have between 2 and 4 GB of RAM to obtain a "balanced system".

..."

Essendo regole empiriche non vanno prese alla lettera. Massimo fornisce anche un esempio pratico di utilizzo delle due regole. Vediamolo:

Datacenter di partenza: 60 Server fisici, anche multicore

Server da consolidare con la virtualizzazione: 55

Dei 55 server scelti, 45 saranno convertiti in Virtual Machine con 1vCPU, 10 saranno convertiti in Virtual Machine con 2vCPU

vCPU Totali= 45 x 1vCPU + 10 x 2vCPU = 45 vCPU + 20 vCPU = 65 vCPU

Applicando la prima regola empirica

pCPU = vCPU Totali / 3 = 65 / 3 = 22 pCPU (per eccesso)

Adottando server fisici Quad-core (4pCPUxSocket) otteniamo

nSocket = 22 pCPU / nCorexSocket = 22 pCPU / 4 = 6 Socket (per eccesso)

Completato il sizing delle pCPU necessarie, calcoliamo al quantità di RAM necessaria.
Applichiamo la seconda regola:

pRAM = 22pCPU x 4 GB = 88 GB

Quindi il risultato finale è che per consolidare 55 server fisici sono necessari almeno 6 socket quad-core con 88GB di RAM complessiva.

Candidati per questa soluzioni possono essere 3 Server Biprocessore quad-core (3x2x4) con 32 GB installati, oppure Blade biprocessore quad-core (3x2x4) con 32 GB di memoria ognuno.

Quindi utilizzando le due regole empiriche indicate da Massimo è possibile avere una idea di come l'adozione della virtualizzazione sia in grado di trasformare profondamente un Datacenter.

55 Server fisici sono consolidabili in 3 server fisici biprocessore quad-core.

Nota: Lo stesso risultato sarebbe ottenibile, risparmiando un server, con due server 4 processore quad-core ognuno dei quali con 48 GB ciascuno

Le regole indicate da Massimo, per quanto efficaci, sono comunque empiriche! Quindi non vanno prese alla lettera. Nell'articolo sono presenti altre considerazioni che vale sicuramente la pena approfondire ma che esulano dagli obiettivi di questo post. Vi lascio quindi alla lettura dell'articolo originale, in lingua inglese, consultabile qui. 

Luca

Etichette: ,