A apresentação descreve uma plataforma de áreas de trabalho virtuais para nuvens privadas com três objetivos principais: escalabilidade, disponibilidade e redução de custos. A plataforma é baseada em sessões virtualizadas em vez de máquinas virtuais inteiras para cada usuário, utilizando software livre e thin clients para reduzir custos. O protótipo implementado foi testado sob carga variável para avaliar o desempenho.
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas
1. Plataforma de áreas de trabalho
virtuais escalável para nuvens
privadas
Demis Gomes
Nichene Verçosa
Victor Medeiros
Glauco Gonçalves
WCGA-SBRC 2016
2. Roteiro
• Introdução
• Objetivos
• Apresentação da Plataforma
• Especificação do Protótipo
• Avaliação da Plataforma
• Resultados
• Conclusão
• Trabalhos Futuros
30/05/2016 WCGA-SBRC 2016 2
3. Introdução
• O artigo tem como base o projeto iniciado em 2013
que buscava desenvolver uma plataforma de áreas de
trabalho virtuais para laboratórios de informática
• Dentre os principais objetivos:
– Redução dos custos de implantação
– Redução do consumo de energia
– Escalabilidade
– Disponibilidade
– Administração facilitada
30/05/2016 WCGA-SBRC 2016 3
4. Introdução
30/05/2016 WCGA-SBRC 2016 4
Envia comandos para o
servidor por mouse, teclado
ou toque
Envia a tela modificada pelas
ações do usuário para o
cliente
PROTOCOLO
Área de
trabalho
executada no
servidor
Área de trabalho virtual remota
Uso de thin
clients
Servidores
virtualizados
5. Introdução
30/05/2016 WCGA-SBRC 2016 5
• A plataforma apresenta as soluções para os objetivos buscados
Objetivos Soluções
Escalabilidade
Provisionamento de servidores virtuais
sob demanda
Disponibilidade
Manter o sistema funcionando mesmo
com a falha de um servidor
Redução do consumo de energia
elétrica
Uso de thin clients, reduzindo o custo
em 80% em relação a máquinas
convencionais [1]
Redução de custos
Uso de software livre e compra de thin
clients
Administração Facilitada Gerenciamento de usuários centralizado
6. Introdução
• A plataforma pode ser aplicada para nuvens privadas de
comportamento homogêneo
30/05/2016 WCGA-SBRC 2016 6
A ociosidade pode ocorrer nestes casos, levando
a um desperdício de recursos
7. Introdução
• Para diminuir a ociosidade e, consequentemente o
consumo de energia elétrica, podemos
compartilhar recursos
• Este compartilhamento pode ser feito por uma
plataforma de áreas de trabalho virtual
30/05/2016 WCGA-SBRC 2016 7
8. Objetivos
• Apresentar uma solução eficiente, robusta e
escalável de uma plataforma de área de trabalho
virtual para nuvens privadas
• Realizar testes com a plataforma a fim de entender
os pontos a serem melhorados e possíveis gargalos
no sistema
30/05/2016 WCGA-SBRC 2016 8
9. Apresentação da plataforma
• Uma área de trabalho virtual pode ser disponibilizada para o
usuário ou na forma de VDI ou na forma de sessão
virtualizada [2]
VM
client
1
VM
client
2
VDI: Acesso a uma VM
hospedada no servidor
Sessão: Acessa o servidor
por meio de uma conta
de usuário
30/05/2016 WCGA-SBRC 2016 9
10. Apresentação da plataforma
• Comparação entre VDI e sessões virtualizadas
30/05/2016 WCGA-SBRC 2016 10
Características VDI Sessão
Consumo de recursos Maior Menor
Custo Maior Menor
Administração Mais complexa Mais simples
Disponibilidade de
ferramentas
Maior Menor
Customização do
Usuário
Melhor Pior
11. Apresentação da plataforma
• A partir das características apresentadas,
escolhemos criar a plataforma baseada em sessões
pois se adequava melhor ao cenário proposto
• Cada servidor é virtualizado em máquinas virtuais
a fim de oferecer tolerância à falhas e
escalabilidade
30/05/2016 WCGA-SBRC 2016 11
12. Arquitetura da Plataforma
• Baseada em sessões, a plataforma se divide em
cinco camadas
30/05/2016 WCGA-SBRC 2016 12
14. Serviços
• Boot Remoto: envia o SO mínimo ao cliente e
distribui IPs
• Administração: Permite aos administradores
gerenciar usuários
• Desktop Virtual: disponibiliza área de trabalho e
aplicações aos usuários
Arquitetura da Plataforma
30/05/2016 WCGA-SBRC 2016 14
15. Arquitetura da Plataforma
Gerência de nuvem
Compreende serviços de elasticidade, economia de
energia e alocação de recursos na Nuvem,
importantes para manter a eficiência
30/05/2016 WCGA-SBRC 2016 15
16. Arquitetura da Plataforma
Virtualização e Armazenamento
• Virtualização: Camada que permite virtualizar
servidores e aplicações
• Armazenamento: repositório de imagens dos
servidores virtuais e dados dos usuários
30/05/2016 WCGA-SBRC 2016 16
17. Arquitetura da Plataforma
Servidores/Dispositivos de Rede
Servidores físicos onde serão hospedados os serviços
da plataforma, além de dispositivos como
roteadores e switches para a comunicação entre
eles
30/05/2016 WCGA-SBRC 2016 17
18. Protótipo
30/05/2016 WCGA-SBRC 2016 18
Após revisões na academia, escolhemos as opções que mais se
encaixavam em nossa proposta para criarmos o protótipo da
ferramenta
19. Protótipo
• Terminais: Raspberry Pi, um singleboard computer
que pode atuar como thin client, consumindo
ainda menos energia
30/05/2016 WCGA-SBRC 2016 19
20. Protótipo
• Serviços
– Desktop Virtual e Boot Remoto: LTSP Cluster, uma
alternativa linux para a comunicação entre thin clients
e servidores
– Administração: LDAP, permitindo criar e autenticar
usuários
30/05/2016 WCGA-SBRC 2016 20
21. Protótipo
• Gerência da Nuvem
– Recomendamos o uso do OpenStack para o
gerenciamento de máquinas virtuais
30/05/2016 WCGA-SBRC 2016 21
22. Protótipo
• Virtualização: Utilizamos o KVM devido às suas
otimizações no kernel Linux e por oferecer
desempenho superior no quesito processamento
• Armazenamento: Recomendamos o uso do
OpenStack Storage
30/05/2016 WCGA-SBRC 2016 22
24. Avaliação da Plataforma
• O objetivo da avaliação é realizar o planejamento
de capacidade de um único Application Server
– Entender o comportamento do sistema quando
submetido a variação de carga entre 5 e 40 clientes
– Simular o comportamento dos clientes através de uma
ferramenta de emulação, configurando o número de
clientes e os tipos
– Os clientes foram divididos em dois tipos: pesados e
leves [3]
30/05/2016 WCGA-SBRC 2016 24
25. Avaliação da Plataforma
30/05/2016 WCGA-SBRC 2016 25
Fatores Níveis
Número de clientes 5,10,15,20,25,30,35,40
% de clientes pesados 0%,25%,50%,75%,100%
• Métricas
• CPU
• Memória
• Vazão de rede
26. Avaliação da Plataforma
Ferramenta de execução e avaliação automática
30/05/2016 WCGA-SBRC 2016 26
Ferramenta
de execução
TRÁFEGO
Configuração do
experimento
(inputs)
Relatórios
gerados
(outputs)
Emulação de
clientes da
plataforma
(VMs)
Coleta de
parâmetros nos
servidores (CPU,
memória e rede)
Execução de
programas:
LibreOffice Writer
LibreOffice Calc
LibreOffice Impress
Arquivos
Comandos
27. Avaliação da Plataforma
Ferramenta de execução automática
30/05/2016 WCGA-SBRC 2016 27
Ferramenta
de execução
TRÁFEGO
Configuração do
experimento
(inputs)
Relatórios
gerados
(outputs)
São executados na mesma máquina física: 2 Xeon 2.40 GHz, 64GB RAM
App Server:
20 vCPUs, 20GB
RAM
São emulados em
uma configuração
da Raspberry Pi A:
256 MB RAM, 1 vCPU
App
Server
28. Resultados
30/05/2016 WCGA-SBRC 2016 28
Consumo de memória no Application Server
O consumo máximo de
memória tem um
comportamento linear
O consumo total de
memória em sessões foi de
80% (~16 GB), menor do
que em VDI (40 clientes
~20 GB)
29. Resultados
• Vazão de rede no Application Server
– Vazão máxima
30/05/2016 WCGA-SBRC 2016 29
0
100
200
300
400
500
600
700
800
900
0%
75%
25%
100%
50%
0%
75%
25%
100%
50%
0%
75%
25%
100%
5 10 15 20 25 30 35 40
VazãoemMbits/s
Número de clientes e pctg. de clientes pesados
Vazão de Rede
Consumo Máx.
Dados
Recebidos
Consumo Máx.
Dados
Enviados
A vazão máxima dos
dados recebidos chega
próximo dos 400 Mbps,
enquanto dos dados
enviados em cerca de
900 Mbps
30. Resultados
• Vazão de rede no Application Server
– Vazão máxima (quartis)
30/05/2016 WCGA-SBRC 2016 30
O quartil de 0.75 não
passa de 100 Mbps em
nenhum dos casos.
Desta forma, a maior
parte do tráfego pode
ser transferida em uma
rede Fast-Ethernet
0
100
200
300
400
500
600
700
800
900
0%
75%
25%
100%
50%
0%
75%
25%
100%
50%
0%
75%
25%
100%
5 10 15 20 25 30 35 40
VazãoemMbit/s
Número de clientes e porcentagem de clientes pesados
Vazão de rede em quartis
Quartile 0.75 (Recebidos)
Quartile 0.75 (Enviados)
31. Resultados
30/05/2016 WCGA-SBRC 2016 31
Consumo de CPU no App Server
Segundo [4], o
sistema é inaceitável
ao usuário quando
deixa de responder
por mais de 5
segundos
No nosso caso, 95%
de consumo torna o
sistema irresponsivo
80
85
90
95
100
1
5
9
13
17
21
25
29
33
37
41
45
49
53
57
61
65
69
73
77
81
85
89
93
97
(%)doconsumodeCPU
Tempo de experimento onde ocorreu maior consumo de CPU (s)
Os 100 segundos de maior consumo de CPU
Experimento 1 - 40 clientes - 100% pesados
Abordagem do pico sustentado: Coletamos amostras que ultrapassavam
os 95% de consumo em cinco ocorrências consecutivas
32. Resultados
30/05/2016 WCGA-SBRC 2016 32
Consumo de CPU no App Server Em nosso cenário,
assumimos que se o
sistema tiver em torno
de 2% de amostras
acima do pico
sustentado, ele estará
com um desempenho
aceitável
O gráfico mostra que,
quando o número de
clientes pesados (100%)
é 25 e o de leves (0%)
é 30, o sistema se
encontra utilizável
33. Conclusão
• Analisamos os aspectos necessários a construção
da plataforma, escolhendo o acesso dos clientes
por meio da virtualização de sessões em máquinas
virtuais
• Definimos os componentes do protótipo da
plataforma, buscando oferecer baixo custo,
redução do consumo de energia e escalabilidade
por meio do uso de singleboard computers,
software livre e gerenciamento da Nuvem
30/05/2016 WCGA-SBRC 2016 33
34. Conclusão
• O consumo de memória de virtualização por
sessões é menor do que na VDI
• Exceto por picos esporádicos, a vazão de rede fica
abaixo de 100 Mbps
• A CPU apresentou-se como o gargalo da
plataforma
• O sistema se comporta de modo aceitável com 25
clientes pesados e 30 clientes leves
30/05/2016 WCGA-SBRC 2016 34
35. Trabalhos Futuros
• Realizar a pinagem das CPUs de modo a evitar o
compartilhamento de recursos entre clientes e
servidores
– Fixar os cores virtuais do Application Server em um
único processador físico
• Realização de testes qualitativos para medir a
satisfação dos usuários
30/05/2016 WCGA-SBRC 2016 35
39. Referências
1. Dasilva, D. A., Liu, L., Bessis, N., & Zhan, Y. (2012,
October). Enabling green IT through building a virtual
desktop infrastructure.
2. S. Dernbecher, R. Beck, and M. Toenker, “Cloudifying
Desktops–A Taxonomy for Desktop Virtualization,” 2013.
3. A. R. Shabaitah, “Server-Based Desktop Virtualization,”
Rochester Institute of Technology, 2014.
4. Tolia, Niraj, David G. Andersen, and Mahadev
Satyanarayanan. "Quantifying interactive user experience
on thin clients." Computer 39.3 (2006): 46-52.
30/05/2016 WCGA-SBRC 2016 39