Uma Arquitetura para Provisionamento de Ambientes de Alto Desempenho Customizados
1. Uma Arquitetura para Provisionamento de Ambientes de Alto
Desempenho Customizados
Miguel Gomes Xavier
miguel.xavier@acad.pucrs.br
Orientador: César A. F. De Rose
Faculdade de Informática, PUCRS
Porto Alegre, Brasil
20 de Março, 2013
2. Agenda
• Introdução
• Objetivos
• Metodologia
• Estado da Arte
• Solução Proposta
• Técnicas propostas
• Tecnologias e Ferramentas
• Avaliações
• Conclusões
• Trabalhos Futuros
• Contribuições
• Produções
3. Contextualização
• Cresce o número de usuários de alto desempenho em grandes centros de
computação
• Proliferação das tecnologias multicore
• Diversidade de ambientes de alto desempenho
Introdução
• Aumento na diversidade de aplicações escaláveis
• Eminente demanda por ambientes mais compatíveis
4. • Usuário
• Diferentes disciplinas
• Diferentes requisitos de software
• Diferentes necessidades
Introdução
Limitações em diferentes contextos
• Aplicação
• Diferentes arquiteturas (i386, x86_64)
• Incompatibilidade com sistemas legados
• Versões de ferramentas
• Versões de bibliotecas
• Versões de compiladores
• Ambiente
• Diferentes frameworks (MPI, MapReduce)
• Criticidade em manutenções (pacotes e configuração de ferramentas)
5. • Virtualização
• Independência, disponibilidade, isolamento e segurança
• Melhor gerenciamento
• Amplamente utilizado em datacenters/cloud computing
• HPC e Virtualização
• Cenários
• Melhor Utilização de Recursos
• Ambientes Customizados
• No entanto, tecnologias de virtualização basedas em hypervisors têm sido
evitadas em HPC em razão das sobrecargas de desempenho
Introdução
6. Objetivos
• Objetivo Geral
Propor e validar uma arquitetura para provisionamento de ambientes customizados em termos de requisitos de
software de forma eficiente
• Objetivos Específicos
– estudar os ambientes de HPC, alimentando a pesquisa em sua Fundamentação Teórica;
– estudar as arquiteturas e tecnologias de virtualização;
– estudar as técnicas de virtualização existentes no Estado da Arte, no intuito de auxiliar no alcance do
Objetivo Geral;
– propor uma AP para ambientes customizados;
– propor uma biblioteca que permita gerenciar a AP proposta por meio de gerenciadores de recursos;
– avaliar a AP proposta por meio de experimentos, observando o tempo de provisionamento dos ambientes
e o desempenho das aplicações HPC;
7. Metodologia
Questões de Pesquisa
Qual o impacto da AP proposta em relação as APs existentes, levando em
consideração as técnicas utilizadas para prover ambientes que atendam a
necessidade dos usuários em termos de seus requisitos de software?
Qual o impacto da AP proposta em relação as APs existentes, levando em
consideração o desempenho das aplicações HPC e o tempo de
provisionamento?
9. Metodologia
Hipóteses de Pesquisa
(H1) Para enfrentar os problemas de gerenciamento relacionados com
incompatibilidade entre ambientes e aplicações, sugere-se o uso de técnicas, de
ferramentas e de tecnologias que viabilizem a customização desses ambientes
(H2) Para provisionar ambientes customizados em termos de requisitos de software
de forma eficiente, sugere-se o uso da arquitetura de virtualização baseada em
contêineres
10. [1] KEAHEY, K., FOSTER, I., FREEMAN, T., et al. Virtual Workspaces in the Grid. ANL/MCS-P1231-0205. 2005.
[2] ZHANG, X., KEAHEY, K., FOSTER, I., FREEMAN, T. Virtual Cluster Workspaces for Grid Applications. ANL Tech Report ANL/MCS-P1246-0405. 2005.
[4] NISHIMURA, H., MARUYAMA, N., MATSUOKA, S. Virtual Clusters on the Fly — Fast, Scalable, and Flexible Installation. IEEE Cluster Computing and the
Grid. 2007.
[5] CHASE, J., IRWIN, D., GRIT, L., ET AL. DYNAMIC VIRTUAL CLUSTERS IN A GRID SITE MANAGER. IEEE INTERNATIONAL SYMPOSIUM ON HIGH
PERFORMANCE DISTRIBUTED COMPUTING. 2003:13.
[6] CHEN, K., XIN, J., ZHENG, W. VirtualCluster: Customizing the Cluster Environment through Virtual Machines. IEEE/IFIP International Conference on
Embedded and Ubiquitous Computing. 2008:6.
Proposta VW VCW VD
Cache
CoD ClusterVirtual
Referência - [1] [2] [4] [5] [6]
Virtualização baseada em hypervisor Não Sim Sim Sim Sim Sim
Virtualização baseada em contêiner Sim Não Não Não Não Não
Templates Sim Não Não Não Sim Sim
Interface de Acesso Sim Sim Sim Sim Sim SIm
Reuso de Templates Sim Sim Sim Não Sim Sim
Trabalhos Relacionados
12. Solução Proposta
Técnicas propostas no intuíto de atender os requisitos identificados
Workspaces, o Incremental de Dados, o dos Workspaces e API de gerenciamento
13. Solução Proposta
Técnicas propostas no intuíto de atender os requisitos identificados
• Workspace
• Sistema de arquivos customizado
• Sustentado por uma tecnologia de virtualização
15. Solução Proposta
Técnicas propostas no intuíto de atender os requisitos identificados
• Customização dos Workspaces
• Técnica não automatizada
• Usuário insere suas aplicações manualmente no template pré-configurado
• API de Gerenciamento dos Workspaces
• Função createCluster – Criar Cluster de workspaces
• Função destroyCluster – Destruir Cluster de workspaces
• Função syncWorkspace – Sincronizar workspace passado por parâmetro
• Funcão syncAllWorkspaces – Sincronizar todos os workspaces locais
16. Solução Proposta
Tecnologias e ferramentas utilizadas para suportar as técnicas propostas
Workspaces
Sincronização
Incremental de
Dados
Customização dos
Workspaces
API de
Gerenciamento
Tecnologia de
Virtualização
Ferramenta Rsync
Ferramenta
Chroot
Libvirt
17. Solução Proposta
Identificando a tecnologias de virtualização da arquitetura proposta
• Tecnologias avaliadas
• Linux-Vserver
• OpenVZ
• LXC
• Xen
• Analizando os melhores resultados de
desempenho
• Através de micro-benchmarks (CPU, disk,
memory, network) em um único nodo
• Através de macro-benchmarks (HPC)
• Analizando os melhores resultados de
isolamento
• Benchmark IBS
18. Solução Proposta
• Drivers não são virtualizados
• Linux-Vserver, OpenVZ and LXC
Virtualização baseada em contêiner Virtualização baseada em hypervisor
Virtualização baseada em contêiner
19. • Todas tecnologias de virtualização
baseadas em contêineres atingiram
resultados similares ao nativo
• O Xen apresentou uma média de
4.3% de sobrecarga
Linpack
Mflops
0100200300
Native
LXC
OpenVZ
VServer
Xen
Solução Proposta
Avaliação de uma única CPU utilizando LINPACK
20. • Tecnologias baseadas em conteiners
possuem a habilidade de retornar
memórias desalocadas para a máquina
host
• O Xen apresentou uma sobrecarga de
31%
Solução Proposta
Avaliação de banda de memória utilizando o STREAM
21. • Xen não atinge um bom
desempenho em razão da
virtualização dos drivers de I/O
Solução Proposta
Avaliação de disco utilizando IOZone
23. • Todos os benchmarks enquanto
estressados no Xen obtiveram
sobrecarga de desempenho
devido aos drivers de rede
virtualizados
bt cg ep ft is lu mg
NAS Parallel Benchmarks
Executiontime(seconds)
050100150200
Native
LXC
OpenVZ
VServer
Xen
Solução Proposta
Avaliação de desempenho de aplicações paralelas utilizando NAS-MPI
24. Solução Proposta
• Os resultados representam quanto o desempenho de uma aplicação foi impactado por
um teste de estresse em outra VM/contêiner.
• DNR significa que a aplicação não foi capaz de executar
• Todas as tecnologias baseadas em contêineres tiveram algum impacto noisolamento
LXC OpenVZ Vserver Xen
CPU 0 0 0 0
Memory Bomb 88,2% 89,3% 20,6% 0,9%
Disk Stress 9% 39% 48,8% 0
Fork Bomb DNR DNR DNR 0
Network Receiver 2,2% 4,5% 13,6% 0,9%
Network Sender 10,3% 35,4% 8,2% 0,3%
Avaliação de isolamento utilizando o benchmark IBS
25. Solução Proposta
• Todas as tecnologias baseadas em contêiners atingiram um
desempenho similar ao nativo para CPU, memória, disco e rede
• LXC demonstra ser a tecnologia mais adequada para a AP
proposta
• Resultados de desempenho similiares ao nativo
• Desenvolvimento mainline no kernel do Linux
• Suporte na LIBVirt
Análise dos resultados
26. Solução Proposta (Resumo)
• Técnicas definidas
• Workspaces
• Customização dos Workspaces
• Sincronização Incremental de Workspaces
• API de Gerenciamento
• Tecnologias e Ferramentas definidas
• Tecnologia de virtualização LXC
• Chroot
• Rsync
• Libvirt
28. Avaliação
• Prototipação
• Modelagem Estrutural
• Diagrama de Componente
• Modelagem Comportamental
• Diagrama de Sequência
• Experimentos para Avaliação da Arquitetura
• Armazenamento
• Tempo de carga de um Workspace
• Tempo de sincronização de um Workspace
• Tempo de provisionamento de um cluster de Workspaces
• Customização
• Avaliação de aplicações HPC
• Comunicação
• Avaliação de taxa e latência de rede
• Interface de Gerência
• Pseudo-aplicação
31. Avaliação
Avaliação do tempo de carga de um único Workspace
Uptime
TempodeInicialização(segundos)
0246810
Workspace
Xen
Tempo médio de inicialização de um
Workspace foi de 1.81 Segundos
Tempo médio de inicialização de uma
máquina virtual foi de 11.85 Segundos
32. Avaliação
Avaliação do tempo de sincronização de um Workspace em um único nodo
Tempo médio de sincronização de
um Workspace foi de 2 Segundos
Tempo médio de sincronização de
uma imagem de máquina virtual foi de
28 Segundos
rsync
TempodeSincronização(segundos)
0510152025
Workspace
Imagem Xen
33. Avaliação
Avaliação do tempo de sincronização de um Workspace em múltiplos nodos
Tempo médio de sincronização de
múltiplos Workspaces foi de 9.9
Tempo médio de sincronização de
múltiplas imagens de máquina virtuais
foi de 92 Segundos
rsync
TempodeSincronização(segundos)
020406080
Workspace
Imagem Xen
34. Avaliação
Avaliação do tempo de provisionamento de um cluster de Workspaces
Arquitetura proposta: média de 12 segundos
Arquitetura utilizando Xen: média de 101 segundos
Arquitetura CoD: média de 120 segundos
Provisionamento
TempodeProvisionamento(segundos)
020406080100120
AP Proposta
AP Xen
CoD
Inclusão de uma arquitetura contida
no estado da arte
35. Avaliação
Avaliação de desempenho das aplicações HPC utilizando NAS-MPI
Mínimo impacto no desempenho das aplicações
paralelas
bt cg ep ft is lu mg
Nativa
Workspace
NAS Parallel Benchmarks
TempodeExecução(segundos)
050100150
Hipótese (H2) torna-se aceita
36. Considerações
As seguintes es de Pesquisa foram respondidas:
• Qual o impacto da AP proposta em o as APs existentes, levando em consideração as
técnicas utilizadas para prover ambientes que atendam a necessidade de usuários tem termos
de seus requisitos de software?
Os resultados obtidos se mostraram veis em o do baixo volume de dados que os
workspaces representam como m da viabilidade da o incremental de dados em
workspaces
• Qual o impacto da AP proposta em o as APs existentes, levando em o o
desempenho das aplicações e o tempo de provisionamento?
Os resultados obtidos revelaram que a AP incorre em uma nfima sobrecarga de desempenho
em es HPC, bem como um baixo tempo de provisionamento de ambientes customizados, em
comparação com as APs existentes
37. Trabalhos Futuros
Os seguintes tópicos carecem de um estudo em maior profundidade, apresentados em trabalhos
futuros:
• Realizar um estudo aprofundado em busca de amenizar ou contornar os problemas identificados
nos testes de isolamento da tecnologia de virtualização LXC;
• Propor a funcionalidade de provisionamento cluster de workspaces remoto. Percebeu-se durante
a realização da Pesquisa, que o uso de workspaces pode viabilizar tal funcionalidade, dado seu
baixo volume de dados;
• Propor em um trabalho futuro a integração da AP em um gerenciador de recursos por meio da
API;
38. Contribuições
As contribuições deste trabalho são:
• Avaliação das Tecnologias de Virtualização baseada em Contêineres: Até o presente momento, nenhum outro trabalho tinha
realizado tal avaliação;
• Arquitetura para Provisionamento de Ambientes Customizados de Alto Desempenho;
• API de Gerenciamento;
• Avaliação da AP proposta;
• A hipótese (H1) afirma que para enfrentar os problemas de gerenciamento relacionados com incompatibilidade entre ambientes e
as aplicações, sugere-se o uso de técnicas e de tecnologias que viabilizem a customização desses ambientes. A hipótese foi
comprovada;
• A hipótese (H2) afirma que para provisionar ambientes customizados em termos de requisitos de software de forma eficiente,
sugere-se o uso da arquitetura de virtualização baseada em contêineres. A hipótese foi comprovada.
39. Produções
Monografia entitulada Infraestrutura de o para Ambientes de o de Alto
Desempenho: Uma o da Literatura
LANGE, T.; CEMIM, P.; ROSSI, F.; XAVIER, M.; BELLE, L.; FERRETO, T.; DE ROSE, César A. F.; Performance
Evaluation of Virtualization Technologies for Databases in HPC Environments. In: Simpósio em
Sistemas Computacionais (WSCAD-SSC), 2012, Petrópolis, RJ, Brazil. Proceedings of the WSCAD-SSC
2012. v. 1. p. 88-94. CAPES B5
XAVIER, M.; ROSSI, F.; LANGE, T.; FERRETO, T.; DE ROSE, César A. F.; Performance Evaluation of
Container-based Virtualization for High Performance Computing Environments. In: 21st Euromicro
International Conference on Parallel, Distributed, and Network-Based Processing (PDP 2013), Belfast,
Ireland. CAPES B1
XAVIER, M.; DE ROSE, César A. F.; An Architecture for Provisioning Custom High Performance
Environments . Em andamento