Você está na página 1de 13

Virtualizao: VMWare e Xen

Diogo Menezes Ferrazani Mattos


GTA/POLI/UFRJ HTTP://www.gta.ufrj.br/

Abstract
Nowadays, the concept of virtualization is being remembered as a possible solution, which has low costs, to provide reliability, isolation and scalability to some systems. Some common uses of virtualization are the server's consolidation and the IT infra-structures virtualization. This paper discuss two types of virtualization: the full system virtualization, shown by the case study of VMWare, and the paravirtualization, shown by Xen.

Resumo
Atualmente o conceito de virtualizao tem sido lembrado como uma possvel soluo de baixo custo para fornecer confiabilidade, isolamento e escalabilidade a alguns sistemas. Algumas utilizaes cada vez mais comuns da virtualizao so a consolidao de servidores e a virtualizao da infra-estrutura de TI. Neste trabalho sero discutidos dois tipos de virtualizao: a virtualizao completa, representa pelo estudo de caso do VMWare, e a paravirtualizao, representada pelo Xen.

1 Introduo
A virtualizao permite que em uma mesma mquina sejam executadas simultaneamente dois ou mais ambientes distintos e isolados. Esse conceito de virtualizao remonta aos antigos mainframes, que deviam ser divididos por vrios usurios em ambientes de aplicao completamente diferentes. Essa realidade da dcada de 1970 foi em grande parte superada nos anos de 1980 e 1990, com o surgimento dos computadores pessoais. No entanto, atualmente h uma onda crescente de interesse sobre as tcnicas de virtualizao. Agora o interesse na virtualizao no se atm somente ao fato de permitir o uso de um mesmo sistema por vrios usurios concomitantemente, mas os principais interesses so a segurana, confiabilidade e disponibilidade, custo, adaptabilidade, balanceamento de carga e suporte a aplicaes legadas.

1.1 Histrico
Os primeiros computadores que surgiram eram gigantescos e muito caros. No entanto, devido grande demanda por uso, estes rapidamente se tornaram indispensveis. Para socializar o uso dos computadores foi criado, no final dos anos 1960, o time-sharing, que permitia o uso de um mesmo computador por vrios usurios simultaneamente de forma transparente. Embora este tenha

sido um grande passo na histria da computao, surgia assim um novo problema, o compartilhamento de um nico computador com outras aplicaes suscetveis a falhas. A fim de sanar esse problema, a primeira soluo proposta foi o uso de vrios computadores, o que se reverteria em um aumento significativo do desempenho e na garantia de isolamento entre as aplicaes. Entretanto esta soluo apresentava um altssimo custo, alm de ser um desperdcio de recursos, j que os computadores ficavam grande parte do tempo ociosos. Tendo isto em vista, nos anos 60 a IBM comeou a desenvolver a primeira mquina virtual, que permitia que um nico computador fosse dividido em vrios. O primeiro sistema de virtualizao desenvolvido foi o CP-67, software para o mainframe IBM 360/67, que disponibilizava ao usurio um sistema virtual do /360 da IBM. Os resultados obtidos com esse sistema foram timos. Aps o CP-67, a IBM lanou o VM/370, um VMM (Virtual Machine Monitor, ou Monitor de Mquina Virtual) para o Sistema /370 com arquitetura estendida, ou seja, com algumas instrues extras que permitiam a virtualizao. Essas foram as primeiras tentativas de virtualizao. Em um cenrio mais atual, a arquitetura mais comum a x86 (IA-32). Essa a arquitetura adotada pelos PCs, que se tornaram commodities. Ao contrrio da arquitetura dos antigos sistemas /370 com arquitetura estendida, que apresentavam instrues que visavam a virtualizao, a arquitetura x86 no foi projetada considerando a virtualizao. Isso pode ser visto em pequeno conjunto de instrues que no necessitam de um modo privilegiado para serem executadas, mas podem prejudicar a estabilidade do sistema. Ainda que seja difcil desenvolver um VMM para a arquitetura x86, algumas tcnicas podem ser usadas para romper com as dificuldades impostas pelo conjunto de instrues desta arquitetura. Voltados para a arquitetura x86, podem ser citados alguns projetos relacionados, tais como VMWare, Xen, Virtual PC, Citrix, Hyper-V, entre outros.

1.2 Definies e Conceitos


Os primeiros conceitos que devemos ter em relao virtualizao so de instrues privilegiadas e no privilegiadas. Essas instrues fazem parte do conjunto de instrues da arquitetura em questo, neste trabalho a arquitetura considerada x86. As instrues noprivilegiadas so aquelas que no modificam a alocao ou o estado de recursos compartilhados por vrios processos simultneos, tais como processadores, memria principal e registradores especiais. Em oposio a essas instrues, temos as instrues privilegiadas, que podem alterar o estado e a alocao desses recursos. Um computador pode operar em dois modos distintos, o modo de usurio ou o de supervisor. O modo de usurio, tambm chamado de espao de aplicao, modo no qual as aplicaes normalmente so executadas. Neste modo, no possvel executar as instrues privilegiadas, que so restritas ao modo de supervisor. O modo de supervisor tem o controle total sobre a CPU, podendo executar todas as instrues do conjunto de instrues do processador em questo, tanto as no-privilegiadas como as privilegiadas. O sistema operacional executado neste modo. Antes de o sistema operacional passar o controle da CPU para uma aplicao do usurio, o bit de controle de modo configurado para o modo de usurio. Vale lembrar que na arquitetura em questo, x86, existem quatro nveis de privilgio, que so chamados de rings. Os rings so numerados de 0 a 3, nos quais o nvel 0 o que tem maior

privilgio na execuo de instrues, por isso, os sistemas operacionais so executados com esse nvel de privilgio. J em um ambiente virtualizado, temos que definir mais dois conceitos, os de sistema operacional hospedeiro e o de sistema operacional visitante. O primeiro, sistema operacional hospedeiro (Host Operating System), refere-se ao sistema operacional nativo da mquina na qual ocorrer a virtualizao, ou seja, este o sistema operacional que executado diretamente sobre o hardware fsico. O segundo, sistema operacional visitante (Gest Operating System), refere-se ao sistema operacional que executado sobre o hardware virtualizado, isto , o sistema operacional que executado na mquina virtual. Uma mquina na qual feita a virtualizao pode contar com apenas um SO hospedeiro sendo executado por vez. No entanto, podem ser executados diversos SOs visitantes simultaneamente. O prximo conceito a ser discutido de vital importncia para o entendimento da virtualizao. O conceito em questo o do Virtual Machine Monitor (VMM), ou seja, Monitor de Mquina Virtual, tambm conhecido por Hypervisor. O Virtual Machine Monitor um componente de software que hospeda as mquinas virtuais [6]. O VMM responsvel pela virtualizao e controle dos recursos compartilhados pelas mquinas virtuais, tais como, processadores, dispositivos de entrada e sada, memria, armazenagem. Tambm funo do VMM escalonar qual mquina virtual vai executar a cada momento, semelhante ao escalonador de processos do Sistema Operacional [5]. O VMM executado no modo de supervisor, no entanto as mquinas virtuais so executadas em modo de usurio. Como as mquinas virtuais so executadas em modo de usurio, quando estas tentam executar uma instruo privilegiada, gerada uma interrupo e o VMM se encarrega de emular a execuo desta instruo.

Aplicaes
Sistema Operacional

Aplicaes
...
Sistema Operacional

Mquina Virtual 1

Mquina Virtual n

Virtual Machine Monitor (VMM) Hardware


Figura 1: Relacionamento das Mquinas Virtuais e do VMM [6].

2. Vantagens e Desvantagens
Existem diversas vantagens na virtualizao, a seguir sero citadas as principais [5]: a) Segurana: Usando mquinas virtuais, pode ser definido qual o melhor ambiente para executar cada servio, com diferentes requerimentos de segurana, ferramentas diferentes e o sistema operacional mais adequado para cada servio. Alm disso, cada mquina virtual isolada das demais. Usando uma mquina virtual para cada servio, a vulnerabilidade de um servio no prejudica os demais. b) Confiana e disponibilidade: A falha de um software no prejudica os demais servios.

c) Custo: A reduo de custos possvel de ser alcanada com a consolidao de pequenos servidores em outros mais poderosos. Essa reduo pode variar de 29% a 64% [5]. d) Adaptao s diferentes cargas de trabalho: Variaes na carga de trabalho podem ser tratadas facilmente. Ferramentas autnomas podem realocar recursos de uma mquina virtual para a outra. e) Balanceamento de carga: Toda a mquina virtual est encapsulada no VMM. Sendo assim fcil trocar a mquina virtual de plataforma, a fim de aumentar o seu desempenho. f) Suporte a aplicaes legadas: Quando uma empresa decide migrar para um novo Sistema Operacional, possvel manter o sistema operacional antigo sendo executado em uma mquina virtual, o que reduz os custos com a migrao. Vale ainda lembrar que a virtualizao pode ser til para aplicaes que so executadas em hardware legado, que est sujeito a falhas e tem altos custos de manuteno. Com a virtualizao desse hardware, possvel executar essas aplicaes em hardwares mais novos, com custo de manuteno mais baixo e maior confiabilidade. Por outro lado, existem as desvantagens da virtualizao, sendo as principais: a) Segurana: Segundo Neil MacDonald, especialista de segurana da Gartner, hoje em dia, as mquinas virtuais so menos seguras que as mquinas fsicas justamente por causa do VMM [2]. Este ponto interessante, pois se o sistema operacional hospedeiro tiver alguma vulnerabilidade, todas as mquinas virtuais que esto hospedadas nessa mquina fsica esto vulnerveis, j que o VMM uma camada de software, portanto, como qualquer software, est sujeito a vulnerabilidades. b) Gerenciamento: Os ambientes virtuais necessitam ser instanciados, monitorados, configurados e salvos [2]. Existem produtos que fornecem essas solues, mas esse o campo no qual esto os maiores investimentos na rea de virtualizao, justamente por se tratar de um dos maiores contra-tempos na implementao da virtualizao. Vale lembrar que o VMWare a plataforma mais flexvel e fcil de usar, mas ainda apresenta falhas que comprometem a segurana, assim como as demais plataformas [2]. c) Desempenho: Atualmente, no existem mtodos consolidados para medir o desempenho de ambientes virtualizados. No entanto, a introduo de uma camada extra de software entre o sistema operacional e o hardware, o VMM ou hypervisor, gera um custo de processamento superior ao que se teria sem a virtualizao. Outro ponto importante de ressaltar que no se sabe exatamente quantas mquinas virtuais podem ser executadas por processador, sem que haja o prejuzo da qualidade de servio.

3. Virtualizao total e para-virtualizao


Existem duas formas de implementao dos monitores de mquina virtual: a virtualizao total e a para-virtualizao. A virtualizao total tem por objetivo fornecer ao sistema operacional visitante uma rplica do hardware subjacente. Dessa forma, o sistema operacional visitante executado sem modificaes sobre o monitor de mquina virtual (VMM), o que traz alguns inconvenientes. O primeiro que o nmero de dispositivos a serem suportados pelo VMM extremamente elevado. Para resolver esse contratempo, as implementaes da virtualizao total usam dispositivos genricos, que funcionam bem para a maioria dos dispositivos disponveis, mas no garantem o uso

da totalidade de sua capacidade. Outro inconveniente da virtualizao total o fato de o sistema operacional visitante no ter conhecimento de que est sendo executado sobre o VMM, ento as instrues executadas pelo sistema operacional visitante devem ser testadas pelo VMM para que depois sejam executadas diretamente no hardware, ou executadas pelo VMM e simulada a execuo para o sistema visitante. Por fim, o ltimo inconveniente da virtualizao total o fato de ter que contornar alguns problemas gerados pela implementao dos sistemas operacionais, j que esses foram implementados para serem executados como instncia nica nas mquinas fsica, no disputando recursos com outros sistemas operacionais. Um exemplo desse ltimo inconveniente uso de paginao na memria virtual, pois h a disputa de recursos entre diversas instncias de sistemas operacionais, o que acarreta em uma queda do desempenho [2].

Figura 2: Virtualizao total na arquitetura x86 [11]. A para-virtualizao uma alternativa virtualizao total. Nesse modelo de virtualizao, o sistema operacional modificado para chamar o VMM sempre que executar uma instruo que possa alterar o estado do sistema, uma instruo sensvel. Isso acaba com a necessidade de o VMM testar instruo por instruo, o que representa um ganho significativo de desempenho. Outro ponto positivo da para-virtualizao que os dispositivos de hardware so acessados por drivers da prpria mquina virtual, no necessitando mais do uso de drivers genricos que inibiam o uso da capacidade total do dispositivo. Embora a para-virtualizao apresentasse um ganho de desempenho significativo frente virtualizao total, essa disparidade tem sido superada devido presena de instrues de virtualizao nos processadores Intel e AMD, que favorecem a virtualizao total. A tecnologia de virtualizao da Intel a IVT (Intel Virtualization Technology), codinome Vanderpool. A da AMD a AMD-V (AMD-Virtualization), codinome Pacfica. Embora tenham sido desenvolvidas para o mesmo propsito, foram desenvolvidas de maneira independentes. Por esse motivo, h alguns problemas na portabilidade de mquinas virtuais de uma arquitetura Intel para a arquitetura AMD e vice-versa. Portanto, tendo em vista as tcnicas de virtualizao, a deciso de qual melhor a tcnica de virtualizao para um dado ambiente est intimamente ligada a qual o processador da mquina fsica que vai hospedar as virtuais, bem como se o processador possui ou no uma extenso no seu conjunto de instrues que suporte a virtualizao.

Figura 3: Para-virtualizao na arquitetura x86.

3. Ferramentas de virtualizao
Nesta seo sero abordadas as duas principais ferramenta de virtualizao para a arquitetura x86: o VMWare e o Xen. Ambos so produtos de mercado, porm possuem algumas diferenas na implementao das tcnicas de virtualizao. A primeira e mais marcante o fato de que o VMWare um exemplo de virtualizao total, enquanto o Xen de para-virtualizao.

3.1 VMWare
O VMWare um dos mais populares arcabouos de virtualizao para a arquitetura x86. O VMWare uma infra-estrutura de virtualizao, fornecendo softwares para virtualizao desde ambientes desktop a ambientes de data centers. Os produtos disponibilizados dividem-se em trs categorias: gerenciamento e automao, intra-estrutura virtual e plataformas de virtualizao [9]. O VMWare executado como se fosse um programa, no espao de aplicao, dentro de um sistema operacional hospedeiro, o qual fica responsvel pela abstrao dos dispositivos que sero disponibilizados para o sistema operacional visitante. Para ter acesso mais rpido aos dispositivos, o VMWare instala um driver especial que permite contornar o problema de ter que suportar um amplo conjunto de dispositivos para a arquitetura x86. Entre os produtos fornecidos pela VMWare, podemos encontrar o VMWare Workstation, Server, Fusion e Player, que so plataformas de virtualizao que so executadas em um sistema operacional hospedeiro. No entanto, h outra plataforma, VMWare ESX, que , por si mesma, um sistema operacional hospedeiro. Este apresenta desempenho melhor que os demais, mas reduz a portabilidade [7]. Na arquitetura do VMWare, a virtualizao ocorre a nvel de processador. As instrues privilegiadas a serem executadas so capturadas e virtualizadas pelo VMM, enquanto que as outras instrues so executadas diretamente no processador hospedeiro [7]. Os recursos de hardware tambm so virtualizados. O suporte para os diversos dispositivos fornecido pelo prprio sistema operacional hospedeiro. Para ter acesso aos dispositivos, o VMWare instala um driver de dispositivo, o VMDriver. Este driver pe a placa de rede em modo promscuo, recebendo todos os quadros ethernet, e cria uma ponte (bridge), que encaminha os quadros para o sistema hspede ou para a mquina virtual especificada.

Figura 4: Virtualizao dos dispositivos no VMWare [11].

3.2 Xen
O Xen um dos mais populares exemplos de para-virtualizao. Na virtualizao total, o sistema operacional visitante tenta executar tarefas protegidas e, por estarem no espao de aplicao do sistema operacional hospedeiro, no podem ser executadas. No entanto, o VMM intervem e executa ou simula a execuo dessas, o que reduz o desepenho da virtualizao total. J a paravirtualizao apresenta-se como uma alternativa a isso, na medida em que o sistema operacional visitante modificado para no tentar executar diretamente na CPU as tarefas protegidas, mas entregar essas ao VMM. Este tipo de virtualizao tem um ganho de desempenho significativo frente total. Uma das maiores vantagens do uso do Xen como VMM na para-virtualizao o fato de que este apresenta um desempenho melhor do que os produtos de virtualizao total, quando a mquina fsica hospedeira no tem instrues de hardware de suporte a virtualizao. No entanto, h a necessidade de que o sistema visitante seja portado para o Xen, o que no chega a ser uma desvantagem, j que os sistemas operacionais mais comuns no mercado tm verses para o Xen. Alguns dos sistemas suportados pelo Xen so Linux, FreeBSD e Windows XP. A tecnologia de virtualizao provida pelo Xen difere da tecnologia do VMWare. O Xen segue o conceito da para-virtualizao, que fornece um conjunto de abstraes (processador virtual, memria virtual, rede virtual etc.) sobre o qual diferentes sistemas podem ser portados [7]. As abstraes no so necessariamente similares ao hardware da mquina fsica hospedeira. Para entender como o Xen implementa a para-virtualizao, importante salientar dois conceitos: o de domnio e o de hypervisor. Os domnios so as mquinas virtuais do Xen. Essas podem ser de dois tipos, privilegiadas (domnio 0) e no-privilegiadas (domnio U). O hypervisor o responsvel por controlar os recursos de comunicao, de memria e de processamento das mquinas virtuais, mas no possui os drivers para manipular os dispositivos diretamente. Quando a mquina hospedeira iniciada, uma mquina virtual do domnio 0, privilegiado, criada. Esse domnio acessa uma interface de controle e executa aplicaes de gerenciamento. As mquinas virtuais dos domnios U s podem ser criadas, iniciadas e desligadas atravs do domnio 0. Na mquina virtual do domnio 0, executado um Linux com ncleo modificado, que pode acessar os recursos da mquina fsica, j que possui privilgios especiais, e ainda se comunicar com as outras mquinas virtuais, domnio U. O sistema operacional do domnio 0 tem que ser modificado para possuir os drivers de dispositivo da mquina fsica e dois drivers que tratam requisies de acessos rede e ao disco

realizadas pelas mquinas virtuais do domnio U. Em suma, s a mquina virtual do domnio 0 tem acesso direto aos recursos da mquina fsica, enquanto que as demais mquinas virtuais tm acesso a uma abstrao dos recursos, que para serem acessados, as mquina virtuais dos domnios U tm que acessar atravs do domnio 0.

Mquina Virtual 1

Mquina Virtual 2

Ap1 Domnio 0 Gerenciamento Linux (modificado) Drivers Reais

...

Apn

Ap1

...

Apn

Sistema Operacional A (modificado) Drivers Virtuais

Sistema Operacional B (modificado) Drivers Virtuais

Gerenciamento de CPU e memria

Hypervisor

Hardware
Dispositivos de E/S

Figura 5: Componentes do Xen: hypervisor e domnios [2]. Para a virtualizao da memria, o Xen reserva para cada mquina virtual uma determinada quantidade de memria, que pode ser alterada a qualquer momento sem a necessidade de terminar ou reiniciar a mquina virtual. Cada mquina virtual pode ter uma ou mais interfaces de rede virtuais. A comunicao entre as interfaces implementada por dois token rings, um para enviar e outro para receber [7]. Atualmente, o Xen conta tambm com um domnio no qual feita a virtualizao total, o que permite que sistemas operacionais no modificados sejam executados sobre o hypervisor Xen. Inicialmente, a escolha pela para-virtualizao justificava-se pelo fato de que o ganho em desempenho era muito maior do que com a virtualizao total. No entanto, com o advento das arquiteturas AMD-V e Intel VT, arquitetura que do o suporte de hardware para a virtualizao, a virtualizao total passou a obter resultados de desempenho melhores que os da para-virtualizao. Vale ressaltar que o domnio de virtualizao total disponvel no Xen a partir da sua verso 3.0, s pode ser usado nas mquinas hospedeiras que possuam suporte de hardware virtualizao.

5. Comparao
A introduo do VMM entre o sistema operacional visitante e o hardware introduz um custo a mais no desempenho da mquina. No entanto, dependendo da configurao da mquina, da aplicao que est sendo executada e alguns outros fatores, esse custo pode ser maior com o uso da virtualizao total ou da para-virtualizao. A seguir ser mostrado um quadro comparativo, com os estudos publicados em [9] e [11], pela VMWare e XenSource, respectivamente. Nos estudos da VMWare foram usados o VMWare Server ESX 3.01 e o XenEnterprise 3.03, j nos estudos da XenSource, foram usados o VMWare Server ESX 3.01 e o XenEnterprise 3.2.

Atualmente no existem testes de desempenho (benchmarks) especializados para mquinas virtuais. Sendo assim, nesses estudos foram realizados testes comuns para a medida de desempenho de computadores. Os testes foram: SPECcpu2000 Integer, compara basicamente computao a nvel de usurio, focado em aplicaes de computao intensiva; Passmark, gera uma carga de trabalho para testar os principais subsistemas que compem um sistema operacional; NetPerf, avalia o desempenho da rede; SPECjbb2005, representa um servidor e sua carga; e a compilao do pacote SPECcpu2000 INT. Teste SPECcpu2000 Integer Resultados da VMWare O VMWare ESX mostrou uma perda de desempenho de 0-6%, enquanto o XenEnterprise 3.03 teve um desempenho de 1-12% menor do que a mquina nativa. Comparado ao sistema nativo, o VMWare mostrou uma queda de desempenho de 4-18% e o Xen, 6-41% Resultados da XenSource

Passmark

NetPerf

SPECjbb2005

SPECcpu2000 INT

O desempenho dos dois foi praticamente igual. Enquanto o Xen mostrou um desempenho 3% menor que a mquina nativa, o VMWare mostrou uma queda de 2%. Ambos obtiveram desempenho semelhante. No entanto, em um dos testes o VMWare obteve uma vantagem de 3,5% sobre o Xen. Compartivamente, o VMWare O Xen 3.2 e o VMWare ESX obteve um resultado muito 3.01 obtiveram resultados prximo ao do sistema nativo, equivalentes. a cima de 95%. Enquanto o Xen 3.03 no chegou a 5% do desempenho do sistema nativo. O ESX Server obteve Desempenho semelhante do resultados prximo a 90% do ESX e do Xen 3.2. Para dois desempenho do sistema nativo, processadores virtuais, o Xen j o Xen no foi testado pois a supera o VMWare com 1,5% verso 3.03, no tem suporte a de vantagem, j para quatro configurao SMP virtual. processadores virtuais, o VMWare supera o Xen com 1% de vantagem. O VMWare ESX 3.01 obteve Desempenhos prximos. O um resultado equivalente a VMWare tem um desempenho 90% do resultado do sistema pouco superior ao Xen, em nativo, enquanto o Xen 3.03 torno de 6%. obteve somente 68% do sistema nativo.

Tabela 1: Comparao entre o VMWare ESX Server e o XenEnterprise Tendo em vista os dados da comparao e levando em considerao que as configuraes das mquinas usadas para os testes da VMWare e da XenSource no apresentam a mesma configurao, mas ambas do suporte de hardware para a virtualizao, possvel perceber que a virtualizao total, representada pelo VMWare ESX Server 3.01, obteve os melhores resultados nos dois testes. No entanto, nos testes realizados pela XenSource, o Xen apresenta alguns aspectos melhores que o VMWare, mas no so resultados significativos.

Vale ressaltar ainda que o desempenho do sistema virtualizado est muito prximo do sistema nativo, o que sugere que a sobre-carga imposta pelo VMM no to significante, considerando uma mquina com suporte de hardware para a virtualizao.

6. Uso da virtualizao
6.1. Consolidao de Servidores Um pensamento comum entre administradores de rede de ter um servidor por servio. Esta medida garante uma maior segurana e maior disponibilidade dos servios na rede, j que a falha de um servidor s afeta um servio e a vulnerabilidade de um servio s expe um servidor. No entanto, a taxa de utilizao dos recursos de hardware de um servidor extremamente baixa, o que indica uma subutilizao de seus recursos. A consolidao de servidores consiste em usar uma mquina fsica com diversas mquinas virtuais, sendo uma para cada servidor. Essa nova abordagem garante o isolamento dos servidores e apresenta as vantagens de aumentar a taxa de utilizao de servidores, reduzir os custos operacionais, criar ambientes mais flexveis e reduzir custos de administrao de TI. O ponto mais importante da consolidao de servidores o melhor aproveitamento dos recursos, j que se existem n servidores com uma taxa de utilizao x, tal que x < 100%, menos custoso e mais vantajoso consolidar os n servidores em apenas um, com taxa de utilizao de n.x, desde que n.x < 100%. Outro ponto a ser levantado que a consolidao permite ocupar menos espao fsico com servidores, pois estes passam a ser apenas uma mquina fsica. Isso propicia menos gastos com eletricidade, j que o nmero de mquinas menor, e com manuteno de mquinas. Vale ainda lembrar que a virtualizao aumenta a flexibilidade, pois pode-se instalar diversos ambientes em uma mesma mquina, por exemplo, ter servios que so executados em ambiente Windows, coexistindo em uma mesma mquina fsica, mas em mquinas virtuais distintas, que servios que so executados em ambiente Linux. 6.2. Virtualizao da Infra-estrutura de TI A virtualizao da infra-estrutura de TI diferencia-se da consolidao de servidores na medida em que a consolidao s prev o isolamento dos servidores em mquinas virtuais, enquanto a virtualizao da infra-estrutura de TI vai mais alm. A virtualizao da infra-estrutura de TI prev a virtualizao de toda a estrutura da rede, com a criao de comutadores, roteadores e outros equipamentos virtuais, interconectado s mquinas virtuais. Outro ponto de distino entre a consolidao e a virtualizao da infra-estrutura que esta permite a alocao dinmica de recursos para as mquinas virtuais, levando a um processo de automao da infra-estrutura de TI. 6.3. Laboratrios de ensino A aplicao da virtualizao em laboratrios de ensino tem por objetivo criar um ambiente que isole o estudante da mquina fsica. O estudante tem acesso a uma instncia de uma mquina virtual, que pode ser facilmente recuperada de uma falha aps o seu uso. Tambm interessante notar que em ambientes virtualizados, a introduo de mais um sistema operacional no laboratrio, no envolve a reinstalao das mquinas, mas somente a cpia dos arquivos de configurao e controle da mquina virtual do novo sistema operacional para as mquinas hospedeiras. Em suma, a virtualizao de laboratrios de ensino tem como vantagens a reduo dos custos de manuteno, aumento da flexibilidade e aumento da segurana.

6.4. Desenvolvimento de Software Em um ambiente de desenvolvimento de software, o uso de ambientes virtuais tem dois objetivos principais. O primeiro fornecer ambientes distintos, com sistemas operacionais diferentes ou de diferentes verses, para que se possa testar o software e verificar o seu comportamento em outros ambientes, concomitantemente. O segundo criar ambientes isolados no qual uma falha do software que est sendo desenvolvido no comprometa o sistema operacional da mquina hospedeira. Se o software em desenvolvimento vier a comprometer o sistema da mquina virtual, este pode ser recuperado copiando os arquivos de outra mquina, ou recuperando os arquivos da mquina comprometida do ltimo backup.

7. Concluso
A virtualizao uma tcnica que est cada vez mais presente na rea de TI. Isso vem sendo revelado pelo grande nmero de empresas que surgem com solues de gerncia de ambientes virtualizados e pelo aumento sucessivo nos investimento na rea [2]. Essa tcnica no recente, mas aps a popularizao do PC, ela perdeu um pouco de destaque no cenrio da TI. No entanto, esse destaque que vem sendo dado virtualizao recentemente fruto do aumento do poder computacional, que no foi seguido pela taxa de utilizao dos computadores, o que gerou muitos recursos ociosos. A fim de aproveitar esses recursos, a idia da virtualizao retornou ao cenrio da TI. Embora a tcnica da virtualizao parea ser a soluo para grande parte dos problemas de infra-estrutura de TI, sua aplicao deve ser estudada e devem ser avaliados os transtornos que podem ser gerados. A aplicao da tcnica da virtualizao traz consigo uma mudana de paradigma e, portanto, deve ser avaliada como um projeto de longo prazo. A sua adoo implicar na mudana de poltica de compras e instalao de novos sistemas. Outro ponto a ser destacado na adoo da tcnica de virtualizao qual vertente deve ser seguida, a virtualizao total ou a para-virtualizao. Cada uma tem sua especificidade e a escolha de qual melhor para o ambiente de trabalho est intimamente ligada a qual ser o hardware subjacente s mquinas virtuais. Caso seja um hardware com suporte virtualizao, ou seja, da arquitetura AMD-V ou Intel VT, o mais aconselhvel o uso do virtualizao total. Caso contrrio, o aconselhvel o uso da para-virtualizao, que obteve melhores resultados de desempenho em teste realizados com hardware sem suporte virtualizao [7]. Em suma, a proposta da virtualizao muito atraente e traz diversos benefcios. Entretanto, como todo sistema computacional, est sujeito a falhas. A adoo da virtualizao como paradigma a ser seguido uma deciso que deve ser tomada avaliando uma srie de fatores e ponderando os riscos e os benefcios. Portanto, para empregar a tcnica de virtualizao, o mais correto a ser feito um projeto de longo prazo, que adote a virtualizao em pequenos passos. Para finalizar, vale lembrar que esta uma rea que est em crescimento e que novos produtos surgem a todo o momento. Portanto, existem questes que ainda no esto completamente resolvidas, tais como a migrao de mquinas, a configurao automtica de mquinas virtuais, facilidades de backup e a recuperao de falhas [2].

8. Perguntas e Respostas
8.1. A virtualizao no um conceito novo. Por que ficou esquecido durante tanto tempo? O conceito de virtualizao ficou esquecido, pois o objetivo principal da virtualizao, quando esta foi criada, dcada de 60, era fornecer ambientes distintos dentro de um mainframe que

permitisse executar uma aplicao legada de outro mainframe. Essa necessidade de vrios ambientes para aplicaes legadas foi sendo perdida com o passar do tempo e o advento do microcomputador. Com o microcomputador, a arquitetura e os sistemas operacionais convergiram para uma unificao de padres. Atualmente, a virtualizao tem voltado ao cenrio das discusses. Isso ocorre, pois o poder computacional tem crescido em uma velocidade mais rpida do que a necessidade de processamento de dados, o que gera um poder computacional ocioso muito elevado. A virtualizao desponta como uma proposta de melhor aproveitar o poder computacional ocioso e, assim, cortar custos operacionais e de administrao em TI. 8.2. O que o hypervisor ou VMM (Virtual Machine Monitor Monitor de Mquina Virtual)? O hypervisor, ou Monitor de Mquina Virtual (VMM), uma camada de software entre o hardware e o sistema operacional. O VMM responsvel por fornecer ao sistema operacional visitante a abstrao da mquina virtual. o hypervisor que controla o acesso dos sistemas operacionais visitantes aos dispositivos de hardware. interessante ressaltar que o VMM no executa em modo usurio, pois ele que deve executar, ou simular a execuo, das instrues privilegiadas requisitadas pelo sistema operacional visitante. 8.3. Qual a diferena prtica entre para-virtualizao e virtualizao total? A principal diferena prtica entre a para-virtualizao e a virtualizao total que na primeira o sistema operacional visitante tem que ser modificado para ser executado sobre o VMM, enquanto na segunda o VMM fornece uma rplica da mquina fsica, de modo que no tem a necessidade de que o sistema operacional visitante seja modificado para ter cincia de que est sendo executado em uma mquina virtual. Outra diferena a ser notada entre as duas tcnicas de virtualizao o fato de que, na virtualizao total, o sistema operacional visitante tem acesso direto aos dispositivos de hardware, enquanto na para-virtualizao s o sistema operacional do domnio 0 tem acesso direto aos dispositivos e as demais mquinas virtuais dos domnios U s acessam os dispositivos atravs do domnio 0. 8.4. Na para-virtualizao, qual a diferena entre domnio 0 e domnio U? O domnio 0 uma mquina virtual especial que tem acesso direto aos dispositivos. Essa mquina virtual executa um ncleo Linux modificado, que iniciado antes de qualquer outra mquina virtual. As demais mquinas virtuais so pertencentes ao domnio U. Essas mquinas s podem ser criadas, iniciadas e terminadas atravs do domnio 0. O hypervisor, na paravirtualizao, no capaz de fazer a comunicao entre sistema hospedeiro e sistema convidado. Portanto, h a necessidade da mquina virtual no domnio 0, para que haja a comunicao entre as demais mquinas e os dispositivos de hardware, j que s a mquina do domnio 0 acessa os dispositivos.

8.5. A consolidao de servidores um processo seguro? A consolidao de servidores tem como um de seus objetivos aumentar a segurana. No entanto, quando tratamos de virtualizao h mais uma camada de software que deve ser inserida entre o hardware e o sistema operacional visitante: o Monitor de Mquina Virtual, VMM. Como todo software, o VMM est sujeito a falhas e a vulnerabilidades. Sendo assim, a segurana do processo de consolidao de servidores abalada pela incluso do VMM. Contudo, usando

softwares atualizados e mantendo sempre o uma cpia de segurana dos servidores virtuais, o procedimento de consolidao pode ser to seguro quanto o uso de uma mquina fsica para cada servidor, pois a virtualizao garante o isolamento entre as mquinas virtuais.

9. Referncias
[1] Adams, K., & Agesen, O. (2006). A comparison of software and hardware techniques for x86 virtualization. Architectural Support for Programming Languages and Operating Systems , 2-13. [2] Carissimi, Alexandre. (2008). Virtualizao: da teoria a solues. Minicursos do Simpsio Brasileiro de Redes de Computadores - SBRC2008, 173-207 [3] Dragovic, B., Fraser, K., Hand, S., Ho, T. H., & Pratt, I. (2003). Xen and the Art of Virtualization. Proceedings of the ACM Symposium on Operating Systems Principles . [4] Jeremy Sugerman, G. V.-H. (2001). Virtualizing I/O Devices on VMware Workstation's Hosted Virtual Machine Monitor . Proceedings of the 2001 USENIX Annual Technical Conference. [5] Menasc, Daniel A.: Virtualization: Concepts, Applications, and Performance Modeling. Int. CMG Conference 2005: 407-414 [6] Rose, Robert: Survey of System Virtualization (http://citeseer.ist.psu.edu/rose04survey.html) Acessado em junho 2008. Techniques.

[7] Qutier, B., Neri, V., & Cappello, F. (Setembro de 2006). Scalability Comparison of Four Host Virtualization Tools. Journal of Grid Computing , 83-98. [8] Uhlig, R. N., Bennett, S., Kagi, A., Leung, F., & Smith, L. (2005). Intel virtualization technology. Computer , 48- 56. [9] VMWare (2008) A Performance Comparison of Hypervisors (http://www.vmware.com). Acesso junho 2008. [10] VMware, Inc (2008). VMware: Virtualization, Virtual Machine & Virtual Server Consolidation VMware. (http://www.vmware.com/) Acessado em junho 2008 . [11] VMware, Inc (2007). Understanding Full Virtualization, Paravirtualization, and Hardware Assist (http://www.vmware.com/). Acessado em junho 2008 . [12] Xen Source (2008) A Performance Comparaison of Commercial Hypervisors (http:/blogs.xensources.com/rogerk/wp-content/uploads/2007/03/hypervisor_performance_ comparaison_1_0_5_with_esx-data.pdf). Acesso junho 2008. [13] Xen.org Project (2008). The Official Xen.org Project Site. (http://www.xen.org/) Acessado em junho 2008.

Você também pode gostar