SlideShare uma empresa Scribd logo
1 de 36
Especificação de
plataforma DaaS para
laboratórios de
informática
Bolsista: Demis Gomes
Orientador: Glauco Gonçalves
Roteiro
● Introdução
● Objetivos
● Especificação da Plataforma
● Avaliação da Plataforma
● Resultados
● Planejamento de capacidade
● Conclusão
● Trabalhos Futuros
● Atividades Restantes 2
Introdução
● O que é DaaS?
Envia comandos para o servidor
por mouse, teclado ou toque
Envia a tela modificada pelas
ações do usuário para o
cliente
PROTOCOLO
Características:
● Escalabilidade
● Redução do consumo
de energia
● Área de trabalho
virtual
● Segurança
Ainda é necessário
otimizar a
plataforma para ser
mais eficiente,
provendo bom
desempenho
Área de trabalho
executada no
servidor
3
Objetivos
● Identificar as inovações técnicas necessárias;
● Especificar a arquitetura da plataforma;
● Desenvolver e/ou aperfeiçoar artefatos de software;
● Elaborar modelos matemático-computacionais que
descrevam o problema de alocação de recursos
existente na plataforma.
4
Especificação da plataforma
● Um DaaS pode ser disponibilizado ou na forma de VDI ou na forma de
sessão virtualizada[1]
● O que seriam estas duas opções? Qual a melhor para a plataforma?
client1
client2
VM
client
1
VM
client
2
client1
client2
VDI: Acesso a uma VM
hospedada no servidor
Sessão: Acessa o servidor por
meio de uma conta
5
Especificação da plataforma
A tabela abaixo mostra algumas características diferentes
entre VDI e Sessão virtualizada
Características VDI Sessão
Consumo de recursos Maior Menor
Custo Maior Menor
Administração Mais complexa Mais simples
Customização do Usuário Melhor Pior
Para nós, Sessão > VDI 6
Arquitetura da plataforma
Baseada em sessões, plataforma se divide em
cinco camadas, da mais lógica (superior) a
mais física (inferior).
7
Plataforma
Terminais: Dispositivos que acessam o
servidor
8
Plataforma
Serviços
● Boot Remoto: envia a imagem de
inicialização ao cliente e distribui IPs
● Administração: Permite administradores
configurarem o sistema
● Desktop Virtual: disponibiliza área de
trabalho e aplicações aos usuários
9
Plataforma
Gerência de nuvem
Compreende serviços lógicos da Nuvem,
importantes para manter a eficiência, como:
● Balanceamento de carga
● Migração e alocação de VMs
● Eficiência do consumo de energia
10
Plataforma
Virtualização e Armazenamento
● Virtualização: Camada que permite
virtualizar servidores e aplicações
● Armazenamento: estrutura capaz de salvar
as imagens das máquinas virtuais e acessá-
las rapidamente
11
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.
12
Plataforma
● Atualmente, certas funcionalidades foram
implementadas
13
O próximo passo é avaliá-la
Avaliando a plataforma
Dois experimentos foram realizados analisando
certas funcionalidades da plataforma:
13
1. Comparação entre VirtualBox e KVM
2. Análise da carga causada pela variação de 5 até 40 clientes
1
2
Experimento 1
Objetivo:
Comparar os hypervisors KVM e VirtualBox em
relação ao consumo de memória e CPU
Verificar se os resultados são semelhantes aos
de Opshal[2]
15
Experimento 1
Ferramenta de execução e avaliação automática
16
Gera VMs que executam tarefas
predefinidas [3]
o dstat coleta
informações do
servidor
Geram-se arquivos
csv com informações
desejadas
(qtdClientes, pctg_leve,pctg_pesado)
Experimento 1
17
Resultados - Exp. 1
Consumo de CPU no Application Server
Poucos valores
entre 30% e 70% de
consumo
Mais valores entre
30% e 70% de
consumo
Em relação a memória, os
resultados foram
semelhantes
18
Experimento 2
Objetivo:
Entender o comportamento do sistema quando
submetida a variação de carga entre 5 e 40
clientes
19
Experimento 2
Experimento:
20
Máquina física:
2 Xeon 2.40 GHz
64GB RAM
Root Server:
4 vCPUs
4GB RAM
App Server:
20 vCPUs
20GB RAM
Experimento 2
● Os passos executados foram semelhantes
ao experimento anterior
● A porcentagem de clientes pesados variava
entre 0%,25%,50%,75% e 100% em cada
número de clientes
21
Resultados - Exp. 2
Consumo de memória no AppServer
O consumo máximo
de memória tem um
comportamento
linear
22
Resultados - Exp. 2
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
Abordagem do pico
sustentado: Coletamos
amostras que
ultrapassavam os 95% de
consumo em cinco
ocorrências consecutivas
23
Porcentagem de amostras acima do pico sustentado
Planejamento de capacidade*
c=capacidade do servidor
24
t1
t2
Se qtdClientes<c:
Aloca no
servidor
disponivel
Se não, um
novo servidor
virtual é criado
cliente loga no
sistema e requisita
um servidor
Estimar a
probabilidade do
servidor estar cheio
e obter a média do
tempo de espera
Depois, o
inverso: estimar
a capacidade
dado um tempo
de espera
*Fase final de desenvolvimento
Conclusões
● A partir dos requisitos desejados, a plataforma melhor
se adequou a sessões
● O KVM, neste cenário, mostrou-se mais eficiente que o
VirtualBox, corroborando Opsahl[2]
● A CPU é um dos principais gargalos do sistema
● O consumo de memória apresenta um comportamento
linear
● Criação de ferramenta automática de avaliação
25
Atividades Restantes
● Finalizar o modelo matemático
● Realização de experimentos
complementares
● Escrita do relatório final
26
Trabalhos Futuros
● Analisar a QoE do usuário
● Finalizar a criação da plataforma
especificada
27
Agradecimentos
● FACEPE
● Meu orientador e co-orientador
28
Referências
[1]S. Dernbecher, R. Beck, and M. Toenker, “Cloudifying Desktops–A Taxonomy for
Desktop Virtualization,” 2013.
[2]J. M. G. Opsahl, “Open-source virtualization: Functionality and performance of
Qemu/KVM, Xen, Libvirt and VirtualBox,” 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.
29
Tabelas de consumo - Exp. 1
30
Modelagem matemática
Probabilidade de um servidor estar ocupado
onde p0:
31
Modelagem matemática
A hiperexponencial se adequa ao modelo
Quando o servidor está cheio, ele tem probabilidade p.
Se não, 1-p.
Se está cheio, ele espera um tempo alto (λ1) devido a
criação e disponibilização do servidor. Se não, é
imediatamente alocado e espera um tempo (λ2) bem
menor. Logo, a esperança de (x) é:
E(X)=p/λ1 + (1-p)/λ2
32
Fluxo de execução dos clientes
Leve
33
Fluxo de execução dos clientes
Pesado
34
Simulador do modelo (1ª versão)
35
T<
MáxRelógio
?
Capacidade,
T Máx.Relógio,
T1,T2,Λ,μ
Programa
evento de
chegada
Checa
evento
Atualiza
relógio para o
tempo do
evento
Servidores
cheios?
Capacidade
servidor =
máx?
Programa
evento de
espera de
alocação
Programa evento
de espera de
criação de um
novo servidor
Desaloca
cliente do
servidor
Adiciona
o evento
na fila
Adiciona
o evento
na fila
Desliga
servidor
Salva o tempo
de espera do
cliente
Programa
evento de
permanência
Calcula o
tempo médio
de espera
INÍCIO
FIM
1
0
0
1
1
0
chegada permanência
espera
Analisa o
tempo do
1° evento
da fila
Simulador do modelo (2ª versão)
36
Capacidade,
T Máx.Relógio,
Λ,μ
Programa
evento de
chegada
Checa
evento
Atualiza
relógio para o
tempo do
evento
Servidores
cheios?
Programa evento
de espera – o
cliente é alocado
imediatamente
Põe o cliente
na fila de
espera
Desaloca
cliente do
servidor
Adiciona
o evento
na fila
Adiciona
o evento
na fila
Desliga
servidor
Salva o tempo
de espera do
cliente
Programa
evento de
permanência
Calcula o
tempo médio
de espera
INÍCIO
FIM
1
0
0
1
1
0
chegada
permanênciaespera
Analisa o
tempo do
1° evento
da fila
A fila tem
clientes?
Aloca o 1°
cliente da fila
de espera no
servidor
T<
MáxRelógio
?
Capacidade
servidor =
máx?
1
0

Mais conteúdo relacionado

Destaque

Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...
Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...
Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...Thiago Avila, Msc
 
Guia de Serviços do Governo de Alagoas
Guia de Serviços do Governo de Alagoas Guia de Serviços do Governo de Alagoas
Guia de Serviços do Governo de Alagoas Thiago Avila, Msc
 
Gestaode Sites Governamentais
Gestaode Sites GovernamentaisGestaode Sites Governamentais
Gestaode Sites GovernamentaisThiago Avila, Msc
 
Apresentação Oficial Programa Alagoas no Mapa
Apresentação Oficial Programa Alagoas no MapaApresentação Oficial Programa Alagoas no Mapa
Apresentação Oficial Programa Alagoas no MapaThiago Avila, Msc
 
Movel Apresentação Executiva Conecta Espirito Santo 2007
Movel    Apresentação  Executiva    Conecta  Espirito  Santo 2007Movel    Apresentação  Executiva    Conecta  Espirito  Santo 2007
Movel Apresentação Executiva Conecta Espirito Santo 2007Thiago Avila, Msc
 
Alagoas Digital 2010 Oficial
Alagoas Digital 2010   OficialAlagoas Digital 2010   Oficial
Alagoas Digital 2010 OficialThiago Avila, Msc
 
Introdução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comIntrodução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comRenan Moreira de Oliveira
 
Excelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web SemânticaExcelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web SemânticaRenan Moreira de Oliveira
 
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014Renan Moreira de Oliveira
 

Destaque (12)

Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...
Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...
Alagoas em Dados e Informações - Plataforma de Dados e Informações Socioeconô...
 
Guia de Serviços do Governo de Alagoas
Guia de Serviços do Governo de Alagoas Guia de Serviços do Governo de Alagoas
Guia de Serviços do Governo de Alagoas
 
Gestaode Sites Governamentais
Gestaode Sites GovernamentaisGestaode Sites Governamentais
Gestaode Sites Governamentais
 
Apresentação Oficial Programa Alagoas no Mapa
Apresentação Oficial Programa Alagoas no MapaApresentação Oficial Programa Alagoas no Mapa
Apresentação Oficial Programa Alagoas no Mapa
 
Big Data na Globo.com - Dev Version - 2016
Big Data na Globo.com - Dev Version - 2016Big Data na Globo.com - Dev Version - 2016
Big Data na Globo.com - Dev Version - 2016
 
Movel Apresentação Executiva Conecta Espirito Santo 2007
Movel    Apresentação  Executiva    Conecta  Espirito  Santo 2007Movel    Apresentação  Executiva    Conecta  Espirito  Santo 2007
Movel Apresentação Executiva Conecta Espirito Santo 2007
 
Alagoas Digital 2010 Oficial
Alagoas Digital 2010   OficialAlagoas Digital 2010   Oficial
Alagoas Digital 2010 Oficial
 
Introdução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.comIntrodução a web semântica e o case da globo.com
Introdução a web semântica e o case da globo.com
 
Excelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web SemânticaExcelsior - Perfil usando Big Data e Web Semântica
Excelsior - Perfil usando Big Data e Web Semântica
 
Big Data e seu fiel companheiro Spark
Big Data e seu fiel companheiro SparkBig Data e seu fiel companheiro Spark
Big Data e seu fiel companheiro Spark
 
Big Data na globo.com
Big Data na globo.comBig Data na globo.com
Big Data na globo.com
 
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
Ontologias e sua utilização em aplicações semânticas - UFF - CASI - 2014
 

Semelhante a Especificação de plataforma DaaS para laboratórios de informática

Medindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
Medindo e Modelando o Desempenho de Aplicações em um Ambiente VirtualMedindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
Medindo e Modelando o Desempenho de Aplicações em um Ambiente VirtualRafael Reis
 
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...Demis Gomes
 
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on AzureTDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azuretdc-globalcode
 
Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infosimples
 
[Workshop] Azure Fundamentals
[Workshop] Azure Fundamentals[Workshop] Azure Fundamentals
[Workshop] Azure FundamentalsJaqueline Ramos
 
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Lenin Abadie
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosMessias Batista
 
DevOps - Entrega Contínua de Software
DevOps - Entrega Contínua de SoftwareDevOps - Entrega Contínua de Software
DevOps - Entrega Contínua de SoftwarePaulo Lacerda
 
Trabalhando com ALM na nuvem
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvemAdriano Bertucci
 
Gerenciamento de configuração com puppet
Gerenciamento de configuração com puppetGerenciamento de configuração com puppet
Gerenciamento de configuração com puppetElton Simões
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Rodrigo Immaginario
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Marcus Garcia
 
Apostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiulaApostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiulaDaniel Silveira
 

Semelhante a Especificação de plataforma DaaS para laboratórios de informática (20)

Medindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
Medindo e Modelando o Desempenho de Aplicações em um Ambiente VirtualMedindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
Medindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
 
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...
Plataforma de áreas de trabalho virtuais escalável para nuvens privadas - WCG...
 
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on AzureTDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
 
Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)Infraestrutura em nuvem com Amazon Web Services (AWS)
Infraestrutura em nuvem com Amazon Web Services (AWS)
 
Aula 3 - Introdução a cloud computing
Aula 3 - Introdução a cloud computingAula 3 - Introdução a cloud computing
Aula 3 - Introdução a cloud computing
 
[Workshop] Azure Fundamentals
[Workshop] Azure Fundamentals[Workshop] Azure Fundamentals
[Workshop] Azure Fundamentals
 
Ufs na nuvem gp 2017-2
Ufs na nuvem   gp 2017-2 Ufs na nuvem   gp 2017-2
Ufs na nuvem gp 2017-2
 
XML-RPC.pdf
XML-RPC.pdfXML-RPC.pdf
XML-RPC.pdf
 
Aula01
Aula01Aula01
Aula01
 
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
Uma Arquitetura para a Implantação Automática de Serviços em Infraestruturas ...
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - Processos
 
presentation
presentationpresentation
presentation
 
DevOps - Entrega Contínua de Software
DevOps - Entrega Contínua de SoftwareDevOps - Entrega Contínua de Software
DevOps - Entrega Contínua de Software
 
Redes de computador
Redes de computadorRedes de computador
Redes de computador
 
Trabalhando com ALM na nuvem
Trabalhando com ALM na nuvemTrabalhando com ALM na nuvem
Trabalhando com ALM na nuvem
 
Gerenciamento de configuração com puppet
Gerenciamento de configuração com puppetGerenciamento de configuração com puppet
Gerenciamento de configuração com puppet
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
 
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
Trabalhando com TFS na nuvem (Microsoft Azure). Quais vantagens de migrar o A...
 
Apostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiulaApostilas - cliente servidor - aula 1 - fabiula
Apostilas - cliente servidor - aula 1 - fabiula
 

Especificação de plataforma DaaS para laboratórios de informática

  • 1. Especificação de plataforma DaaS para laboratórios de informática Bolsista: Demis Gomes Orientador: Glauco Gonçalves
  • 2. Roteiro ● Introdução ● Objetivos ● Especificação da Plataforma ● Avaliação da Plataforma ● Resultados ● Planejamento de capacidade ● Conclusão ● Trabalhos Futuros ● Atividades Restantes 2
  • 3. Introdução ● O que é DaaS? Envia comandos para o servidor por mouse, teclado ou toque Envia a tela modificada pelas ações do usuário para o cliente PROTOCOLO Características: ● Escalabilidade ● Redução do consumo de energia ● Área de trabalho virtual ● Segurança Ainda é necessário otimizar a plataforma para ser mais eficiente, provendo bom desempenho Área de trabalho executada no servidor 3
  • 4. Objetivos ● Identificar as inovações técnicas necessárias; ● Especificar a arquitetura da plataforma; ● Desenvolver e/ou aperfeiçoar artefatos de software; ● Elaborar modelos matemático-computacionais que descrevam o problema de alocação de recursos existente na plataforma. 4
  • 5. Especificação da plataforma ● Um DaaS pode ser disponibilizado ou na forma de VDI ou na forma de sessão virtualizada[1] ● O que seriam estas duas opções? Qual a melhor para a plataforma? client1 client2 VM client 1 VM client 2 client1 client2 VDI: Acesso a uma VM hospedada no servidor Sessão: Acessa o servidor por meio de uma conta 5
  • 6. Especificação da plataforma A tabela abaixo mostra algumas características diferentes entre VDI e Sessão virtualizada Características VDI Sessão Consumo de recursos Maior Menor Custo Maior Menor Administração Mais complexa Mais simples Customização do Usuário Melhor Pior Para nós, Sessão > VDI 6
  • 7. Arquitetura da plataforma Baseada em sessões, plataforma se divide em cinco camadas, da mais lógica (superior) a mais física (inferior). 7
  • 9. Plataforma Serviços ● Boot Remoto: envia a imagem de inicialização ao cliente e distribui IPs ● Administração: Permite administradores configurarem o sistema ● Desktop Virtual: disponibiliza área de trabalho e aplicações aos usuários 9
  • 10. Plataforma Gerência de nuvem Compreende serviços lógicos da Nuvem, importantes para manter a eficiência, como: ● Balanceamento de carga ● Migração e alocação de VMs ● Eficiência do consumo de energia 10
  • 11. Plataforma Virtualização e Armazenamento ● Virtualização: Camada que permite virtualizar servidores e aplicações ● Armazenamento: estrutura capaz de salvar as imagens das máquinas virtuais e acessá- las rapidamente 11
  • 12. 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. 12
  • 13. Plataforma ● Atualmente, certas funcionalidades foram implementadas 13 O próximo passo é avaliá-la
  • 14. Avaliando a plataforma Dois experimentos foram realizados analisando certas funcionalidades da plataforma: 13 1. Comparação entre VirtualBox e KVM 2. Análise da carga causada pela variação de 5 até 40 clientes 1 2
  • 15. Experimento 1 Objetivo: Comparar os hypervisors KVM e VirtualBox em relação ao consumo de memória e CPU Verificar se os resultados são semelhantes aos de Opshal[2] 15
  • 16. Experimento 1 Ferramenta de execução e avaliação automática 16 Gera VMs que executam tarefas predefinidas [3] o dstat coleta informações do servidor Geram-se arquivos csv com informações desejadas (qtdClientes, pctg_leve,pctg_pesado)
  • 18. Resultados - Exp. 1 Consumo de CPU no Application Server Poucos valores entre 30% e 70% de consumo Mais valores entre 30% e 70% de consumo Em relação a memória, os resultados foram semelhantes 18
  • 19. Experimento 2 Objetivo: Entender o comportamento do sistema quando submetida a variação de carga entre 5 e 40 clientes 19
  • 20. Experimento 2 Experimento: 20 Máquina física: 2 Xeon 2.40 GHz 64GB RAM Root Server: 4 vCPUs 4GB RAM App Server: 20 vCPUs 20GB RAM
  • 21. Experimento 2 ● Os passos executados foram semelhantes ao experimento anterior ● A porcentagem de clientes pesados variava entre 0%,25%,50%,75% e 100% em cada número de clientes 21
  • 22. Resultados - Exp. 2 Consumo de memória no AppServer O consumo máximo de memória tem um comportamento linear 22
  • 23. Resultados - Exp. 2 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 Abordagem do pico sustentado: Coletamos amostras que ultrapassavam os 95% de consumo em cinco ocorrências consecutivas 23 Porcentagem de amostras acima do pico sustentado
  • 24. Planejamento de capacidade* c=capacidade do servidor 24 t1 t2 Se qtdClientes<c: Aloca no servidor disponivel Se não, um novo servidor virtual é criado cliente loga no sistema e requisita um servidor Estimar a probabilidade do servidor estar cheio e obter a média do tempo de espera Depois, o inverso: estimar a capacidade dado um tempo de espera *Fase final de desenvolvimento
  • 25. Conclusões ● A partir dos requisitos desejados, a plataforma melhor se adequou a sessões ● O KVM, neste cenário, mostrou-se mais eficiente que o VirtualBox, corroborando Opsahl[2] ● A CPU é um dos principais gargalos do sistema ● O consumo de memória apresenta um comportamento linear ● Criação de ferramenta automática de avaliação 25
  • 26. Atividades Restantes ● Finalizar o modelo matemático ● Realização de experimentos complementares ● Escrita do relatório final 26
  • 27. Trabalhos Futuros ● Analisar a QoE do usuário ● Finalizar a criação da plataforma especificada 27
  • 28. Agradecimentos ● FACEPE ● Meu orientador e co-orientador 28
  • 29. Referências [1]S. Dernbecher, R. Beck, and M. Toenker, “Cloudifying Desktops–A Taxonomy for Desktop Virtualization,” 2013. [2]J. M. G. Opsahl, “Open-source virtualization: Functionality and performance of Qemu/KVM, Xen, Libvirt and VirtualBox,” 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. 29
  • 30. Tabelas de consumo - Exp. 1 30
  • 31. Modelagem matemática Probabilidade de um servidor estar ocupado onde p0: 31
  • 32. Modelagem matemática A hiperexponencial se adequa ao modelo Quando o servidor está cheio, ele tem probabilidade p. Se não, 1-p. Se está cheio, ele espera um tempo alto (λ1) devido a criação e disponibilização do servidor. Se não, é imediatamente alocado e espera um tempo (λ2) bem menor. Logo, a esperança de (x) é: E(X)=p/λ1 + (1-p)/λ2 32
  • 33. Fluxo de execução dos clientes Leve 33
  • 34. Fluxo de execução dos clientes Pesado 34
  • 35. Simulador do modelo (1ª versão) 35 T< MáxRelógio ? Capacidade, T Máx.Relógio, T1,T2,Λ,μ Programa evento de chegada Checa evento Atualiza relógio para o tempo do evento Servidores cheios? Capacidade servidor = máx? Programa evento de espera de alocação Programa evento de espera de criação de um novo servidor Desaloca cliente do servidor Adiciona o evento na fila Adiciona o evento na fila Desliga servidor Salva o tempo de espera do cliente Programa evento de permanência Calcula o tempo médio de espera INÍCIO FIM 1 0 0 1 1 0 chegada permanência espera Analisa o tempo do 1° evento da fila
  • 36. Simulador do modelo (2ª versão) 36 Capacidade, T Máx.Relógio, Λ,μ Programa evento de chegada Checa evento Atualiza relógio para o tempo do evento Servidores cheios? Programa evento de espera – o cliente é alocado imediatamente Põe o cliente na fila de espera Desaloca cliente do servidor Adiciona o evento na fila Adiciona o evento na fila Desliga servidor Salva o tempo de espera do cliente Programa evento de permanência Calcula o tempo médio de espera INÍCIO FIM 1 0 0 1 1 0 chegada permanênciaespera Analisa o tempo do 1° evento da fila A fila tem clientes? Aloca o 1° cliente da fila de espera no servidor T< MáxRelógio ? Capacidade servidor = máx? 1 0

Notas do Editor

  1. Adicionar a figura que deixa a apresentação mais dinâmica. Talvez esquematizar melhor o problema que vamos atacar??
  2. Figura do Experimento (talvez seja melhor até aumentar)