A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Black-box and Gray-box Strategies for Virtual Machine Migration

Apresentações semelhantes


Apresentação em tema: "Black-box and Gray-box Strategies for Virtual Machine Migration"— Transcrição da apresentação:

1 Black-box and Gray-box Strategies for Virtual Machine Migration
Departamento de Eletrônica – Escola Politécnica Programa de Engenharia Elétrica – COPPE Black-box and Gray-box Strategies for Virtual Machine Migration Rafael dos Santos Alves

2 Informações Autores Timothy Wood Prashant Shenoy Arun Venkataramani
Mazin Yousif Publicação 4th Symposium on Networked Systems Design and Implementation (NSDI) – 2007.

3 Motivação Data centers Hospedagem de sites web Sistemas empresariais
E-commerce Múltiplas aplicações por servidor Alocação de recursos para atender SLAs Popularização da virtualização

4 Data centers Flutuação dinâmica da carga de trabalho
Crescimento incremental Dependência do momento no dia Flash crowds

5 Virtualização em data centers
Redução da complexidade de gerenciamento Isolamento entre aplicações Consolidação de servidores Habilidade de remapeamento de servidores virtuais Tratamento de carga dinâmica Detecção de hotspots e início de migração realizados manualmente

6 Objetivo da proposta Automação
Monitoramento dos recursos do sistema (CPU, memória, rede) Detecção de hotspot Determinação do novo mapeamento de máquinas virtuais Duas técnicas Caixa preta Caixa cinza

7 Sandpiper Sistema para migração automatizada de servidores virtuais
Premissas Cluster de servidores heterogêneos Recursos das máquinas físicas conhecidos Cada PM (Physical Machine) executa um monitor de máquina virtual Cada VM (Virtual Machine) executa uma aplicação ou um componente de uma aplicação Armazenamento num sistema de arquivos em rede Existência de um mecanismo de migração Implementado no Xen

8 Sandpiper - arquitetura

9 Sandpiper - arquitetura
Nucleus Responsável por coleta de estatísticas de uso de recursos em um servidor físico Monitoring engine Coleta de estatísticas de CPU, interface de rede e swap de memória em cada servidor virtual Daemons nas máquinas virtuais No caso de abordagem caixa cinza Coleta de estatísticas em nível de SO e possivelmente de aplicação Plano de controle Executado num servidor separado

10 Sandpiper – plano de controle
Responsável pela inteligência do sistema Recebe informações periódicas de cada nucleus Componentes Profile engine Construção de perfis de utilização de recursos de máquinas físicas e virtuais Hotspot detector Análise dos perfis em busca de utilização agregada de algum recurso por um período suficientemente grande Migration manager Escolha das máquinas virtuais a serem migradas, para onde movê-las e quanto recurso alocar a cada máquina virtual

11 Monitoramento – caixa preta
CPU XenMon Análise da utilização da CPU no domínio 0 Entretanto, sobrecarga provocada por processamento de requisições de I/O de disco e de rede não são capturadas À carga de cada VM é adicionado um fator equivalente ao montante de operações de I/O realizadas Rede Monitoramento interface /proc/net/dev

12 Monitoramento – caixa preta
Memória Desafio Hipervisor só conhece a alocação total de memória da VM Solução possível Monitoramento com tabelas de páginas sombra Alta sobrecarga Solução Inferência Baseada na atividade de swap

13 Monitoramento – caixa cinza
Daemon instalado no sistema hóspede Monitoramento da interface /proc da VM Estatísticas em nível de SO de utilização de memória, CPU e rede Daemon de aplicação Possível em alguns casos Estatísticas a partir de logs de aplicação Possibilidade de detecção explícita de violações de SLA

14 Geração de perfis Perfil Caixa preta Caixa cinza
Descrição compacta da utilização dos recursos de um servidor num janela de tempo W Distribuição e série temporal Caixa preta 3 perfis por servidor Caixa cinza 4 perfis adicionais Utilização de memória, tempo de serviço, taxa de drop de requisições, taxa de chegada de requisições

15 Geração de perfis Distribuição Série temporal
Distribuição de probabilidade da utilização do recurso na janela W Ex.: histograma normalizado Captura variações da utilização de recursos Utilizado pelo migration manager para estimar picos de utilização de recursos Série temporal Lista de todas as observações reportadas numa janela de tempo W Captura correlação temporal da utilização de um recurso Utilizado pelo hotspot detector para observar tendências de utilização

16 Geração de perfil

17 Detecção de Hotspots Implícita Por servidor físico
CPU, rede ou swap de memória excedem limiar Explícita Por servidor virtual Utilização de memória, taxa de pacotes descartados ou tempo de resposta excede limiar Hotspot sinalizado se k observações acima do limiar nas últimas n observações Previsão de hostpot na próxima iteração

18 Detecção de Hotspots Predição Utiliza séries temporais

19 Provisão de recursos – black box
Descoberta dos recursos necessários para as VMs sobrecarregadas CPU e rede Pico de utilização para cada VM sobrecarregada Perfil de distribuição Percentil 95, por exemplo Escalonador do Xen é work-conserving Entretanto, se todas as VMs sobrecarregadas distribuição não fornece bons resultados Subestimativa da necessidade de CPU

20 Provisão de recursos – black box
Exemplos 2 VMs VM1 utilza 70% e VM2 20% Perfil de distribuição infere corretamente necessidade de CPU VM2 utiliza 50% e VM1 precisa de 70% Xen aloca 50% para cada VM Perfil infere necessidade subestimada Quando CPU (ou rede) é totalmente utilizada Sandpiper adiciona um valor ∆ à estimativa

21 Provisão de recursos – black box
Memória Utilização de memória não acessível no domínio 0 Utilização inferida a partir da frequência de swap Adição de um fator ∆m à alocação de memória da máquina virtual

22 Provisão de recursos – gray box
Estimativa do pico de taxa de chegada requisições (λpeak) A partir do perfil de distribuição CPU Aplicação modelada como uma fila G/G/1 λcap: taxa de chegada requerida, d: tempo médio de resposta, s: tempo médio de serviço das requisições, σa: desvio-padrão do tempo entre chegadas de requisições, σb: desvio-padrão do tempo de serviço

23 Provisão de recursos – gray box
d – fornecido pelo SLA λcap capacidade atual da máquina virtual λpeak/ λcap fator de escala da necessidade de CPU

24 Provisão de recursos – gray box
Rede Produto entre λpeak e tamanho médio do arquivo requerido (b) Montante de dados transferido na rede no período de pico

25 Migração de hotspots Determinação de novo mapeamento entre máquinas virtuais e servidores físicos evitando violações de limiares NP-hard Solução: utilização de heurística com redução da sobrecarga de migração Migração de carga do servidor mais carregados para os menos carregados Capturando cargas multidimensionais

26 Migração de hotspots Fase de migração PMs ordenados - volume
VMs ordenados - VSR (volume-to-size ratio) Migração do máximo volume por unidade movida Minimização da sobrecarga VM com maior VSR do PM com maior volume É possível alocação no PM com menor volume? Em caso negativo tentar PM com 2º maior volume Se nenhum PM pode abrigar VM com maior VSR então segundo VSR é selecionado Em seguida, PM com segundo maior volume

27 Migração de hotspots Fase de troca
Utilizada se não existem recursos para reduzir carga de servidores e eliminar hotspots Troca de uma VM com VSR alto com VMs com VSRs baixos de outros PMs com baixa carga Possível se dois PMs podem abrigar as VMs candidatas do outro sem exceder limiares Pode requerer um terceiro servidor de rascunho

28 Implementação e avaliação
Plano de controle Daemon executado no nó de controle Profile engine 200 medidas Hotspot detector k = 3, n = 5, limiar = 75% 750 linhas de código python

29 Implementação e avaliação
Nucleus Xen’s Python management API I = 10 segundos Daemons – caixa cinza Informações a partir da interface /proc Apache Analisador de log e dispatcher em tempo real 650 linhas de código python

30 Efetividade de migração
Scripts PHP intensivos em CPU Tráfego gerado com httperf Três fases causando hotspots em diferentes máquinas físicas

31 Efetividade de migração

32 Troca de VMs VM1 e VM2: 384 MB de RAM VM3 e VM4: 256 MB de RAM
Carga de VM1 incrementada de forma gradual Memória do nó de controle utilizada como rascunho

33 Cargas em múltiplos recursos
2 PMs com 2 VMs cada Cada PM com Cada VM com 256 MB de RAM VMs em PM1 Intensivo em rede Transferência de arquvivos grandes VMs em PM2 Intensivo em CPU Apache com scripts PHP dinâmicos VM2 executa um banco de dados Crescimento da utilização de memória no tempo ∆m = 32 MB

34 Cargas em múltiplos recursos

35 Cargas em múltiplos recursos

36 Gray v. Black – memória SPECjbb 2005 1 VM com 256 MB de RAM
PM com 384 MB de RAM PM adicional com 1 GB de RAM Carga incrementada a cada 2 minutos Cinza Hotspot sinalizado sempre que RAM livre menor que 32 MB

37 Gray v. Black – memória

38 Gray v. Black – Apache 3 PMs e 4 VMs httperf
VM1, VM2 e VM3 em PM1, e VM4 em PM2 httperf Em t=80s taxa de requisição incrementada rapidamente em VM1 e VM2 Necessidade de CPU alcança 70% VM3 e VM4 requerem constantemente 33 e 7% de CPU I = 6s

39 Gray v. Black – Apache

40 Gray v. Black – Apache

41 Gray v. Black – data center
16 PMs e 35 VMs Aplicações 5 VMs com LAMP com RUBis 5 VMs com Apache 5 VMs servidores de streaming 2 VMs com banco de dados 15 VMs com scripts PHP e arquivos html grandes cargas gerados 14 VMs com hotspots 4 PMs com hotspots de CPU e 2 com hotspots de rede 4 PMs com 45% de utilização de pelo menos um recurso 6 PMs entre 25 e 40% de utilização de recusos

42 Gray v. Black – data center

43 Sobrecarga e escalabilidade
Nucleus rede CPU 1% de sobrecarga Apache negligenciável

44 Sobrecarga e escalabilidade
Plano de controle

45 Estabilidade Simulação 50 PMs com 3 VMs cada
Número de hotspots simultâneos entre 20 e 45 Utilização média 85% e 45%

46 Conclusão Virtualizção possibilita migração de máquinas virtuais
Sandpiper Automação das tarefas ligadas à migração Caixa cinza vs. caixa preta


Carregar ppt "Black-box and Gray-box Strategies for Virtual Machine Migration"

Apresentações semelhantes


Anúncios Google