Mi occupo di SQL Server da ormai più di dieci anni, sin dalla versione 6.5, e di VMWare ESX da cinque, iniziando con due-tre macchine virtuali installate per “scommessa”, fino ad arrivare all’attuale infrastruttura che conta ben 180 servers, oltre due terzi della server farm !
Per implementare l’architettura di virtualizzazione mi sono basato principalmente sui whitepapers di VMWare e sui (pochi) libri in circolazione.
Per chi approccia ora questa tematica, ed in particolare per chi decide di sfruttare la virtualizzazione anche per SQL Server, riporto in questo post una serie di link ai documenti di VMWare, IBM ed HP dove si parla di SQL Server e di come virtualizzarlo.
SQL Server Performance and Scalability of Microsoft® SQL Server® on VMware vSphere™ 4 Microsoft SQL Server and VMware Virtual Infrastructure Availability Guide for Deploying SQL Server on VMware® vSphere Microsoft® SQL Server on VMware® Best Practices Guide Best Practices Guide for Virtualizing SQL Server Performance Study: SQL Server Workload Consolidation White Paper: SQL Server Performance in VMware Infrastructure Consolidating Microsoft SQL Server on the IBM System x3950 M2 Server Consolidation with VMWare ESX Server
Best Practices Performance Best Practices for VMware vSphere™ 4.1 Performance Troubleshooting for VMware vSphere 4
CPU VMware® vSphere™: TheCPU Scheduler in VMware ESX® 4.1 VMware vSphere™ 4: The CPU Scheduler in VMware® ESX™ 4 Memory Understanding Memory Resource Management in VMware® ESX™ Server Understanding Memory Resource Management in VMware ESX 4.1 Virtual Performance: Love Your Balloon Driver Large Page Performance
DiskIO VMware vSphere 4 Performance with Extreme I/O Workloads VMware® vStorage Virtual Machine File System Technical Overview and Best Practices Recommendations for Aligning VMFS Partitions
Cercherò di mantenere aggiornata questa pagina man mano che saranno disponibili eventuali altri documenti a riguardo.
Naturalmente si accettano suggerimenti !
Enjoy SQL Server (e VMWare).
Mi è capitato di recente di installare ESX 4.1 su un blade HP che non ne voleva sapere di vedere il drive DVD. In questi casi è possibile usare il “jolly” ed effettuare l’installazione da penna USB.
Il procedimento è molto semplice:
1. Utilizzare un’applicazione come Unetbootin per rendere “bootabile” la nostra pennetta USB partendo dall’immagine ISO di VMWare ESX 4.1 (tra le opzioni di Unetbootin è possibile scegliere il file ISO, specificare la lettera dell’unità corrispondente alla penna USB e cliccare su OK !) . 2. Far partire il server utilizzando la penna USB (attenzione: quasi sicuramente occorre modificare la sequenza di avvio dal BIOS) 3. Cliccare TAB quando appare la schermata di installazione di VMWare 4. Aggiungere il comando askmedia al termine della stringa relativa al bootloader syslinux che appare sullo schermo.
Il processo di installazione di ESX4 continuerà normalmente, consentendo però la scelta del percorso di origine dei files di installazione (USB, FTP, NFS, etc).
Mi è capitato di dover implementare diversi client XP su VMWare e mi appunto qui la sequenza di operazioni da fare perchè tutto funzioni a dovere…
ESX seleziona per default il driver LSI Logic quando si installa una nuova macchina virtuale basata su Windows XP ed i drivers del controller LSI non vengono rilevati dal programma di installazione con il risultato seguente:
Per risolvere il problema ed installare correttamente Windows XP su ESX occorre scaricare il driver dal sito LSI Logic, creare una immagine dei drivers ed utilizzarla come floppy virtuale durante il setup.
In dettaglio:
Volendo, si può scegliere di installare WinXP utilizzando i drivers BUSLogic, disponibili come download dal sito VMWare (http://download3.vmware.com/software/vmscsi-1.2.0.4.flp) e rilevati come VMWare SCSI Controller da XP.
Per utilizzarli seguire la stessa procedura descritta sopra.
Vi ricordate il mitico Commodore 64 ? E l’altrettanto meraviglioso Apple IIe ?
Beh, grazie alla segnalazione di Scott Hanselman, ho scoperto questi due emulatori per i rispettivi computer: http://silverlightc64.codeplex.com/ e http://virtu.codeplex.com/
Il primo è l’emulatore per C64, realizzato in Silverlight 3, mentre il secondo è un emulatore per l’Apple IIe realizzato in C#, Silverlight, WPF e XNA.
Buon divertimento!
E' da ormai un mese che la notizia rimbalza da un sito all'altro. Grazie all'utilizzo di nuovi prodotti come gli Enterprise Flash Drives (EFD), EMC e VMWare sono riusciti ad ottenere, da un singolo host VMWare vSphere con tre macchine virtuali l'incredibile cifra di 350.000 operazioni di I/O al secondo. Per fare un paragone pratico, riporta l'articolo di VMWare, un singolo host vSphere potrebbe tranquillamente supportare i database servers di Wikipedia, basati su 20 MySQL server con 200-300 GB ciascuno e un carico medio di 80.000 query al secondo! Questi risultati, anche se raggiunti con hardware particolare, sono un bel biglietto da visita da presentare agli scettici della virtualizzazione. L'articolo integrale lo trovate qui.
E' da ormai un mese che la notizia rimbalza da un sito all'altro. Grazie all'utilizzo di nuovi prodotti come gli Enterprise Flash Drives (EFD), EMC e VMWare sono riusciti ad ottenere, da un singolo host VMWare vSphere con tre macchine virtuali l'incredibile cifra di 350.000 operazioni di I/O al secondo.
Per fare un paragone pratico, riporta l'articolo di VMWare, un singolo host vSphere potrebbe tranquillamente supportare i database servers di Wikipedia, basati su 20 MySQL server con 200-300 GB ciascuno e un carico medio di 80.000 query al secondo!
Questi risultati, anche se raggiunti con hardware particolare, sono un bel biglietto da visita da presentare agli scettici della virtualizzazione.
L'articolo integrale lo trovate qui.
Un server fisico virtualizzato presenta ancora in elenco i devices fisici legati all’hardware precedentemente installato.
Per rimuovere i devices non più utilizzati e “ripulire” la macchina virtuale dei drivers inutilizzati (ed inutilizzabili !), bastano pochi semplici passi:
1) Aprire il prompt dei comandi
2) Digitare:
set devmgr_show_nonpresent_devices=1
3) Digitare:
devmgmt.msc
per aprire la MMC di gestione dei devices
4) Cliccare sull’opzione “Show hidden devices” del menu View ed eliminare i devices “in grigetto”, facendo attenzione ovviamente a non eliminare quelli necessari per il funzionamento della macchina !
Per modificare l’indirizzo IP della Service Console di un host ESX 3.x, occorre modificare la configurazione della vswif corrispondente.
Assumendo che la Service Console sia connessa a vswif0, la sequenza corretta per modificare l’indirizzo IP è la seguente:
1) Effettuare il logon con permessi di root o lanciando il comando su da riga di comando per ottenere i permessi necessari
2) Lanciare il comando
esxcfg-vswif –d vswif0
per eliminare la vecchia Service Console. Ignorate il warning riportato dopo l’esecuzione del comando (nothing to flush).
3) Aggiungere la nuova Service Console con il comando:
esxcfg-vswif –a vswif0 –p Service\ Console –i 10.10.10.10 –n 255.255.255.0 –b 10.10.10.255
Da notare che Service\ Console è volutamente scritto in questo modo, perchè il backslash serve ad indicare al comando che lo spazio successivo fa parte del parametro.
-i indica l’indirizzo IP -n indica la subnet mask -b indica l’indirizzo di broadcast
A questo punto resta eventualmente da modificare solamente il gateway, modificando il file /etc/sysconfig/network.
Visto che la mia memoria è piuttosto volatile (chi mi conosce sa di cosa parlo ) mi segno qui qualche utility per VMWare:
La scorsa settimana Microsoft ha pubblicato questo documento riguardante le modifiche alle politiche di licensing, rimuovendo in particolare il vincolo dei 90 giorni necessari per riassegnare una licenza ad un server dopo averla spostata all'interno della propria server farm. Tutte le licenze Microsoft sono assegnate ad un server fisico, pertanto se una macchina virtuale viene spostata su un server privo della licenza per il sistema operativo o l'applicazione installata, per Microsoft si tratta di un trasferimento di licenza. Con le precedenti limitazioni imposte dalle politiche di licensing introdotte nel 2005, per riassegnare tale licenza su un altro host fisico dovevano trascorrere almeno 90 giorni, con effetti evidentemente catastrofici sulla virtualizzazione e sulla migrazione a caldo.
Facciamo un esempio: se abbiamo tre macchine virtuali con SQL Server 2005 in una server farm VMWare fatta di otto server fisici, per effetto delle precedenti politiche di licenza avremmo dovuto acquistare 24 licenze di SQL Server 2005 Standard Edition (3 x 8) !!!In alternativa avremmo potuto acquistare otto licenze SQL Server 2005 Enterprise Edition, che consentono un numero illimitato di macchine virtuali in esecuzione su uno stesso host fisico.
Con l'attuale modifica fatta al licensing acquisteremo solamente tre licenze di SQL Server, liberamente trasferibili tra i nodi del cluster VMWare senza limitazioni e con un impatto finanziario decisamente più basso.
Stu Radnidge e Shyam Madhavan di Vinternals hanno realizzato un tool molto interessante, chiamato Statelesx (che per effetto della pronuncia inglese diventa Stateless ESX).Grazie a questo tool gli amministratori VMWare possono definire un file di configurazione tramite interfaccia web (comprendendo le informazioni sulle reti, la configurazione HA, il DRS, etc) e associarlo a ciascun host ESX.Il tool funziona solo sulla versione 3.5 ed utilizza Pyton e un Java listener disponibile come virtual appliance per la gestione della configurazione.
Tramite questo tool è possibile applicare la configurazione a nuovi ESX server aggiunti all'infrastruttura, mantenendo un backup della configurazione stessa per ciascun server.