2. CÓDIGO DA SESSÃO: VIR312
Dicas e Truques de
Performance: Como obter o
maximo do Windows Server
2008 R2 Hyper-V
Fabio Hara
IT Pro Evangelist
Microsoft Brasil
Rodrigo Immaginário
MVP Security
Conselho de Arquitetos de
Infraestrutura - CAI
3. Objetivos desta Sessão
Percepções do Mercado
Informações públicas disponíveis
Dicas de performance do Hyper-V
Pontos Principais
Aprenda como identificar contenções de recurso
Hyper-V está pronto para empresas e é melhor com
Windows Server 2008 R2
3
4. Observações vindas do mercado
Nossos Clientes e Parceiros
Hyper-V não funciona Experimente o Hyper-V
com muitas VM’s por R2, você vai ter uma
servidor (Não consigo ter grande diferença. Não
densidade) compare com o R1 do
Hyper-V
Hyper-V não suporta Windows Server 2008 R2
pressão tem uma performance
incrível
O Hyper-V R2 é uma
Não consigo rodar plataforma robusta para
aplicações críticas como aplicações críticas
SQL, SharePoint e Microsoft e de outros
Exchange no Hyper-V fabricantes também
4
5. Quebrando a Performance – Hyper-V
Performance iSCSI com placa de rede Intel® 82599 10G NIC com VMDq,
Plataforma Intel® Xeon 5580, Windows Server 2008 R2 e Hyper-V R2
Read/Write IOPs and Throughput Test
• 715k IOPs -- 10GbE line rate
• Intel VMDq e Microsoft VMQ
aceleram o iSCSI para a VM
• Hyper-V atinge throughput nativo
em 8k e muito mais
• Pronto para o futuro: Escala com
novas plataformas, SO’s e placas
Ethernet
• https://msevents.microsoft.com/CUI/
WebCastEventDetails.aspx?culture=
en-
US&EventID=1032432957&Country
Code=US
Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance
of Microsoft Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect
5actual performance. Buyers should consult other sources of information to evaluate the performance of systems or components they are
considering purchasing.
6. Teste de Performance da Unisys com
Live Migration
http://www.microsoft.com/presspass/events/teched/docs/unisys.doc
6
7. Performance em SQL Server: SLAT
Configuração: Resultados:
• SO: Microsoft® Windows Server® 2008 R2 • Capacidade de carga melhorados com
Hyper-V™ consolidação
• Hardware: HP DL585 (16 core) com SLAT • Escalabilidade quase linear de throughput
(Second Level Address Translation), storage sem CPU over-commit
HP EVA 8000 • Performance melhorada com Windows
• Maquinas Virtuais: 4 VP e 7 GB RAM por Server 2008 R2 e arquitetura de
VM; VHD com tamanho fixo processador com SLAT
Throughput
Escalabilidade de Instâncias Virtuais (Batch requests/sec)
% CPU
80 Escalabilidade quase linear CPU over-commit 3500
Sem CPU over-commit
70 3000
60 Heavy
2500
Load
50
2000
40
) 1500
Moderate
Load
30
1000
20
500 Low
10 Load
0 0
1VM 2VM 3VM 4VM 5VM 6VM 7VM 8VM
Batch req/sec %CPU Relative Throughput
7 Windows Server 2008 R2 Windows Server 2008 R2 Batch requests/sec/%CPU Relative Throughput for
Windows Server 2008 R2 Windows Server 2008
8. http://virtualrealitycheck.net/
Testes sobre como diferentes Hypervisors gerenciam
cargas de trabalho de Terminal Servers e VDI
Fase II do Projeto VRC utiliza Citrix XenServer 5.5,
Windows Server 2008 R2 Hyper-V e VMware vSphere 4
Update 1 (build 208167)
Resultados atuais comparam Terminal Servers em VMs
Acesse este relatório em http://virtualrealitycheck.net
8
10. Qual o significado disto?
Hyper-V executa TS (mesmo no W2K3) muito bem
A diferença “perceptível” de performance entre ESX e
Hyper-V não existe
Hyper-V executa RDS muito bem!
Os testes simularam um ambiente real. Os resultados
podem ser diferentes se executados no seu ambiente
Veja o documento de metodologia de Benchmarking
em:
http://virtualrealitycheck.net/
10
13. #1
Conheça os 4 pilares de CPU MEM
recursos do seu servidor
DISK NET
13
14. Os 4 Pilares*
Initial Indicators of Performance
CPU: CPU MEM
Processor(*)% Processor Time > 75%
Memory:
MemoryAvailable MBytes < 100MBs DISK NET
Disk
LogicalDisk(*)Avg Disk sec/Read|Write >
15ms
Network
Network Interface(*)Output Queue
Length > 2
14
15. Processador
O G2C (Guest to Core) é o guia para determinar
aprox quanto processamento será necessário
para cada instância virtual
Baixo Workload de Guest 2:1 2 guests por Core
Médio Workload de Guest 1:1 1 guest por Core
Alto Workload de Guest 1:2 1 guest para cada 2 Cores
Nota: isto não é crítico, pois fatores como
configurações de disco afetam muito mais a
performance das VMs
15
16. Utilize contadores de performance #2
do Hyper-V
Hyper-V Hypervisor Logical Processor(*)
% Total Run Time Físicos
Hyper-V Hypervisor Virtual Processor(*)
% Guest Run Time
Virtuais
Bom: menor que 75%
Atenção: maior que 75%
Crítico: maior que 85%
Evite o Task Manager!
Evite o % Processor Time!
16
17. Utilização de Processador do Hyper-V
O contador de performance % Processor Time não é preciso. Utilize o %
Guest Run Time e % Total Run Time
Partição Pai (máquina física)
2 Root Partition % Processor Time
Virtual BizTalk
2% 5% 4% 3%
% Processor Time 1
100% 100%
3
Virtual BizTalk 90% 90% 90% 90%
1
% Processor Time Hyper-V Hypervisor Logical Processor(*)%
Guest Run Time
100% 100%
4
95% 95% 95% 95%
Hyper-V Hypervisor Logical Processor(*)%
Total Run Time
18. Análise a Taxa de Processamento #3
Taxa 1 para 1 Taxa 2 para 1
1 2
BizTalk Server BizTalk Server BizTalk Server BizTalk Server
Virtual Processors Virtual Processors Virtual Processors Virtual Processors
0 0 0 1 0 1
BizTalk Server BizTalk Server BizTalk Server BizTalk Server
Virtual Processors Virtual Processors Virtual Processors Virtual Processors
0 0 0 1 0 1
0 1 2 3 0 1 2 3
Processadores Lógicos Processadores Lógicos
Sub Utilizado? Super Utilizado?
18
19. Instale o Integration Components #4
Instale os Integration
Components (ICs)
Grande melhora em
performance
Verifique pelo Virtual
Machine Bus no
Device Manager
ICs não é
necessário para
WS08 R2 como
guest
19
20. Use VMs Windows 2008 #5
Use o Windows Server 2008 (ou superior) como SO
Guest
Enlightenments reduzem o custo de funções do SO
como por exemplo gerenciamento de memória
Chamadas HyperCalls diretas para o Hypervisor
Not optimal Optimal
20
21. Use Processadores com SLAT #6
Utilize hardware que suporte o Second Level Address Translation
(SLAT)
O SLAT é um hardware otimizado para ambientes virtualizados
Denominação da AMD - Rapid Virtualization Indexing
Processadores Phenom e Opteron
Algumas vezes chamado de Nested Page Tables (NPT)
Denominação da Intel - Extended Page Tables (EPT)
Processadores baseados no Nehalem (Intel Core i7 para desktops e série
Xeon 5500 para servidores) The Virtual / Process view The Physical / real view
Virtual Machine 1 Physical Memory Pages
Virtual Machine 3
Virtual Machine 1
Hyper Visor
21 Operating System
22. Análise de Processamento com SLAT
Comparação entre SQL Server físico para virtual
Utilização de processadores físicos possui
diferença de aproximadamente 1%!
Teste com Intel Nehalem x5550 com 16 LPs
WS08 R2 rodando com WS08 R2
Std 10% of Outliers
Processor(*)% Processor Time Min Avg Max Deviation Removed
Physical SQL 4 14 100 14 12
Hyper-V Hypervisor Logical 3 15 23 3 14
Processor(_Total)% Total Run Time
Virtual SQL 4 22 35 5 21
22
23. Feche a Janela dos Gerenciadores #7
Hyper-V Manager e Sessões VMConnect consomem recursos.
Feche ou minimize o Hyper-V Manager durante os testes.
Feche as janelas de sessões VMConnect durante os testes.
23
24. Use Drivers de Vídeo Básicos #8
Evite drivers de placas de vídeo de alta
performance.
Drivers de alta performance (WDDM) causam
muitas traduções de endereçamento virtual
para físico
Optimal
24
25. Evite Utilizar a Root Partition #9
Evite utilizar serviços na root partition (maquina
host)
X
DHCP
DNS
IIS
Directory
Services
…
25
26. Tempo de Resposta do Disco #10
ainda Prevalece!
LogicalDisk(*)Avg. Disk Sec/Read|Write
Bom: less than 10ms (0.010)
Alerta: greater than 15ms (0.015)
Crítico: greater than 25ms (0.015)
LogicalDisk(*)Disk Transfers/sec
Analisar o IOPS na perspectiva do SO
Para referência:
• Único spindle de 5400rpm: ~14ms raw seek time com
aprox 200 IOPS
• Floppy 3.5”: ~900ms* com aprox 1 IOPS
26
27. Solid State Surpreende #11
Hyper-V executa
E: = SSD
muito bem em Solid Higher
Is
State Disks (SSD) Better
Exemplo: SSD possui
SSD é capaz de mais
oferecer mais I/O’s throughput!
por segundo (IOPS)
com tempos mais Lower
SSD possui
rápidos de resposta Is
Better tempo de
Sem muita lentidão resposta
com Hyper-V R2! mais
rapido
Menos de 1ms
27 gasto no Hyper-V
28. Comparação de Disco com Hyper-V R2*
Bom: Discos VHDs Fixos e Dinâmicos possuem
praticamente mesma performance agora.
Ainda melhor: Pass-Through é o melhor para
performance.
Isso Importa? VHD’s dinâmicos gastam menos
de 1ms no Hypervisor!
28 David Bermingham's blog - http://clusteringformeremortals.com/
29. Storage
Performance de disco é o maior fator que afeta
performance de virtualização
Host Físico – disco dedicado
VHDs – discos separados
SE a tolerância a falhas não for requisito obrigatório
(ex: servidores de teste)
RAID-0
SE a tolerância a falhas for requisito obrigatório (ex:
produção)
RAID-1 (inclui RAID-10)
Não utilize RAID-5 para volumes com VHDs devido ao
overhead de escrita de paridade
29
30. Configuração de Discos
Volume para Sistema Operacional
2 discos dedicados em RAID-1
Volumes de Dados / VHD
SAS 2,5” ou 3,5” – 10k ou 15k – Scsi disk
Controladora RAID
Controladoras “onboard” normalmente possuem
performance limitada
Prefira controladoras adicionais
256MB+ Battery Backed Cache
Read-ahead cache
Write-back cache
Queda de energia pode ocasionar corrupção de dados caso esteja
habilitado. Inclua no-breaks
Suporte a RAID 0, 1 e 10
Suporte a 128k+ Max strip size (pref. 256k)
30
31. Synthetic SCSI Controller
Melhor performance para I/O de Storage –
redução de overhead de CPU em relação ao
Emulated IDE Device
Depende de Integration Services
Para volumes com I/O intensivo – attach de
discos de VHD´s para cada Synthetic SCSI
Controller
31
32. Criando Partições para Storage
Selecione o tamanho correto de cluster ao
formatar as partições:
Perfil de I/O de VMs Tamanho de Cluster
VMs em Geral 16k
Alta taxa de escrita da VM 64k
Windows Server 2008 e R2 automaticamente faz
alinhamento de partição em 1024k, não sendo
necessário fazer alinhamento manual
CUIDADO: Pass-through de VMs Windows Server
2000 e/ou 2003
32
33. Desfragmentar?
Operações de escrita de
• Fragmentação
bloco de dados em do Host Físico
arquivos VHD são Nível 1
baseadas em FIFO (First-in
First-Out). Como resultado
• Fragmentação
os dados se tornam do VHD
fragmentados com o Nível 2
tempo
Realize regularmente • Fragmentação
operações de no sistema de
desfragmentação para Nível 3 arquivos da VM
compactar os blocs de
33dados
34. Dicas Adicionais
Se voce possuir VMs Windows Server 2003 (ou
anteriores) então desabilite o recurso de File
System Last Access Time para melhorar
performance
reg add
HKLMSystemCurrentControlSetControlFil
eSystem /v NTFSDisableLastAccessUpdate /t
REG_DWORD /d 0x1 /f
Desabilite o antivírus da monitoração de
volumes que contenham dados do Hyper-V
(VHD, snapshot, etc)
34
35. Evite Snapshots #12
Evite usar snapshots do Hyper-V, menos no
WS08 R2.
Muito bom para backups rápidos, mas…
Snapshots requerem overhead adicional para
monitorar alterações
35
36. Encadeamento de Snapshots
Performance - R1 vs R2
A performance de encadeamentos de snapshots
é melhor no WS08 Hyper-V R2
Maior é
melhor!
Virtual Hard Disk Performance
36
37. Utilize Pass-Through com SCSI #13
I/O passa direito para o
storage stack na root
partition.
Melhor para serviços
com I/O alto, como SQL e
Exchange.
37
38. Utilize VHDs de Tamanho Fixo #14
Se o disco de Pass-Through não for possível
então utilize VHDs de tamanho fixo
Melhor para performance, porém consome mais
espaço em disco da storage do que o VHD
dinâmico.
38
39. Desabilite Mídia Removível #15
Desabilite os drivers de mídias removíveis
(floppy, optical drive, etc.) quando não estiver
em uso.
Mídias removíveis são periodicamente
acessadas
39
40. Memória para a Root Partition #16
Deixe pelo menos 512MBs de RAM para a root
partition. 1GB ou mais é recomendado.
A mesma regra é válida para Server Core Edition
40
41. Dimensione a Memória #17
MemoryAvailable MBytes: Mede a memória
RAM disponível
Bom: Maior que 10% da RAM
Atenção: Menor que 10% da RAM
Crítico: Menor que 100MBs
Aplicável a todos os computadores (físicos e
virtuais).
Picos de Pages/sec isolados não significam uma
condição de memória baixa
Leia “The Case of the Phantom Hard Page Faults”
41
42. Planejamento de Capacidade de Memória
Mais memória Root Partition (host físico) – 16GBs
de RAM
RAM permite Root Partition
(physical host)
utilizar ativamente Virtual Guest Virtual Guest
RAM: 4GBs
a memória – RAM: 2GBs
Committed Committed Memory
evitando paginação Memory
em disco
Committe
Pagefile.sys Memory
d Pagefile.sys
42
43. Planejamento de Capacidade de Memória
Utilize Root Partition (Host Físico) – 16GBs
de RAM
“MemoryCommit Root Partition
(physical host)
Virtual Guest
ted Bytes” como RAM: 4GBs
ponto inicial para Committed Memory
Planejamento
de Memória Computador Físico
RAM RAM: 2GBs
Committed Pagefile.sys
Memory –
2GBs
Committed
Pagefile.sysMemory –
2GBs
43
44. Evite Gargalos de Rede #18
Network Interface(*)Output Queue Length
Bom: menor que 1 em média
Atenção: maior que 1 em média
Crítico: maior que 2 em média
Diagnóstico com Resource Monitor, xPerf, etc.
Adicione mais placas de rede se ocorrerem
gargalos
Dedique pelo menos 1 placa 1Gb para Live
Migration.
Ref: Hyper-V: Live Migration Network Configuration Guide
44
45. Evite Legacy Adapters #19
Utilize synthetic placas de rede (padrão).
Evite legacy placas de rede.
Legacy adapters são ideiais para compatibilidade (PXE
boot, SO sem suporte p/ ICs, etc.), mas não possui
mesmo desempenhoque a synthetic placa de rede.
Baixo desempenho
Ideal
45
46. Utilize Recursos de Rede no R2 #20
O Virtual Machine Queues (VMQ) reduz a sobrecarga
reduzindo o custo de roteamento de pacotes de
entrada, cópias de paths mais otimizadas e melhor
distribuição de interrupções.
O Chimney offload ajuda para conexões de maior
duração, além de melhorar o overhead reduzindo
cópias de path.
TCP Checksum offloading
Large Send Offload (LSOv1 e LSOv2)
Requer o Windows Server 2008 R2
Veja o seguinte arquivo para maiores informações:
Networking Deployment Guide: Deploying High-Speed
46 Networking Features
47. Divisão de Placas de rede
Configuração de Cluster e Cluster
Acesso às VMs Gerenciamento Live migration Comentários
Host Shared Volumes
4 placas de rede placa virtual de
placa de rede 2 placa de rede 3 placa de rede 4 Recomendado
com 1 Gbps rede 1
3 placas de rede
com 1 Gbps; 2 placa virtual de placa de rede 2
placas em placa virtual de rede 1 com placa de rede 2 com banda
Suportado
teaming para rede 1 banda restrita (teamed) restrita até 40%
agregação de até 10% (teamed)
link (private)
placa virtual de
3 placas de rede placa virtual de rede 1 com
placa de rede 2 placa de rede 3 Suportado
com 1 Gbps rede 1 banda restrita
até 10%
placa virtual de
placa de rede 2
2 placas de rede placa virtual de rede 1 com
placa de rede 2 com banda Suportado
com 10 Gbps rede 1 banda restrita
restrita até 50%
até 1%
2 placas de rede
placa de rede 2
com 10 Gbps; 1 placa virtual de placa de rede 2 placa de rede 3
com banda Suportado
placa de rede rede 1 (10 Gbps) (1 Gbps) (10 Gbps)
restrita até 50%
com 1 Gbps
2 placas de rede
com 10 Gbps; 2 placa virtual de placa de rede 2 placa de rede 3 placa de rede 4
Suportado
placas de rede rede 1 (10 Gbps) (1 Gbps) (1 Gbps) (10 Gbps)
47 1 Gbps
com
48. PAL v2.0 Beta 1! #21
Ferrament de análise de logs
de contadores de
performance (*.blg), além de
criar relatórios HTML para
diagnósticos mais fáceis
Facil análise de contadores
Compatível com contadores
do Hyper-V
Open source e gratuito
http://pal.codeplex.com
48