38

Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Embed Size (px)

Citation preview

Page 1: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard
Page 2: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Compare as Tecnologias de Memória no VMware e MicrosoftVIR311

Fabio HaraEspecialista de InfraestruturaMicrosoft Brasil@fabiohara

Alexandre GoudardTeam Lead – ProConsult BrazilDell | IT Computing Services

Page 3: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Agenda

Memória e Virtualização Técnicas de Otimização de MemóriaHyper-V Dynamic Memory

Arquitetura e ConceitosDemoImpacto no sistema

Page 4: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Tecnologia e TerminologiaParent Partition Service Console

VHD (Virtual Hard Disk) VMDK (Virtual Machine Disk)

Live Migration vMotion

Failover Clustering VMware HA (High Availability)

CSV (Clustered Shared Volumes) VMFS

Coordinator Node Primary Node

Core Parking Distributed Power Management

Pass-Through Disks Raw Device Mapping

VM Affinity VM Affinity

GH

Page 5: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Windows Server Backup (WSB) Consolidated Backup

Dynamic Disk Thin Provisioning

Expand Disk/Volume Volume/Extent Grow

Virtual Switch Standard/Distributed Switch

Hyper-V Manager VI Client

VM IDE boot VM SCSI

Integration Components VMware Tools

Hot Add Disks Hot Add Disks

Tecnologia e Terminologia (cont…)

GH

Page 6: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

System Center Virtual Machine Manager vCenter

Quick Storage Migration Storage vMotion

Distributed Resource Scheduler (DRS)

Self Service Portal Web Access

Templates Templates

Clones Full Clones

P2V / V2V Converter

Virtual Machine Servicing Tool (VSMT) Update Manager

Performance and Resource Optimization (PRO)

Tecnologia e Terminologia (cont…)

GH

Page 7: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Virtualização e Memória

Page 8: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Virtualização e Memória

Quanto de memória um servidor realmente precisa?

IIS Server?Print server?File server?Banco de dados?Servidor de email?

GH

Page 9: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Ninguém quer Dimensionar a Memória de uma VM

“Novas VMs utilizam 1GB de RAM [não importa o que a VM esteja rodando]. Eu apenas forneço mais memória se as pessoas reclamam de performance”

“Todas as VMs usam 4GB de RAM [não tenho idéia do que acontece com a memória] e ninguém reclama”

“Eu configuro o mínimo requisitado pelo sistema e adiciono (50%, 100%, 150%, etc)”

“O fabricante me disse que a aplicação precisa de 4GB de RAM. Não tenho tempo de testar para saber se é verdade ou não”

GH

Page 10: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Virtualização e MemóriaMemória

Fator chave para a quantidade de VMs rodandoO recurso mais utilizado no sistema, porém o mais caro

Estatisticas na utilização de recursosCPU 10%Memória 40%Rede I/O <5%Disco I/O <5%

Requisitos de clientesDensidade máxima, sem sacrificar performanceManter consistência na performanceNão prover um recurso que não se encaixe em um ambiente de produção

GH

Page 11: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Técnicas Utilizadas

Memória

Transparent Page

Sharing (TPS)

Ballooning

Hypervisor Swapping Compressão

de Memória

GH

Page 12: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Transparent Page Sharing (TPS)

Utilizado em cenários com VM’s utilizando mesmo Sistema Operacional, mesmo aplicativo ou mesmo dadosHypervisor mantém apenas uma cópia dos dados redundantesUma tabela de Hash é mantida c/ possíveis paginas idênticasUtiliza técnica de Copy-on-Write para gerenciar escritas nas paginas compartilhadas

Uma cópia particular é mantida para cada VM que realiza uma escrita

Hashes de 4KB, mesmo para páginas grandes de 2MBBaixa probabilidade de encontrar paginas identicasOverhead para comparação bit-a-bit é maior com páginas de 2MB

G

Page 13: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Como FuncionaConteúdo

de PáginasVM 1 VM 2 VM 3 Função de

Hash

Valor doHash = “A”

A

B

G

Page 14: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Ballooning

Implantado dentro da VM (depende de um “device” driver)

Comunica com o Hypervisor e informa quando está sob pressão para obter mais memória

Quando o driver de Ballooning é “inflado” cabe ao SO da VM decidir quais páginas serão desalocadas da memória para satisfazer as requisições de alocação do Balloooning

G

Page 15: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Como Funciona

G

Page 16: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Compressão de Memória

Utiliza cache (por VM) para armazenar páginasMais rápido se comparado com swap de disco devido ao Disk I/O

G

Page 17: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Hypervisor Swapping

Memória-extra solicitada pela VM é redirecionada para paginação em discoElimina problemas das outras técnicas

Seleção de paginas que estarão fora do swapProblemas com dupla paginaçãoLatência

Ideal desde que utilizado com discos SSD

G

Page 18: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Gerenciamento de MemóriaProcessos não endereçam diretamente a memória físicaMemória física é apresentada para os processos do kernel e user-mode através de um espaço de endereçamento virtualCada processo tem acesso até a 8TB de espaço de endereçamento virtual

Paginas de Memória Virtual

Paginas de Memória Física

ProcessoProcessoProcesso

H

Page 19: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

ModificadoPáginas de memória que ainda não foram utilizadas durante algum tempo, mas precisam ser gravadas no disco antes que possam ser reutilizados

StandbyPáginas que não estão sendo usadas e foram escritas para o discoElas podem ser devolvidas a um processo se este precisar, mas também estão disponíveis para uso por outro processo

FreePáginas de memória que não estão em uso, mas ainda não foram “zeradas”

Gerenciamento de MemóriaH

Page 20: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Objetivos do Dynamic Memory

Altas taxas de consolidação de VMs com impacto mínimo de performance

Dependente de:Variação na utilização de memória, dependendo da carga de trabalhoO trabalho que você teve ao dimensionar corretamente da primeira vez

Funciona bem para cargas de trabalho de VMs de servidores e desktopsAdiciona um mínimo de overhead ao sistema

H

Page 21: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Dynamic MemoryHabilitado no Windows Server 2008 R2 SP1

HYPER-V host deve rodar R2 SP1ICs da Virtual Machine com R2 SP1 versão (7601)

Permite que a memória de host possa ser vendida, porém entregue apenas no limite físico existenteDinamicamente gerencia a memória alocada para uma VM, baseado na demanda

Monitore de “Committed Bytes” dentro da VMUtiliza técnica de “hot add” para adicionar memoryUtiliza técnica de “memory ballooning” para remover a memória

Buffer configurável para as necessidades de memória de cache para as VM’sPermite que voce priorize a memoria de cada VM

H

Page 22: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Como funciona

H

Page 23: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Conceitos de Dynamic Memory

Demanda de Memória:Qdade de memória que uma VM necessitaDinamicamente calculada por VM

Buffer de Memória:Para satisfazer necessidade de cache para a VMConfigurável Online por VM

Buffer de Memória

Demanda de Memória

H

Page 24: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Conceitos de Dynamic MemorySLAs

Memória InicialMemoria é designada durante boot inicialMemória reservada para a VM

Máximo de MemóriaLimite de memória para a VM

Buffer de MemóriaTem como alvo o percentual para caching de memória

Memória“Apenas o necessário” de memória para a VM baseado na demanda + buffer

Buffer de Memória

Demanda de Memória

Máximo de Memória

Memória Inicial

Memória-alvo

H

Page 25: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Componentes do Dynamic MemoryComponentes do Host

Dynamic Memory VSPComunica com a VM (VSC) e corretores de solicitacao para os balanceadores de memória

Balanceador de MemóriaMonitora pressao de memória no Host e entre as maquinas virtuaisAloca memória para a VM. Baseado em em demanda de memória da VMRecupera memória das VMs que estejam em déficitDeppois da memória ser removida , a mesma é adicionada nas maquinas que necessitam

Dynamic Memory

VSP

Balanceador de

Memória

Memória Física do Sistema

Host HYPER-V

Virtualization Stack Memory Manager

H

Page 26: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Componentes do Dynamic MemoryComponentes da Virtual Machine

Dynamic Memory VSCDriver (DMVSC.sys) é instalado no guest via IC’s, mas não é habilitado até que o DM esteja habilitado também.Coleta e envia estatísticas de memória do Guest para o Balanceador de Memória do HostAdiciona memória na VM através de enlightenmentsRemove memória da VM através de ballooning

Dynamic Memory VSC

Windows Memory Manager

Endereco físico de

memória do Guest

(Máquina Virtual)

Page File

Virtual Machine

H

Page 27: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Adicionando MemóriaQuando a demanda de memória aumenta então o VSC requisita memória adicional via VSPVSC apresenta memória adicionada para o gerenciador de memória da VMDM não utiliza a técnica tradicional de HotAdd, porém utiliza no lugar o “HotAdd Enlightenments”Aparece como memória física dentro da VM

H

Page 28: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Removendo MemóriaUtiliza técnica de Ballooning para “inflar” o driver do espaço de endereçamento virtual não-paginadoO SO da VM ainda acredita que a memória esteja lá, porém o espaço de endereçamento é designado para o Kernel driverA memória virtual é liberada e/ou despaginada, e colocada em uma lista livre (free/zero)O VSC chama a função do Gerenciador de Memória para alocar a memória fora da lista livre (free/zero)A técnica de ballooning invalida os contadores de memória do Task Manager

H

Page 29: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Balanceamento de MemóriaPolítica de adicão de memória ativa

Memória é adicionada imediatamente quando a VM necessitar

Política de reclamacao de memória passivaMemória não é removida quando não há necessidade imediata de memóriaMemória inutilizada é coletada a cada 5 minutos

Banda de Pressão de MemóriaBanda calculada para a pressão da VM com objetivo de minimizar operacões de adicão/remocão

Pressão atual de memória

Banda alta de pressão de memória

Banda baixa de pressão de memória

H

Page 30: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Interface gráfica HYPER-V Manager

Assigned memory: Memória alocada para a VMMemory Demand: Demanda de Memória da VM (Memory/Committed bytes)Memory Status: Demanda de memória da VM + buffer

OK: memória corretamente configurada na VM para demanda + bufferWarning: memória corretamente configurada na VM para demanda, porém pequena no bufferCritical: memória incorretamente configurada na VM para demanda (VM está paginando)

H

Page 31: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Contadores do Monitor de Performance

Contadores específicos da VMHYPER-V Dynamic Memory VM/*

Current Pressure: demanda de memória da VM vs. Designada (em %)Physical Memory: memória designada para a VMGuest Visible Physical Memory: memória física que uma VM acredita que está designada para ela. Inclui memória fora do balloon

Contadores do Host HYPER-VHYPER-V Dynamic Memory Balancer/System Balancer

Available Memory: Memória física total disponível no HostAverage Pressure: Média de pressão de todas as VMs rodando atualmente no host

H

Page 32: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Integracão com SCVMM

Necessário SP1 do SCVMM 2008 R2Configuracões de Dm através de “Hardware Configuration”Prioridade de DM priority é gerenciado separadamente em “Advanced”

H

Page 33: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Por que a Microsoft não implementa Page Sharing?

Page Sharing funciona bem com páginas de 4K, porém eficiência é muito baixa com Large Memory Pages (2MB)

Páginas de 4K não conseguem usar com eficiência o Translation Lookaside Buffer (TLB) com Large Memory PagesUsar paginas de 4K ao invés de Large Memory Pages reduz a performance de servidores c/ SLAT em ~20%Windows Vista/7 e Windows Server 2008/2008R2 usam Large Memory Pages por padrão

SuperFetchPopula trechos de memória com aplicações que sejam frequentemente carregados, melhorando tempo de respostaReduz quantidade de “Zero Pages” reduzindo eficiência do Page SharingDesde o Windows XP é implementado o SuperFetchPreload (Linux)

Address Space Layout Randomization (ASLR)DLL`s de sistema e executáveis são carregados em areas diferentes da memória toda vez que o SO é inicializado

H

Page 34: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Por que a Microsoft não implementa Second Level Paging?

Se o Hypervisor não conseguir identificar quais páginas da VM devem ir para swap pode ocorrer interações desnecessárias com as políticas de gerenciamento da memoria nativa na VM

Ex: O sistema operacional da VM nunca vai fazer paginação das paginas do Kernel. O Hypervisor não consegue identificar quais são as paginas do Kernel e vai fazer swap

Possibilidades de dupla-paginaçãoVM fazendo swap e Hypervisor fazendo outro swap

Necessário pelo menos array de discos SSD

Tipo VelocidadeMemória DDR3-1600 5 nanosegundos

Memória DDR3-1333 6 nanosegundos

Memória DDR3-1066 7,5 nanosegundos

Memória DDR3-800 10 nanosegundos

Disco ~8milisegundos

Leitura obrigatória: Understanding

Memory Resource Management in

Vmware ESX Server

H

Page 35: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Conteúdo Relacionadohttp://technet.microsoft.com/pt-br/treinamento

www.microsoft.com/brasil/servidores

Blogs.technet.com/virtualization

www.vmware.com/resources/techresources/10206

GH

Page 36: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Recursos

Recursos para IT Pros

Recursos para Desenvolvedores

http://technet.microsoft.com/pt-br

http://msdn.microsoft.com/pt-br

Getthefreemobileappforyourphonehttp://gettag.mobi

Getthefreemobileappforyourphonehttp://gettag.mobi

Page 37: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

Não esqueça de preencher sua

avaliação onlinewww.teched.com.br/

avaliacao

Getthefreemobileappforyourphonehttp://gettag.mobi

Page 38: Compare as Tecnologias de Memória no VMware e Microsoft VIR311 Fabio Hara Especialista de Infraestrutura Microsoft Brasil @fabiohara Alexandre Goudard

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after

the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.