live migration of virtual machines

34
Live Migration of Virtual Machines Departamento de Eletrônica – Escola Politécnica Programa de Engenharia Elétrica – COPPE Rafael dos Santos Alves http://www.gta.ufrj.br

Upload: deanne

Post on 05-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Live Migration of Virtual Machines. Departamento de Eletrônica – Escola Politécnica Programa de Engenharia Elétrica – COPPE. Rafael dos Santos Alves. http://www.gta.ufrj.br. Informações. Autores Christopher Clark Keir Fraser Steven Hand Jacob Gorm Hansen Eric Jul Christian Limpach - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Live Migration of Virtual Machines

Live Migration of Virtual Machines

Departamento de Eletrônica – Escola PolitécnicaPrograma de Engenharia Elétrica – COPPE

Rafael dos Santos Alves

http://www.gta.ufrj.br

Page 2: Live Migration of Virtual Machines

Informações

• Autores• Christopher Clark• Keir Fraser• Steven Hand• Jacob Gorm Hansen• Eric Jul• Christian Limpach• Ian Pratt• Andrew Warfield

• Publicação• Second Symposium on Networked Systems Design and

Implementation (NSDI'05)

Page 3: Live Migration of Virtual Machines

Motivação

• Balanceamento de carga• Manutenção do sistema• Separação entre hardware e software

• Vantagens em utilizar máquinas virtuais• Evita dependências residuais• Permite transferência de estado na

memória de forma consistente• Permite separação de preocupações entre

operadores e usuários

Page 4: Live Migration of Virtual Machines

Objetivos

• Minimizar tempo “fora do ar”

• Tempo total de migração

• Manter sem interrupções serviços ativos

Page 5: Live Migration of Virtual Machines

Abordagens Prévias

• Collective• Mobilidade para usuários que utilizam

diferentes hosts• Conexões lentas• Interrupção do sistema operacional

• VMware• Migração de processo• Dependência residual

Page 6: Live Migration of Virtual Machines

Questões de projeto

• Memória transferida• Minimizar tempo “fora do ar” e tempo total

de migração• Recursos locais• Memória• Disco• Interfaces de rede• ...

Page 7: Live Migration of Virtual Machines

Memória transferida

• Três fases de transferência• Push• Máquina fonte continua executando• Páginas são transferidas e em caso de

modifcação retransferidas• Stop-and-copy• Simples• Tempo “fora do ar” inaceitável

• Pull• Nova máquina executa• Páginas faltantes são puxadas pela rede

Page 8: Live Migration of Virtual Machines

Abordagem utilizada

• Uma fase push iterativa e limitada• n rodadas• Páginas modificas na rodada i-1

transferidas na rodada i• Uma pequena fase stop-and-copy• Pequeno conjunto de páginas

frequentemente modificadas

Page 9: Live Migration of Virtual Machines

Recursos locais

• Recursos de rede• Manter conexões abertas• Respostas ARP não solicitadas

• Armazenamento local• Assume NAS (Network Attached Storage)

Page 10: Live Migration of Virtual Machines

Visão geral

Page 11: Live Migration of Virtual Machines

Writable Working Sets (WWS)

• Maior influência no desempenho • Sobrecarga de transferência de memória

• Conjunto de páginas frequentemente alteradas

• Devem ser transferidas via stop-and-copy

Page 12: Live Migration of Virtual Machines

Medição do WWS

Page 13: Live Migration of Virtual Machines

Medição do WWS (2)

Page 14: Live Migration of Virtual Machines

Medição do WWS (3)

Page 15: Live Migration of Virtual Machines

Medição do WWS (4)

Page 16: Live Migration of Virtual Machines

Medição do WWS (5)

Page 17: Live Migration of Virtual Machines

Questões de implementação

• Migração gerenciada vs. Automigração• Limitação dinâmica de taxa• Alteração frequente das páginas• Otimizações para paravirtualização• Interrupção de processos “trapaceiros”• Liberação páginas

Page 18: Live Migration of Virtual Machines

Migração gerenciada

• Daemons na VM de gerenciamento• Dirty bitmap• Páginas sombra• Tabelas de páginas marcadas como

somente leitura• Tentativas de modificação interceptadas

pelo Xen• Reiniciadas ao final de cada iteração

Page 19: Live Migration of Virtual Machines

Automigração

• Realizado pelo SO sendo migrado• Dificuldade em definir um checkpoint• Solução: stop-and-copy de dois estágios• Interrupção dos processos (exceto os de

migração)• Páginas alteradas são enviadas para o

dirty bitmap• Transferência das páginas alteradas no

primeiro estágio

Page 20: Live Migration of Virtual Machines

Limitação dinâmica de taxa

• Altas taxas de transferência• Impacto nos serviços

• Adaptação da largura de banda• 1ª fase de pré-cópia com menor banda

possível• Para cada fase seguinte cálculo da taxa de

alteração de páginas• Banda para próxima rodada igual a taxa de

alteração mais uma constante (50 Mb/s)• Fase stop-and-copy com banda máxima

Page 21: Live Migration of Virtual Machines

Alteração frequente das páginas

• Algumas páginas com alta frequência de alteração

• Páginas modificadas na última rodada não são transferidas na rodada atual

• Alteração de páginas em aglomerados• Varredura da memória física em ordem

pseudo-aleatória

Page 22: Live Migration of Virtual Machines

Otimizações para parvitualização

• Interrupção de processos “trapaceiros”• Alteram a memória mais rápido do que o

processo de pré-cópia• Thread de monitoramento• Processos com mais de 40 faltas de

páginas movidos para o modo suspenso• Não deve interromper serviços importantes

Page 23: Live Migration of Virtual Machines

Interrupção de processos

Page 24: Live Migration of Virtual Machines

Otimizações para parvitualização

• Liberação de páginas• SO típicos possuem páginas livres• Não precisam ser copiadas• Caso sejam necessárias• Faltas de páginas• Transferidas do disco• Aumento do custo

Page 25: Live Migration of Virtual Machines

Avaliação

• 2 servidores Dell PE-2650• Dual Xeon 2 GHz• Somente 1 CPU utilizada• HyperThreading habilitado

• 2 GB de memória RAM• Interface de rede Broadcom TG3• Comutador Gigabit Ethernet• Servidor NAS NetApp F840• XenLinux 2.4.27

Page 26: Live Migration of Virtual Machines

Servidor web simples

• Apache 1.3• Memória alocada de 800 MB

Page 27: Live Migration of Virtual Machines

Servidor web complexo

• SPECweb99• 30% geração de conteúdo dinâmico• 16% operação HTTP POST• 0,5% de scripts CGI• Geração de logs• QoS• Banda agregada de 320 kb/s

Page 28: Live Migration of Virtual Machines

Servidor web complexo (2)

Page 29: Live Migration of Virtual Machines

Servidor de baixa latência

• Quake 3• Memória alocada de 64 MB• Seis jogadores

Page 30: Live Migration of Virtual Machines

Servidor de baixa latência (2)

Page 31: Live Migration of Virtual Machines

Servidor de baixa latência (3)

Page 32: Live Migration of Virtual Machines

Carga “diabólica”

• Mmuncher• Escrita em memória mais rápida que a

transferência pela rede• Memória alocada de 512 MB• Programa em C escreve em área de 256

MB

Page 33: Live Migration of Virtual Machines

Carga “diabólica”

3,5 segundosde downtime

Page 34: Live Migration of Virtual Machines

Trabalhos Futuros

• Gerenciamento em clusters• Redirecionamento em WANs• Migração de blocos de disco