Checkpoint-based Fault-tolerant Infrastructure for
Virtualized Service Providers
Infraestrutura de Checkpoint Tolerante a Falhas para
Provedores de Serviços Virtualizados
Íñigo Goiri, Ferran Julià, Jordi Guitart, Jordi Torres
Barcelona Supercomputing Center and Technical University of
Catalonia
Apresentação: Adriano Luz
23/11/2011
Introdução




Falhas são comuns nos provedores de serviços
Os provedores devem lidar com as falhas para garantir os
termos do SLA (Service level Agreement)
Tempo de computação pode ser desperdiçada por conta
de uma falha
Proposta: Criar um mecanismo de checkpoint
Checkpoint



O mecanismo tem como objetivo salvar o estado
do sistema a cada intervalo de tempo
No caso de falha a tarefa pode ser concluída em
outro nodo a partir de um ponto salvo
Este mecanismo é caro pois é necessário salvar
imagens de máquinas virtuais
Proposta







Forma eficiente para criação de checkpoints
Utiliza AUFS (Another Union Filesystem) para separar
partes read-only e read-write das imagens
A parte read-only precisa ser salva só no primeiro
checkpoint
Os checkpoints são incrementais
Reduzindo o tempo para realizar o checkpoint reduz o
tempo em que uma tarefa precisa ficar parada
Utiliza HDFS (Hadoop Distributed Filesystem) para
salvar os checkpoints
Elimina ponto único de falha
Trabalhos relacionados



G. Vallee et al: Mecanismo de checkpoint para o xen com
union filesystem e checkpoints incrementais.
Os autores não apresentaram resultados experimentais
Ta-Shma et al: Repositório central que intercepta os
dados durante a migração de máquinas virtuais para criar
os checkpoints

Os discos não são salvos neste processo.

Não foram apresentados resultados experimentais
Trabalhos relacionados




Warfield et al: Apresentam o parallax. Os checkpoints
são criados usando memória e disco com o mecanismo
CoW (Copy on Write) para manter as imagens remotas.
Solução baseada em armazenamento centralizado que
representa ponto único de falha
R. Badrinath et al: Adaptaram o software SLURM para
suportar checkpoint.
A implementação do sistema é avaliada criando
checkpoints de aplicações em MPI

Foco apenas em checkpoints de memória

O sistema não é avaliado em detalhes
Arquitetura





Sistema base salvo em um disco read-only
Modificações do usuário são salvas em um disco
read-write (delta disk)
O disco do sistema base precisa ser salvo apenas
no primeiro checkpoint
Enquanto o checkpoint é feito a tarefa deve ficar
parada
O checkpoint é salvo em um filesystem
distribuído
Compressão


Os checkpoints podem ser comprimidos antes do
upload
t_compressão + t_uploadc < t_uploadu
Filesystem distribuído




Os checkpoints são salvos em um filesystem
distribuído
Nesta implementação foi usado o HDFS (Hadoop
Distributed Filesystem)
Não faz sentido armazenar os checkpoints no
próprio nodo
Usar uma abordagem centralizada pode criar
gargalo no sistema
Avaliação





Características das máquinas:
Nodo A: Intel Xeon 2.6Ghz, 16GB memória,
velocidade de disco 117MB/s
Nodo B: 4 Intel Xeon 3.0Ghz, 16GB memória,
velocidade de disco 83MB/s
Nodo C: 2 Pentium D 3.2Ghz, 2GB memória,
velocidade de disco 58MB/s
Todas as máquinas são interligadas por gigabit
ethernet
Tempo de upload

Salvando um checkpoint com 1496MB
Tempo de checkpoint: Memória

Disco delta com 100MB

Executado no nodo A
Tempo de checkpoint: Disco

Máquina com 128MB de memória

Executado no nodo A
Tempo de checkpoint: Compressão

Máquina com 128MB de memória

Disco delta com 800MB
Tempo de checkpoint: Número

Um checkpoint a cada 100 segundos
Tempo para o checkpoint

Iniciar uma tarefa e fazer um checkpoint a cada
600 segundos

Comparação entre HDFS e FTP

Comparacão entre AUFS e ALL

O tempo para finalizar a tarefa é influenciado
apenas pelo tempo de parada da máquina virtual
Comparação entre infraestruturas

Utilizado máquinas virtuais com 256MB de
memória e 100MB de disco
Tempo para reiniciar a tarefa
Conclusão




Foi apresentado um sistema eficiente de
checkpoint
Foi utilizado AUFS para diferenciar partes readonly e read-write
Utilizado HDFS para distribuir os checkpoints e
aumentar a disponibilidade
O sistema foi implementado para avaliação de
desempenho
Download

Tempo de checkpoint