• Sonuç bulunamadı

4. BULGULAR ve TARTIŞMA

4.3. Su Emme ve Su Buharlaşma Hızı Özelliği Tayini

Esta seção relata os trabalhos relacionados com infraestrutura como serviço em Computação em Nuvem e virtualização.

Coutinho, et al., (2012) realizaram uma análise de desempenho sobre um ambiente público de Computação em Nuvem, o HP Cloud Services. Foram analisados consumo de CPU, memória, I/O e rede, através de benchmarks. Segundo os autores, os experimentos obtiveram um comportamento bastante variável nos resultados, fugindo um pouco do que seria uma razão de proporcionalidade em relação ao aumento da capacidade de VCPU e memória das instâncias. No experimento de CPU, a variação de tempo foi considerável entre as instâncias, variando mais de 1000 segundos entre algumas instâncias de capacidades diferentes para o mesmo experimento. O tempo dos experimentos com memória teve um aumento à medida que mais arquivos de testes eram utilizados, pois uma das características do benchmark utilizado é a de aproveitar toda a memória disponível. Para I/O, o tempo foi relativamente estável. Para rede, o tempo foi praticamente o mesmo para todas as instâncias. Os autores não analisaram os dados estatisticamente para verificar se o aumento do tempo nos experimentos de CPU e de memória foram significativos.

Sridharan, (2012) comparou qualitativamente e quantitativamente o desempenho dos hipervisores VMware ESXi 4.1, Citrix Xen 5.6 e KVM usando padrão de referência SPECvirt_sc2010v1.01 formulado pela Standard Performance Evaluation Corporation (SPEC), sob várias cargas de trabalho simulando situações reais. Para cada ambiente foram comparados o ponto de saturação, desempenho geral e qualidade de serviço em diferentes cargas de trabalho, desempenho do servidor Web e do servidor de aplicação. Os dados coletados foram comparados e em todos dos casos abordados, os p-valores foram maiores que 0,05.

Pfitscher, et al., (2013) usam monitoração para permitir que um cliente de nuvem determine se os recursos disponíveis para suas máquinas virtuais estão provisionados corretamente, ou se estão sub-provisionados ou super-provisionados. O foco está nos recursos de processador e rede, que podem ser facilmente reservados nos ambientes de virtualização atuais. A eficácia da abordagem proposta é demonstrada por resultados experimentais no hipervisor Xen. As métricas de desempenho são todas coletadas dentro das máquinas virtuais,

23

sendo, portanto, diretamente acessíveis ao usuário, sem a necessidade de intermediação do provedor. Segundo os autores, os resultados experimentais com Linux e Xen demonstram que a abordagem proposta é capaz de diagnosticar corretamente o provisionamento em diferentes cenários de carga.

O uso de técnicas de aprendizado de máquina para provisionamento de recursos em nuvens é proposto por (Rao, et al., 2011; Kundu, et al., 2012; Vasic, et al., 2012). Esses trabalhos associam a utilização de recursos com medidas de desempenho das aplicações (como tempo de resposta) e usam classificadores estatísticos para determinar a classe à qual pertence uma aplicação e, consequentemente, os recursos que devem ser alocados para sua execução. Além do foco em aplicações, e não em máquinas virtuais, os resultados demonstram que essa abordagem funciona para cargas de trabalho estáticas, mas tem problemas com cargas variáveis e/ou desconhecidas.

Heo, et al., (2009) propõem uma ferramenta para gerenciar a alocação de processador e memória de máquinas virtuais sobre a hipervisor Xen, possibilitando o overbooking. A utilização de ambos os recursos é observada periodicamente; a partir dessas observações e de um valor objetivo, calcula-se a quantidade de recursos necessária.

Southern, G., et al., (2009), apresentam um trabalho que permite que os sistemas operacionais hóspedes utilizem multiprocessamento simétrico (SMP) em uma máquina virtual. Por fim, existe uma análise de desempenho de multiprocessamento simétrico nos hipervisores VMware ESX 3.5 e Xen 3.2. Foram realizadas análises de carga single-threaded e multi- threaded para medir a forma como a virtualização realiza a escala durante a execução SMP.

Campos, et al., (2009) abordam questões relativas à virtualização de desktops e visa avaliar a aplicabilidade dessa técnica. Para isso, usa-se teste de carga de programas que realiza um conjunto adequado de instruções que geram cargas no sistema, usando o Benchmark SPEC_virt. Foi utilizado o hipervisor VMware Esxi para dois ambientes virtualizados (virtualização total e paravirtualização), com os sistemas operacionais Windows 7 e GNU/Linux com a distribuição Ubuntu 9.10. Foram realizados testes de carga com os algoritmos: cálculo de primos, alocação de memória, escrita em disco, leitura em disco, para verificar se existe alguma diferença de desempenho entre as máquinas virtuais. Por fim, os autores concluíram existir diferença entre a virtualização total e a paravirtualização.

Beserra, et al., (2012) apresentam um trabalho com o objetivo de descobrir qual virtualizador implementa clusters com maior desempenho, qual virtualizador gerencia melhor os recursos de rede em um ambiente de cluster e qual virtualizador obtém melhor desempenho

24

em situações onde é exigido uso intensivo do sistema de arquivos do cluster. Foram testadas as principais ferramentas de virtualização para a plataforma Windows, o VirtualPC, o VirtualBox e o VMware Workstation. Os algoritmos testados foram o NetPIPE que efetua simples testes de ping-pong, enviando mensagens entre dois processadores. O MPI-I/O Test emprega a biblioteca MPI-I/O, que permite que vários processos que estejam sendo executados em vários nós abram e compartilhem arquivos de maneira consistente. Para cada algoritmo de teste foram realizadas medidas de desempenho de processamento, rede, operações de I/O. Por fim, os autores concluem que nos testes de desempenho de processamento sustentado e capacidade de comunicação, o VirtualBox obteve o melhor desempenho. Já nos testes com operações I/O VMware Workstation obteve desempenho superior. Os autores concluem que a melhor opção é o VirtualBox.

Li, et al., (2013) realizaram experimentos para medições de vários benchmarks usando Hadoop MapReduce para avaliar e comparar o impacto no desempenho de três hipervisores populares: CVM, Xen, e KVM. Foram descobertas diferenças de desempenho entre os hipervisores em relação ao tipo de carga de trabalho (CPU ou I/O intensivo), o tamanho da carga de trabalho e colocação de máquina virtual. Os autores concluem que as diferenças de desempenho mostradas entre os hipervisores deverão ser analisadas mais profundamente no futuro usando aplicações para ambientes de nuvem.

Hwang, et al., (2013) discutem que, apesar dos avanços recentes nas arquiteturas da CPU e das novas técnicas de virtualização terem reduzido o custo do uso de virtualização de desempenho, os custos ainda existem, particularmente, quando várias máquinas virtuais estão competindo por recursos. Então os autores propõem uma comparação de desempenho em configurações de virtualização assistida por hardware, considerando quatro plataformas populares de virtualização Hyper-V, KVM, vSphere e Xen. Para a realização dos testes, foram criados ambientes virtuais com o sistema operacional Ubuntu com um núcleo de processamento virtual e 2GB de memória RAM. Foram realizados testes nos benchmarks: Bytemark, Ramspeed, Bonnie++ & FileBench, Netperf.

Existem outros trabalhos na literatura (Deshane, et al., 2008; Gent, et al., 2011; Jungels, 2012) que realizam comparações de desempenho entre as máquinas virtuais. Porém, o interessante seria analisar os dados encontrados nos experimentos, usando algum modelo estatístico (ver Capítulo 3).

Os trabalhos apresentados não utilizam nenhuma ferramenta estatística para análise dos dados execto o trabalho apresentado por Sridharan, (2012) que utiliza o teste-t para comparação

25

de médias dos grupos. Todos os trabalhos apresentados utilizam somente a análise focando somente um tipo de sistema operacional ou tipo de máquina virtual. O trabalho apresentado por Coutinho, et Al. (2012) é o único que utiliza a análise de algoritmo em ambientes em Computação em Nuvens.