Вы находитесь на странице: 1из 7

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

Virtualizao: Um comparativo entre Xen e VMware


Diego Grosmann1, Fbio Abrantes Diniz1, Thiago Reis da Silva1 Mestrado em Cincia da Computao Universidade do Estado do Rio Grande do Norte - UERN Universidade Federal Rural do Semi-rido - UFERSA
{diegogrosmann, fabio.abrantes.diniz, trsilva.si}@gmail.com
1

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 virtualization 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 inovaes faz com que a cada dia novas tecnologias sejam criadas. Uma dessas tecnologias a virtualizao, a qual possibilita instalar vrios sistemas operacionais, independentes entre si, em uma nica mquina fsica. O presente artigo tem por objetivo apresentar os conceitos bsicos sobre o que a virtualizao e como ela funciona. Sero apresentados os tipos de virtualizao existentes, assim como um comparativo de desempenho entre as duas principais solues gratuitas disponveis no mercado: VMware ESXi e XenServer.

1. Introduo
Com o constante aumento da demanda por informaes rpidas e seguras, provenientes de sistemas informatizados, tem-se a necessidade de se investir cada vez mais em servidores. Porm, alguns obstculos so identificados desde a etapa de instalao at a utilizao dos servidores pelas empresas. Entre as vrias dificuldades destacam-se os altos custos relacionados s complexidades das tarefas de customizao e as dificuldades de operao. Para tentar diminuir o custo desse investimento surgiu a virtualizao. Para a empresa VMware [1], virtualizao a possibilidade de se executar vrias mquinas virtuais com sistemas operacionais independentes em cima de uma nica mquina fsica compartilhando os hardwares entre elas. Logo, virtualizao uma forma de esconder as caractersticas fsicas de uma plataforma computacional dos utilizadores, utilizando hardwares virtuais para emular um ou mais ambientes isolados. Fazendo com que seja possvel instalar vrios Sistemas Operacionais (SO) independentes entre si em uma nica mquina fsica. Trazendo um melhor aproveitamento do hardware fsico, pois, elimina a necessidade de termos um computador fsico para cada SO ou servio. 175

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

A ideia da virtualizao dos servidores no nova, ela comeou na dcada de 60 como retratado em [2]. Na dcada de 70 era comum que cada fabricante de computador tivesse o seu prprio SO o qual causava grandes problemas de compatibilidade com sistemas legados1. Na poca o conceito de virtualizao foi explorado a risca, com a criao de uma camada de software que ficava entre o SO e a aplicao. A Criao dos hardwares virtuais fazia a ponte entre os sistemas legados e o hardware fsico [3]. No entanto, com o aumento da capacidade computacional surge outro problema. Os administradores de rede, pensando em melhorar a disponibilidade de servidores, tendem a colocar um servio por SO (tcnica conhecida como consolidao de servidores), o que acarreta um desperdcio de recursos, j que dificilmente um servio ir utilizar toda a capacidade de hardware disponibilizada. Frente a esse novo problema a virtualizao volta com fora total. A perspectiva utilizar, ao mximo, cada recurso de hardware existente. Com uma melhor utilizao dos hardwares o gasto com eles diminui, aumentando o custo benefcio dos mesmos [3]. Tendo visto a importncia que a virtualizao tem atualmente, algumas empresas tm desenvolvido produtos para suprir as necessidades do mercado. Segundo [4] os trs principais fornecedores de software de virtualizao que existem hoje no mercado so VMware (ESXServer, VMware ESXi, e VMware vSphere), Microsoft (Hyper-V) e Citrix (Xen Server). Deste modo, o artigo est estruturado da seguinte forma: na seo 2 apresentamse as tcnicas de virtualizao, a seo seguinte aborda os tipos de virtualizao. Na seo 4 so apresentados os testes e na subseo 4.1 so apresentados os resultados, e por fim a seo 5 traz as concluses.

2. Virtualizao
A virtualizao um recurso utilizado para esconder ou mascarar detalhes da infraestrutura de hardware ou de software. Dessa forma o que executado sobre a plataforma virtualizada passa a dar mais foco na superestrutura, ou seja, na lgica do negcio. Nesta perspectiva [5], identificou trs nveis de virtualizao: Nvel de hardware em que a camada de virtualizao colocada diretamente sobre a mquina fsica e so apresentadas as camadas superiores como um hardware abstrato ou similar; Nvel de sistema operacional permite a criao de parties lgicas em uma plataforma de modo que cada partio seja vista como uma mquina isolada, mas que compartilha os mesmos recursos de sistema; Nvel de linguagem de programao, em que a virtualizao um programa de aplicao do SO. O objetivo definir uma mquina abstrata sobre a qual executada uma aplicao desenvolvida em uma linguagem de programao de alto nvel.

Sistemas legados o termo utilizado em referncia aos sistemas computacionais de uma organizao que, apesar de serem bastante antigos, fornecem servios essenciais.

176

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

O software que gerencia a distribuio de recursos de hardware para cada SO virtualizado, criando um ambiente virtual isolado para cada um deles, chamado de Monitor de Mquina Virtual (MMV), tambm chamado hypervisor. Um ponto importante 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 executamos o MMV e este, por sua vez, coloca as mquinas virtuais em execuo.

3. Tipos de Virtualizao
Com a Evoluo dos computadores, a arquitetura x86 se tornou a mais utilizada. Ela prov quatro modos de operao para o processador os quais so chamados de anis de proteo (rings) ou CPL (Current privilege mode) e que so identificados de zero a trs. Os SOs convencionais, tais como Windows e Linux, utilizam apenas dois desses modos. Usam o modo zero que tem o maior privilgio para executar as informaes privilegiadas pelo sistema e o modo trs que responsvel por executar as instrues que estiverem em modo usurio [3]. Devido s arquiteturas citadas no conterem instrues especficas para a virtualizao, desenvolveu-se duas tcnicas de virtualizao: a virtualizao total e a paravirtualizao. Na virtualizao total feita uma simulao completa dos hardwares subjacentes, resultando em um sistema capaz de executar qualquer software que execute diretamente sobre o hardware [6]. Com essa tcnica temos o problema do SO virtualizado, tentar acessar o processador no modo privilegiado. Para resolver esse problema, a MMV intercepta as instrues da mquina virtual (MV), em seguida as analisa e depois as executa. A grande vantagem desse sistema que o SO virtualizado no precisa ser modificado para ser executado pelo MMV [3]. Porm, h alguns problemas neste tipo de virtualizao. Primeiro, por causa da grande diversidade de dispositivos que compem um computador, invivel implementar uma verso virtual para todos os dispositivos. A soluo foi utilizar verses genricas para eles, o que acarreta na perda de algumas caractersticas dos dispositivos reais acabando por subutiliz-los. Outro problema a perda de desempenho ocasionada pelos testes para verificao da sensibilidade das instrues da MV [3]. J a paravirtualizao, a princpio, parece uma virtualizao de hardware, porm, prope-se que o SO saiba que est sendo executado na camada virtual e interaja com a mesma. Isso implica na alterao do SO virtualizado, mas garante uma grande cooperao entre as duas camadas. O que gera um grande ganho de desempenho. Outro importante ganho que a paravirtualizao no simula um novo hardware para a MV. Atravs de modificaes no ncleo do sistema, possibilita que as chamadas de sistemas que se relacionem ao hardware sejam controladas pelo MMV. O que causa na MV a sensao de estar acessando diretamente o hardware, logo no necessitando mais o uso de drivers genricos, permitindo, assim, o uso da capacidade total do hardware [7]. Um inconveniente da paravirtualizao a incapacidade de se alterar o SO de sistemas de cdigo fechado, como o caso dos SOs da Microsoft. Embora a paravirtualizao apresente um ganho de desempenho expressivo frente virtualizao total, essa disparidade tem sido superada pela presena de instrues de virtualizao nos processadores da Intel-VT e da AMD-V. 177

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

4. Testes
Com o objetivo de realizar uma anlise mais minuciosa das solues de virtualizao gratuitas disponveis no mercado (VMware ESXi e XenServer da Citrix) foi montado um ambiente de testes de desempenho. Os sistemas foram instalados em dois servidores idnticos, e atravs de softwares para medio de desempenho, foram analisados o desempenho do processador, da memria e do disco rgido. Para os testes foram utilizados os seguintes equipamentos e softwares: VMware ESXi 4.1 e XenServer 5.6; Duas mquinas de servidor da marca HP modelo DL380 G7, cujas configuraes so: dois processadores Xeon Quad-Core E5630 2.53 GHz, memria RAM 16 GB DDR3 1333 MHz, 2 HDs SAS 146 GB 15.000 RPM, placa controladora array 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 licena GPLv3. um sistema de certificao, adequado tanto para empresas e uso domstico, personalizvel, modular e disponvel em formato Live CD/DVD. Esse sistema disponibiliza vrios softwares que analisam e testam hardware. Tanto o sistema VMware ESXi como o XenServer da Citrix fazem virtualizao em nvel de SO. Ambos utilizaram a virtualizao completa e foram beneficiados pelo suporte a instrues de virtualizao presentes no processador Xeon Quad-Core E5630. 4.1. Resultados Para o teste utilizou-se a verso completa do pacote de testes do programa Inquisitor o qual foi executada 20 vezes. Avaliou-se as mdias dos resultados para poder identificar qual teve o melhor desempenho, e avaliou-se o desvio padro2. Com o desvio padro identificou-se o quanto o sistema estvel. Desvios muito altos significam pouca estabilidade. Para avaliar o desempenho do processador, o teste utilizado foi o Whetstone. O Whetstone um programa, com poucas linhas de cdigo, composto de vrios mdulos. Cada mdulo utiliza um tipo diferente de varivel, e explora diferentes caractersticas da linguagem de programao sendo executadas vrias vezes atravs de loops "FOR". Os resultados so medidos em termos de MWIPS (Mega Whetstone Instructions per Second - Milhes de Instrues Whetstone por Segundo). As vantagens deste benchmark so o seu tamanho reduzido e simplicidade no cdigo, alm de explorar bastante as operaes em ponto-flutuante. Portanto, serve como comparativo para pequenas aplicaes cientficas em computadores de pequeno e mdio porte. apresentado na Figura 1, os resultados do teste Whetstone.

Desvio padro a mdia dos valores absolutos da diferena da mdia de um conjunto de valores e um valor especfico

178

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

Figura 1: Grficos dos resultados do teste Whetstone

Em mdia o VMware alcanou um desempenho 1,69% maior que o Xen neste teste. Esta diferena pequena, mas se pensarmos que cada SO cliente que estiver sendo executado 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. Tambm observamos que o VMware apresentou um desvio padro 6,58% menor que o do Xen o que indica que o VMware tem uma estabilidade maior no processamento. Para avaliarmos a memria, foram testadas as operaes de cpia, comparao, adio e cpia/comparao e adio juntas. Os resultados so apresentados na Figura 2.

Figura 2: Grfico dos resultados do teste de memria

O Xen obteve um desempenho 12,26% maior que o VMware na operao de cpia dos dados da memria e 0,17% maior na operao de comparao de dados. J na operao de adio de dados na memria o VMware teve uma taxa de bits 5,02% maior que a do Xen e na operao em bloco (adicionar, copiar e comparar) o VMware foi 11,86% mais eficiente. Assim o Xen tem um desempenho melhor em funes que exigem um acesso rpido a dados da memria, e o VMware se destaca em operaes que exigem muita escrita e interao com a memria. Contudo, o Xen apresentou um desvio padro muito elevado, em mdia 57,33% maior que o VMware o que mostra que o Xen apesar de ser melhor na leitura de dados da memria muito instvel.

179

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

Figura 3: Grfico dos resultados do teste de disco

No comparativo de acesso ao disco rgido mostrado na Figura 3, o VMware apresentou um desempenho muito superior ao do Xen no acesso ao disco, j no acesso a memria cache do disco o Xen apresentou em desempenho 0,48% maior do que o VMware. Entretanto, o VMware apresentou um desvio padro muito superior ao do Xen isso mostra uma grande instabilidade no VMware.

Concluso
A virtualizao uma sada para as empresas que precisam ter vrios SO sendo executados em paralelo e no tem recurso para a compra de vrios servidores. Existem vrias empresas que disponibilizam SO para a virtualizao de servidores, cada uma com caractersticas especficas, mas seguindo um mesmo padro. 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 rgido, e ambos tiveram uma instabilidade no critrio memria. Portanto, se a inteno for utilizar aplicaes que requeiram muito do processador, seria conveniente utilizar o VMware. Porm, j se a inteno for utilizar aplicaes que necessitem muita leitura e escrita em disco a melhor opo o Xen. No entanto, ainda devemos levar em considerao outros fatores que no foram abordados neste artigo, como a disponibilidade de ferramentas de apoio. Algumas empresas disponibilizam ferramentas que podem auxiliar muito no gerenciamento dos recursos dos servidores.

Referncia
[1] VMware. Noes bsicas da virtualizao. Disponvel 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 Magazine, Vol 7: 1974. [3] Carissimi, Alexandre. Virtualizao: da teoria a solues. In: Simpsio brasileiro de redes de computadores e sistemas distribudos, 2008, Rio de Janeiro. Livro texto dos minicursos. Rio de Janeiro: SBC, 2008. p. 174-199. 180

2 Workshop Tcnico-Cientfico de Computao (WTCC), 16 e 17 de Junho de 2011, Mossor, RN, Brasil.

[4] Veras, Manoel; Carissimi, Alexandre; Kassick, Rodrigo; Souza, Sergio. Virtualizao de Servidores. Rio de Janeiro: RNP. 2010. [5] Carissimi, Alexandre. Virtualizao: Princpios bsicos e aplicaes. In: Ricardo Vargas 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. Consolidao de Servidores: Estudo de Caso. Novo Hamburgo: Instituto de Cincias Exatas e Tecnolgicas, 2008. 42p. Tese. Curso de Cincia da Computao. Novo Hamburgo. 2008. [7] Rossi, Fbio. Alocao dinmica de Recursos no Xen. 18 jan 2008. 68f. Dissertao (Mestrado em Cincia da Computao). Programa de Ps-Graduao em Cincia da Computao , Pontifcia Universidade Catlica do Rio Grande do Sul. Porto Alegre. 2008.

181

Вам также может понравиться