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

Comparison of Storage Protocol Performance in VMware vSphere™ 4
PVSCSI Storage Performance

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:

WinXPFaultInstallationOnESX

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:

  1. Creare una nuova macchina virtuale Windows XP
  2. Caricare l’immagine ISO del cd di installazione di Windows XP con SP3 in Italiano nel datastore appropriato e connetterlo alla nuova macchina virtuale
  3. Scaricare i drivers appropriati (32 o 64 bit) dal sito LSI Logic (Connettersi al sito http://www.lsilogic.com, e ricercare LSI20320-R)
  4. Scompattarli in una cartella temporanea
  5. Utilizzare WinImage per creare il file LSILogic.flp in cui importare i files del driver
  6. Copiare il file LSILogic.flp nel datastore contenente le ISO di installazione e collegarlo alla nuova macchina virtuale
  7. Accendere la nuova macchina virtuale e premere il tasto funzione F6 per selezionare i drivers SCSI aggiuntivi

    WinXPInstallationSCommand
  8. Premere S per scegliere il driver e poi ENTER per continuare
  9. A questo punto il setup di WIndows prosegue normalmente e viene correttamente rilevato il nuovo disco creato durante il wizard di generazione della nuova macchina virtuale!

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.

image

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.

Di seguito una lista dei tools disponibili per VMWare ESX. La memorizzo qui così la trovo più facilmente :-)

  • Vizioncore - offre una serie di tools per la gestione ed il monitoraggio di installazioni VMWare: vRanger, vMigrator, vCharter, and vReplicator. vRanger (formerly ESX Ranger) è un'applicazione per il backup di macchine virtuali ESX. vMigrator è uno strumento per la conversione P2V. vCharter è un'applicazione per il monitoraggio delle prestazioni e vReplicator può essere utilizzato per replicare macchine virtuali o LUN della SAN in altri server/SAN.
  • Platespin - Forge, PowerRecon e PowerConvert. Forge è un appliance per il  disaster recovery che consente la protezione ed il ripristino di data centers nel caso di guasti, PowerRecon fornisce un servizio di inventario e di misurazione delle prestazioni dei server installati per facilitare la pianificazione dei data centers VMWare, mentre PowerConvert consente l'ottimizzazione dei data centers distribuendo il carico di lavoro tra server fisici, blades, host virtuali e archivi di immagini dei dischi via drag and drop
  • EsXpress - è una soluzione "scalabile e fault tolerant per il backup, il ripristino ed il distaster recovery di soluzioni con VMWare ESX".
  • Veaam - offre una serie di prodotti, alcuni dei quali gratuiti, per il backup, il monitoraggio e la gestione di infrastrutture VMWare ESX. Veeam Configurator consente di centralizzare la gestione delle impostazioni dei vari server da un'unica interfaccia Windows. Veeam Backup combina in un solo prodotto la capacità di effettuare il backup e/o la replica di macchine virtuali. Veeam FastSCP (free) dichiara una velocità 6 volte maggiore rispetto ai normali client SCP per la copia di dati tra servers ESX.
  • VMTS - offre una serie di script e tools, completamente gratuiti.

Per espandere la partizione di boot di una virtual machine creata con VMWare ESX è sufficiente seguire questa procedura:
  1. Spegnere la macchina virtuale.
  2. Effettuare il login sul'host ESX dalla console o via ssh.
  3. Posizionarsi sulla cartella contenente il file del disco di boot da espandere (es. /vmfs/volumes/mysandisk/myvirtualmachine)
  4. Utilizzare il comando vmkfstools per espandere il disco

    vmkfstools -X 20g myvirtualmachine.vmdk

    (ATTENZIONE !!! Questa operazione espande il disco dal punto di vista di VMWare: il sistema operativo continua a vedere la partizione di boot originale, con il disco di maggiori dimensioni e dello spazio non allocato).
  5. Per ridimensionare la partizione vista da Windows occorre un tool di terze parti. Io ho provato il live CD della distro Linux GParted e va benissimo, ma ci sono anche prodotti come Partition Magic, BartPE, etc
    Se usate GParted, potete scaricare l'ISO del live CD e montarlo da VMWare come un qualsiasi altro cd di boot.
  6. Riavviare la macchina virtuale.

Chi sono

  • Danilo Dominici
  • Send mail to the author(s) Email
  • Skype
  • View my profile on LinkedIn

Tags

Calendario

<2017 June>
SunMonTueWedThuFriSat
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

Archivio posts

Blog che leggo

Subscribe to this weblog's RSS feed with SharpReader, Radio Userland, NewsGator or any other aggregator listening on port 5335 by clicking this button.

Statistiche

Total Posts: 139
This Year: 0
This Month: 0
This Week: 0
Comments: 30