Virtualizzazione di Sql
Server
Francesco Diaz
http://blogs.technet.com/b/francesco_diaz
Partner Technical Consultant
Agenda
•
•
•
•
•
Panoramica di Hyper-V e Hyper-V R2
Configurazione di Sql Server in ambiente
virtuale
Monitoring
Best practices
Riferimenti utili
Partner Technical Consultant
Architettura di Hyper-V
Panoramica
Partner Technical Consultant
Hyper-V Architecture
Parent Partition
Child Partition
Child Partition
Child Partition
Windows Server
2008
Hyper-V Aware
Windows OS
Hyper-V Aware
Non-Windows OS
Non-Hyper-V
Aware OS
Virtualization
Service Provider
(VSP)
Virtualization
Service
Consumer (VSC)
Device Drivers
Device Drivers
Enlightenments
3rd party VSC
VMBus
VMBus
VMBus
WinHv
WinHv
3rd party Hypercall
Interface
Device Emulation
Hypercalls
Hypercalls
Hypercalls
Intercepts
Ring 3
VMM Service
User
Mode
WMI Provider
VM Worker
Processes
Virtualization
Infrastructure
Driver
Ring 0
Kernel
Mode
Ring -1
Microsoft Hypervisor
Hardware
Partner Technical Consultant
4
Come viene caricato l’hypervisor?
HVBOOT.SYS
•
•
Il computer si avvia dall’MBR e chiama
HVBOOT.SYS
HVBOOT.SYS si occupa di :
− Verificare se Hypervisor è installato
− Chiama una routine per verificare la CPU (AMD
o Intel)
− Fa invoke delle routine di avvio dell’hypervisor
su tutti i processori
− Hypervisor viene eseguito in Ring-1
− Viene creata la parent partition
− Il normale processo di boot prosegue
Partner Technical Consultant
5
Parent partition
•
•
La parent partition è responsabile di:
− Gestire ed assegnare le risorse hardware.
− Power management, plug and play, ed eventi di
failure dell’hardware
− Creazione e gestione delle altre partizioni
− Avviare l’hypervisor.
Lo stack di virtualizzazione viene eseguito
nella parent partition e comprende:
−
−
−
−
−
−
Virtual Machine Management Service (VMMS)
Virtual Machine Worker Process (VMWP)
Virtual Devices (VDEVs)
Virtualization Service Providers (VSPs)
Virtualization Infrastructure Driver (VID)
Windows Hypervisor Interface Library (WinHv)
Partner Technical Consultant
Parent Partition
Windows Server
2008
VMM Service
WMI Provider
VM Worker
Processes
Virtualization
Infrastructure
Driver
Virtualization
Service Provider
(VSP)
Device Drivers
VMBus
WinHv
Hypercalls
6
Child Partition
Device emulati
Virtualization Service Clients (VSC)
Guest Integration Services
VMBus
WinHv
Device virtuali
Integration components
VMBus
Partner Technical Consultant
7
Integration Components
Emulated Devices
Partner Technical Consultant
Synthetic Devices
Configurazione di Hyper-V
Installazione degli Integration Components
Eseguire le macchine senza Int.Comp. su Host separati
Legacy net. Adapters possono ridurre le prestazioni
dei driver sintetici
Configurazione Anti-virus
Impostare exclusions su VMSWP.EXE, VMWP.EXE
e VMMS.EXE
Non impostare lo scan sulle cartelle che contengono
I file di configurazione delle VM
Partner Technical Consultant
9
Configurazione di Hyper-V
Impostare path di default
Assicurarsi che lo storage migliore venga usato per
le VM
Riduce la complessità dei backup
Utilizzare più schede di rete
Separare le schede di rete per il management e per
il traffico diretto alle VM
Partner Technical Consultant
10
Hyper-v R2 Live Migration
Partner Technical Consultant
Live Migration: Come funziona
1.
Viene creata la VM nel target server
2.
Vengono copiate le pagine di memoria via Ethernet
Ultimo passaggio
3.
a)
b)
4.
Pausa delle VM
Muovere la connettività allo storage via Ethernet
Esecuzione della VM nella destinazione; Cancellazione della VM di
origine
Host 1
Host 2
Blu = Storage
Giallo = Networking
Partner Technical Consultant
Shared Storage
Cluster Shared Volumes Overview
Dati inviati via rete
Coordinator
Node
1 LUN, più
VMs
SAN
VHD
Partner Technical Consultant
Distributed
File Access
per Hyper-V
VHD
VHD
Clustered Shared Volumes (CSV)
•
•
•
Permette a più nodi di un cluster di
accedere ad una singola LUN
Un nodo si occupa di fare da coordinatore
per le scritture
Abilita la live migration di una VM senza
impattare le altre VM nella LUN
Partner Technical Consultant
High Availability per SQL Server
In ambienti virtualizza
Consolidamento aumenta l’importanza delle soluzioni di HA
Il consolidamento di più istanze potrebbe impattare l’importanza di un
failure
Guest
Cluster
Guest
Cluster
2
1
11
Live
Migration
22
Host cluster
Shared Storage
iSCSI
Redundant
Paths to storage
Guest Clustering
Partner Technical Consultant
Shared Storage
iSCSI, SAS, Fibre
Live Migration & Host Clustering
SQL Server e Hyper-V
Overview e
consolidamento
Partner Technical Consultant
Alcuni vantaggi della
virtualizzazione di Sql Server
•
•
•
•
•
•
Consolidamento di server e istanze
Una più semplice migrazione delle VM
Ottimizzazione dello storage e delle risorse hardware
Migrazione da ambiente fisico a virtuale con System
Center Virtual Manager
Alta disponibilità, alta affidabilità
Una possibile miglior gestione del licensing :
http://download.microsoft.com/download/1/e/6/1e68f92cf334-4517-b610e4dee946ef91/2008%20SQL%20Licensing%20Overview
%20final.docx
Partner Technical Consultant
Storage
•
•
Varie tipologie di dischi
− Dynamically Expanding (sconsigliati)
− VHD a dimensione fissa (OK)
− Pass-through (OK)
Varie tipologie di accesso
− IDE
− SCSI
Partner Technical Consultant
SQL Server Consolidation
Database level consolidation
Più database vengono consolidati in una singola istanza

Sicurezza, gestione, compatibilità da progettare con attenzione

Potrebbe richiedere modifiche alle applicazioni o script

Costi di gestione inferiori

Miglior isolamento delle risorse tramite Resource Governor
Virtual
Machines
Instances
Sales_1
Consolidate_1
Marketing_1
Online_Sales
ERP_10
ERP_10
Partner Technical Consultant
Databases
DB_1
DB_2
DB_3
Higher Density, Lower Costs
Higher Isolation, Higher Costs

SQL Server Consolidation
Higher Isolation, Higher Costs
Instance level consolidation
Più istanze vengono eseguite su un unico server

Isolamento completo dello schema e della security

Isolamento parziale della gestione delle risorse

IO, Memoria e CPU sono limitate all’interno di una singola macchina
Partner Technical Consultant
Virtual
Machines
Instances
Sales_1
Databases
Consolidate_1
Marketing_1
Online_Sales
ERP_10
ERP_10
DB_1
DB_2
DB_3
Higher Density, Lower Costs

SQL Server Consolidation Options
Virtual Machine consolidation

Isolamento totale tra le varie applicazioni (SO, SQL Server, etc)

Alta affidabilità molto semplice da raggiungere

Gestione dello storage molto flessibile

Meno hardware, ma più sistemi operativi da gestire

Maggior utilizzo delle risorse hardware
Partner Technical Consultant
Virtual
Machines
Instances
Sales_1
Databases
Consolidate_1
Marketing_1
Online_Sales
ERP_10
ERP_10
DB_1
DB_2
DB_3
Higher Density, Lower Costs
Higher Isolation, Higher Costs

Confronto tra le varie opzioni
Virtualizzazione
Istanza
Sicurezza
Resource Management
Densità
Migrazione
Altà affidabilità
Legenda
Best
Better
Good
Fonte : http://msdn.microsoft.com/en-us/library/ee819082.aspx
Partner Technical Consultant
Database
Sql Server e Hyper-V
Monitoring
Partner Technical Consultant
Monitoraggio CPU
•
E’ meglio utilizzare i counter installati da
Hyper-V per ottenere una maggiore
accuratezza dei dati :
− Hyper-V Hypervisor Logical Processor
− Hyper-V Hypervisor Root Virtual Processor
− Hyper-V Hypervisor Virtual Processor
Partner Technical Consultant
Monitoraggio Dischi
•
•
Il monitoraggio dei dischi Pass-t. Va fatto
dalla macchina host utilizzando il counter
Phisical Disk, oppure dalla macchina
Guest
Il monitoraggio dei dischi VHD va fatto
dalle macchine guest per evitare eventuali
dati aggregati sulla LUN
Partner Technical Consultant
Monitoraggio Network
•
•
Host
− \Network Interface(*)\Bytes Total/sec
− \Network Interface(*)\Output Queue Length
Guest
− Nel caso in cui i counters della macchina host
risultino busy è possibile controllare anche :
− \Hyper-V Virtual Network Adapter(*)\Bytes/sec
Partner Technical Consultant
Best practices,
osservazioni e
considerazioni finali
Partner Technical Consultant
Best Practices e considerazioni finali
•
Eseguire Sql Server all’interno di Hyper-V Guests è una
buona scelta :
− Quando posso raggiungere un ottimo risultato sulla
macchina virtuale senza impattare troppo sulla CPU
− Hyper-v trae beneficio dalla nuova generazione di
processori (es. SLAT)
− Quanto le limitazioni delle Guest VM non diventano un
problema per i carichi di lavoro di Sql Server
− Un adeguato sizing dell’hardware è fondamentale
per Sql Server
− Test/Monitor dei carichi di lavoro
Partner Technical Consultant
Best Practices e considerazioni finali
•
Installazione degli Integration Components
− Migliori IO performance
− Riduce l’overhead nell’accesso alla memoria
•
Passthrough e Fixed Size VHD per performance I/O
migliori
−
−
−
•
Un sizing adeguato della memoria RAM
−
•
IO Performance Impact è minimo
SQL IO performance e sizing vanno comunque effettuate
Dynamic VHD non raccomandati
La memoria viene assegnata in maniera statica alle VM e può essere
modificata solo quando la macchina è spenta
CPU Affinity non supportata
Partner Technical Consultant
Best practices e considerazioni finali
•
•
•
•
•
Hyper-V Guests VM limitate a 4 cores e 64GB RAM. Gli altri
requisiti e limiti di Guest e Host sono disponibili qui :
http://technet.microsoft.com/en-us/library/ee405267(WS.10).aspx
Assicurarsi di avere un adeguato numero di CPU fisiche da
assegnare alle varie macchine virtuali. L’overcommit delle CPU
può causare un overhead eccessivo.
Carichi di lavoro molto intensi dal punto di vista network potrebbero
risultare in un overhead del carico CPU. Un accurata fase di
testing in questi casi è suggeritaLa virtualizzazione di Sql Server è possibile anche con prodotti di
terze parti : http://support.microsoft.com/kb/956893/en-us
L’overhead è minimo quando Sql Server viene eseguito in
ambiente virtuale. I dischi Pass-through e i VHD a dimensione
fissa offrono ottime prestazioni, con un leggero vantaggio per i
dischi Pass-throught. I VHD però garantiscono una maggiore
semplicità in fase di migrazione
http://download.microsoft.com/download/d/9/4/d948f981-926e40fa-a026-5bfcf076d9b9/SQL2008inHyperV2008.docx
Partner Technical Consultant
Best practices e considerazioni finali
•
•
•
•
Utilizzare driver sintetici. Evitare driver emulati.
Seguire sempre le pre-deployment best practices di Sql
Server prima di virtualizzare :
http://technet.microsoft.com/it-it/library/cc966412(enus).aspx
Utilizzare gli stress test anche prima di virtualizzare
− SQLIO.Exe (Microsoft)
− IOMeter (Open Source)
− SQLIOSim (Microsoft)
La virtualizzazione di Sql Server è possibile anche con
prodotti di terze parti :
http://support.microsoft.com/kb/956893/en-us
Partner Technical Consultant
Riferimenti
•
Consolidation Guidance for SQL Server 2008
−
•
Running SQL 2008 in Hyper-V Environment
−
•
•
−
http://support.microsoft.com/?id=956893
−
http://blogs.msdn.com/psssql/archive/2008/10/08/sql-server-support-in-a-hardwarevirtualization-environment.aspx
Windows Virtualization Validation Program
http://www.microsoft.com/windowsserver2008/en/us/virtualization-consolidation.aspx
Hyper-V Technet center
−
•
http://windowsservercatalog.com/svvp.aspx?svvppage=svvp.htm
Windows Server Hyper-V site
–
•
http://www.msarchitecturejournal.com/pdf/Journal18.pdfhttp://msdn.microsoft.com/en-us/architecture/dd393309.aspx
Support Policies of SQL Server in virtualized environments.
−
•
http://sqlcat.com/whitepapers/archive/2008/10/03/running-sql-server-2008-in-a-hyper-venvironment-best-practices-and-performance-recommendations.aspx
Green IT in Practices: SQL Server Consolidation in Microsoft IT
−
•
http://msdn.microsoft.com/en-us/library/ee819082.aspx
http://technet2.microsoft.com/windowsserver2008/en/servermanager/virtualization.mspx
SQL Server 2008 Business Value Calculator:
−
www.moresqlserver.com
Partner Technical Consultant
Partner Technical Consultant
Scarica

Virtual Machine consolidation - Center