Virtualização Um comparativo entre Xen e VMware

7
 2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil. 175 Virtualização: Um compara tivo entre Xen e VMware Diego Grosmann 1 , Fábio Abrantes Diniz 1 , Thiago Reis da Silva 1  1 Mestrado em Ciência da Computação Universidade do Estado do Rio Grande do Norte - UERN Universidade Fede ral Rural do Semi-Árido - UFERSA {diegogrosmann, fabio.abrantes.diniz, trsilva.si}@gmail.com  Abstract. The constant pursuit of innovation by firms became each day new technologies are created. One such technology is virtualization, which allows to install multiple operating systems, independent of each other in a single  physical machine. This paper aims at presenting basic concepts about virtual- ization and how it works. It will show the existing types of virtualization, as well as comparative performance between the two main solutions available in the free market as the: VMware ESXi and XenServer.  Resumo. A constante busca das empresas por inovações faz com que a cada dia novas tecnologias sejam criadas. Uma dessas tecnologias é a virtualiza- ção, a qual possibilita instalar vários sistemas operacionais, independentes entre si, em uma única máquina física. O presente artigo tem por objetivo apresentar os conceitos básicos sobre o que é a virtualização e como ela fun- ciona. Serão apresentados os tipos de virtualização existentes, assim como um comparativo de desempenho entre as duas principais soluções gratuitas dis-  poníveis no mercado: VMwa re ESXi e XenServer. 1. Introdução Com o constante aumento da demanda por informações rápidas e seguras, provenientes de sistemas informatizados, tem-se a necessidade de se investir cada vez mais em servi- dores. Porém, alguns obstáculos são identificados desde a etapa de instalação até a utili- zação dos servidores pelas empresas. Entre as várias dificuldades destacam-se os altos custos relacionados às complexidades das tarefas de customização e as dificuldades de operação. Para tentar diminuir o custo desse investimento surgiu a virtualização. Para a empr esa VMware [1], “virtualização é a possibilidade de se executar vá- rias máquinas virtuais com sistemas operacionais independentes em cima de uma única máquina física compartilhando os hardwares entre elas”. Logo, virtualização é uma fo r- ma de esconder as características físicas de uma plataforma computacional dos utiliza- dores, utilizando hardwares virtuais para emular um ou mais ambientes isolados. Fazen- do com que seja possível instalar vários Sistemas Operacionais (SO) independentes en- tre si em uma única máquina física. Trazendo um melhor aproveitamento do hardware físico, pois, elimina a necessidade de termos um computador físico para cada SO ou serviço.

Transcript of Virtualização Um comparativo entre Xen e VMware

Page 1: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 1/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

175

Virtualização: Um comparativo entre Xen e VMware

Diego Grosmann1, Fábio Abrantes Diniz1, Thiago Reis da Silva1 

1Mestrado em Ciência da ComputaçãoUniversidade do Estado do Rio Grande do Norte - UERN

Universidade Federal Rural do Semi-Árido - UFERSA

{diegogrosmann, fabio.abrantes.diniz, trsilva.si}@gmail.com

 Abstract. The constant pursuit of innovation by firms became each day new

technologies are created. One such technology is virtualization, which allows

to install multiple operating systems, independent of each other in a single

 physical machine. This paper aims at presenting basic concepts about virtual-

ization and how it works. It will show the existing types of virtualization, as

well as comparative performance between the two main solutions available in

the free market as the: VMware ESXi and XenServer.

 Resumo. A constante busca das empresas por inovações faz com que a cada

dia novas tecnologias sejam criadas. Uma dessas tecnologias é a virtualiza-

ção, a qual possibilita instalar vários sistemas operacionais, independentes

entre si, em uma única máquina física. O presente artigo tem por objetivo

apresentar os conceitos básicos sobre o que é a virtualização e como ela fun-

ciona. Serão apresentados os tipos de virtualização existentes, assim como umcomparativo de desempenho entre as duas principais soluções gratuitas dis-

 poníveis no mercado: VMware ESXi e XenServer.

1. Introdução

Com o constante aumento da demanda por informações rápidas e seguras, provenientesde sistemas informatizados, tem-se a necessidade de se investir cada vez mais em servi-dores. Porém, alguns obstáculos são identificados desde a etapa de instalação até a utili-zação dos servidores pelas empresas. Entre as várias dificuldades destacam-se os altoscustos relacionados às complexidades das tarefas de customização e as dificuldades de

operação. Para tentar diminuir o custo desse investimento surgiu a virtualização.Para a empr esa VMware [1], “virtualização é a possibilidade de se executar vá-

rias máquinas virtuais com sistemas operacionais independentes em cima de uma únicamáquina física compartilhando os hardwares entre elas”. Logo, virtualização é uma for-ma de esconder as características físicas de uma plataforma computacional dos utiliza-dores, utilizando hardwares virtuais para emular um ou mais ambientes isolados. Fazen-do com que seja possível instalar vários Sistemas Operacionais (SO) independentes en-tre si em uma única máquina física. Trazendo um melhor aproveitamento do hardwarefísico, pois, elimina a necessidade de termos um computador físico para cada SO ouserviço.

Page 2: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 2/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

176

A ideia da virtualização dos servidores não é nova, ela começou na década de 60como é retratado em [2]. Na década de 70 era comum que cada fabricante de computa-dor tivesse o seu próprio SO o qual causava grandes problemas de compatibilidade com

sistemas legados1. Na época o conceito de virtualização foi explorado a risca, com acriação de uma camada de software que ficava entre o SO e a aplicação. A Criação doshardwares virtuais fazia a ponte entre os sistemas legados e o hardware físico [3].

 No entanto, com o aumento da capacidade computacional surge outro problema.Os administradores de rede, pensando em melhorar a disponibilidade de servidores, ten-dem a colocar um serviço por SO (técnica conhecida como consolidação de servidores),o que acarreta um desperdício de recursos, já que dificilmente um serviço irá utilizar toda a capacidade de hardware disponibilizada. Frente a esse novo problema a virtuali-zação volta com força total.

A perspectiva é utilizar, ao máximo, cada recurso de hardware existente. Comuma melhor utilização dos hardwares o gasto com eles diminui, aumentando o custo

 benefício dos mesmos [3]. Tendo visto a importância que a virtualização tem atualmen-te, algumas empresas têm desenvolvido produtos para suprir as necessidades do merca-do. Segundo [4] os três principais fornecedores de software de virtualização que existemhoje no mercado são VMware (ESXServer, VMware ESXi, e VMware vSphere), Mi-crosoft (Hyper-V) e Citrix (Xen Server).

Deste modo, o artigo está estruturado da seguinte forma: na seção 2 apresentam-se as técnicas de virtualização, a seção seguinte aborda os tipos de virtualização. Naseção 4 são apresentados os testes e na subseção 4.1 são apresentados os resultados, e

 por fim a seção 5 traz as conclusões.

2. Virtualização

A virtualização é um recurso utilizado para esconder ou mascarar detalhes da infraestru-tura de hardware ou de software. Dessa forma o que é executado sobre a plataforma vir-tualizada passa a dar mais foco na superestrutura, ou seja, na lógica do negócio. Nesta

 perspectiva [5], identificou três níveis de virtualização:

   Nível de hardware em que a camada de virtualização é colocada diretamente so- bre a máquina física e são apresentadas as camadas superiores como um hardwa-re abstrato ou similar;

   Nível de sistema operacional permite a criação de partições lógicas em uma pla-taforma de modo que cada partição seja vista como uma máquina isolada, masque compartilha os mesmos recursos de sistema;

   Nível de linguagem de programação, em que a virtualização é um programa deaplicação do SO. O objetivo é definir uma máquina abstrata sobre a qual é exe-cutada uma aplicação desenvolvida em uma linguagem de programação de altonível.

1

Sistemas legados é o termo utilizado em referência aos sistemas computacionais de uma organização que,apesar de serem bastante antigos, fornecem serviços essenciais.

Page 3: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 3/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

177

O software que gerencia a distribuição de recursos de hardware para cada SOvirtualizado, criando um ambiente virtual isolado para cada um deles, é chamado deMonitor de Máquina Virtual (MMV), também chamado hypervisor . Um ponto impor-

tante a se destacar é que o MMV trabalha diretamente sobre o hardware isso quer dizer que o MMV é o primeiro processo a ser executado. Nesse sentido, primeiro executamoso MMV e este, por sua vez, coloca as máquinas virtuais em execução.

3. Tipos de Virtualização

Com a Evolução dos computadores, a arquitetura x86 se tornou a mais utilizada. Ela provê quatro modos de operação para o processador os quais são chamados de anéis de proteção (rings) ou CPL (Current privilege mode) e que são identificados de zero a três.Os SOs convencionais, tais como Windows e Linux, utilizam apenas dois desses modos.Usam o modo zero que tem o maior privilégio para executar as informações privilegia-

das pelo sistema e o modo três que é responsável por executar as instruções que estive-rem em modo usuário [3].

Devido às arquiteturas citadas não conterem instruções específicas para a virtua-lização, desenvolveu-se duas técnicas de virtualização: a virtualização total e a paravir-tualização. Na virtualização total é feita uma simulação completa dos hardwares subja-centes, resultando em um sistema capaz de executar qualquer software que execute dire-tamente sobre o hardware [6]. Com essa técnica temos o problema do SO virtualizado,tentar acessar o processador no modo privilegiado. Para resolver esse problema, a MMVintercepta as instruções da máquina virtual (MV), em seguida as analisa e depois as exe-cuta. A grande vantagem desse sistema é que o SO virtualizado não precisa ser modifi-

cado para ser executado pelo MMV [3].Porém, há alguns problemas neste tipo de virtualização. Primeiro, por causa da

grande diversidade de dispositivos que compõem um computador, é inviável implemen-tar uma versão virtual para todos os dispositivos. A solução foi utilizar versões genéri-cas para eles, o que acarreta na perda de algumas características dos dispositivos reaisacabando por subutilizá-los. Outro problema é a perda de desempenho ocasionada pelostestes para verificação da sensibilidade das instruções da MV [3].

Já a paravirtualização, a princípio, parece uma virtualização de hardware, porém, propõe-se que o SO saiba que está sendo executado na camada virtual e interaja com amesma. Isso implica na alteração do SO virtualizado, mas garante uma grande coopera-

ção entre as duas camadas. O que gera um grande ganho de desempenho. Outro impor-tante ganho é que a paravirtualização não simula um novo hardware para a MV. Atravésde modificações no núcleo do sistema, possibilita que as chamadas de sistemas que serelacionem ao hardware sejam controladas pelo MMV. O que causa na MV a sensaçãode estar acessando diretamente o hardware, logo não necessitando mais o uso de driversgenéricos, permitindo, assim, o uso da capacidade total do hardware [7]. Um inconveni-ente da paravirtualização é a incapacidade de se alterar o SO de sistemas de código fe-chado, como é o caso dos SOs da Microsoft.

Embora a paravirtualização apresente um ganho de desempenho expressivo fren-te à virtualização total, essa disparidade tem sido superada pela presença de instruções

de virtualização nos processadores da Intel-VT e da AMD-V.

Page 4: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 4/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

178

4. Testes

Com o objetivo de realizar uma análise mais minuciosa das soluções de virtualização

gratuitas disponíveis no mercado (VMware ESXi e XenServer da Citrix) foi montadoum ambiente de testes de desempenho. Os sistemas foram instalados em dois servidoresidênticos, e através de softwares para medição de desempenho, foram analisados o de-sempenho do processador, da memória e do disco rígido. Para os testes foram utilizadosos seguintes equipamentos e softwares:

  VMware ESXi 4.1 e XenServer 5.6;

  Duas máquinas de servidor da marca HP modelo DL380 G7, cujas configuraçõessão: dois processadores Xeon Quad-Core E5630 2.53 GHz, memória RAM 16GB DDR3 1333 MHz, 2 HDs SAS 146 GB 15.000 RPM, placa controladora ar-

ray SAS com cache de 256 MB, 6 placas de rede Gigabit Ethernet ;

  Inquisitor 3.1: um sistema para testes de hardware, baseado em Debian, sob li-cença GPLv3. É um sistema de certificação, adequado tanto para empresas euso doméstico, personalizável, modular e disponível em formato Live CD/DVD.Esse sistema disponibiliza vários softwares que analisam e testam hardware.

Tanto o sistema VMware ESXi como o XenServer da Citrix fazem virtualizaçãoem nível de SO. Ambos utilizaram a virtualização completa e foram beneficiados pelosuporte a instruções de virtualização presentes no processador Xeon Quad-Core E5630.

4.1. Resultados

Para o teste utilizou-se a versão completa do pacote de testes do programa Inquisitor oqual foi executada 20 vezes. Avaliou-se as médias dos resultados para poder identificar qual teve o melhor desempenho, e avaliou-se o desvio padrão2. Com o desvio padrãoidentificou-se o quanto o sistema é estável. Desvios muito altos significam pouca estabi-lidade.

Para avaliar o desempenho do processador, o teste utilizado foi o Whetstone. OWhetstone é um programa, com poucas linhas de código, composto de vários módulos.Cada módulo utiliza um tipo diferente de variável, e explora diferentes características dalinguagem de programação sendo executadas várias vezes através de loops " FOR". Osresultados são medidos em termos de MWIPS (Mega Whetstone Instructions per Second  

- Milhões de Instruções Whetstone por Segundo). As vantagens deste benchmark são oseu tamanho reduzido e simplicidade no código, além de explorar bastante as operaçõesem ponto-flutuante. Portanto, serve como comparativo para pequenas aplicações cientí-ficas em computadores de pequeno e médio porte. É apresentado na Figura 1, os resul-tados do teste Whetstone.

2

 Desvio padrão é a média dos valores absolutos da diferença da média de um conjunto de valores e umvalor específico 

Page 5: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 5/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

179

Figura 1: Gráficos dos resultados do teste Whetstone

Em média o VMware alcançou um desempenho 1,69% maior que o Xen nesteteste. Esta diferença é pequena, mas se pensarmos que cada SO cliente que estiver sendoexecutado sobre a MV terá uma perda de 1,69%, a perda acumulada de 5 SOs será de

8,45% o que já é um valor bastante alto. Também observamos que o VMware apresen-tou um desvio padrão 6,58% menor que o do Xen o que indica que o VMware tem umaestabilidade maior no processamento. Para avaliarmos a memória, foram testadas asoperações de cópia, comparação, adição e cópia/comparação e adição juntas. Os resulta-dos são apresentados na Figura 2. 

Figura 2: Gráfico dos resultados do teste de memória

O Xen obteve um desempenho 12,26% maior que o VMware na operação decópia dos dados da memória e 0,17% maior na operação de comparação de dados. Já naoperação de adição de dados na memória o VMware teve uma taxa de bits 5,02% maior que a do Xen e na operação em bloco (adicionar, copiar e comparar) o VMware foi11,86% mais eficiente. Assim o Xen tem um desempenho melhor em funções que exi-gem um acesso rápido a dados da memória, e o VMware se destaca em operações queexigem muita escrita e interação com a memória. Contudo, o Xen apresentou um desvio

 padrão muito elevado, em média 57,33% maior que o VMware o que mostra que o Xenapesar de ser melhor na leitura de dados da memória é muito instável.

Page 6: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 6/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

180

Figura 3: Gráfico dos resultados do teste de disco

  No comparativo de acesso ao disco rígido mostrado na Figura 3, o VMwareapresentou um desempenho muito superior ao do Xen no acesso ao disco, já no acesso amemória cache do disco o Xen apresentou em desempenho 0,48% maior do que oVMware. Entretanto, o VMware apresentou um desvio padrão muito superior ao do Xenisso mostra uma grande instabilidade no VMware.

Conclusão

A virtualização é uma saída para as empresas que precisam ter vários SO sendo execu-tados em paralelo e não tem recurso para a compra de vários servidores. Existem váriasempresas que disponibilizam SO para a virtualização de servidores, cada uma com ca-

racterísticas específicas, mas seguindo um mesmo padrão.Os testes feitos mostraram que no quesito processamento, o VMware mostrou-se

superior ao Xen. O Xen por sua vez mostrou superioridade no acesso ao disco rígido, eambos tiveram uma instabilidade no critério memória. Portanto, se a intenção for utili-zar aplicações que requeiram muito do processador, seria conveniente utilizar o VMwa-re. Porém, já se a intenção for utilizar aplicações que necessitem muita leitura e escritaem disco a melhor opção é o Xen.

 No entanto, ainda devemos levar em consideração outros fatores que não foramabordados neste artigo, como a disponibilidade de ferramentas de apoio. Algumas em-

 presas disponibilizam ferramentas que podem auxiliar muito no gerenciamento dos re-cursos dos servidores.

Referência

[1] VMware. Noções básicas da virtualização. Disponível em: http://www.vmware.com/br/virtualization/what-is-virtualization.html. Acessado em: 09 out 2010.

[2] Goldberg, Robert. Survey of Virtual Machine research. IEEE Computer Magazi-ne, Vol 7: 1974.

[3] Carissimi, Alexandre. Virtualização: da teoria a soluções. In: Simpósio brasileiro deredes de computadores e sistemas distribuídos, 2008, Rio de Janeiro. Livro texto dos

minicursos. Rio de Janeiro: SBC, 2008. p. 174-199.

Page 7: Virtualização Um comparativo entre Xen e VMware

5/11/2018 Virtualização Um comparativo entre Xen e VMware - slidepdf.com

http://slidepdf.com/reader/full/virtualizacao-um-comparativo-entre-xen-e-vmware-55a0d20589714 7/7

 

2º Workshop Técnico-Científico de Computação (WTCC), 16 e 17 de Junho de 2011, Mossoró, RN, Brasil.

181

[4] Veras, Manoel; Carissimi, Alexandre; Kassick, Rodrigo; Souza, Sergio. Virtualiza-

ção de Servidores. Rio de Janeiro: RNP. 2010.

[5] Carissimi, Alexandre. Virtualização: Princípios básicos e aplicações. In: RicardoVargas Dorneles; Benhur Stein; Carlos Holbig; Phlippe Olivier Alexandre Navaux.(Org.). ERAD 2009 - 9a Escola Regional de Alto Desempenho. Porto Alegre: SBC,2009, v. 1, p. 39-69.

[6] Ribas, Marcelo. Consolidação de Servidores: Estudo de Caso. Novo Hamburgo:Instituto de Ciências Exatas e Tecnológicas, 2008. 42p. Tese. Curso de Ciência daComputação. Novo Hamburgo. 2008.

[7] Rossi, Fábio. Alocação dinâmica de Recursos no Xen. 18 jan 2008. 68f. Dis-sertação (Mestrado em Ciência da Computação). Programa de Pós-Graduação emCiência da Computação , Pontifícia Universidade Católica do Rio Grande do Sul.

Porto Alegre. 2008.