Você está na página 1de 12

1

MEC SETEC
SERVIO PBLICO FEDERAL
INSTITUTO FEDERAL DE EDUCAO, CINCIA E TECNOLOGIA DE MATO
GROSSO
CAMPUS CUIAB
DIRETORIA DE PESQUISA E PS-GRADUAO

TCNICAS DE VIRTUALIZAO E SUAS IMPLEMENTAES

DEL BARCO NISHIOKA, Eder


Orientador: Andr Valente do Couto

RESUMO: Atualmente a virtualizao utilizada como uma soluo para fornecer


alguns benefcios a determinados sistemas. Neste artigo sero abordados conceitos
que permeiam as tcnicas de virtualizao, bem como sero vislumbrados algumas
implementaes da virtualizao. Ainda, ser feita uma anlise comparativa com o
intuito de identificar o melhor uso dessas implementaes.

ABSTRACT: Currently, virtualization is used as a solution to provide some benefits


to certain systems. This paper will be discussed concepts that permeate the
virtualization techniques, as well as be glimpsed some implementations of
virtualization. Still, there will be a comparative analysis in order to identify the best
use of these implementations.

1 INTRODUO
A virtualizao no um processo ou idia nova tendo sua implementao
sido realizada h mais de 30 anos pela IBM como uma forma de particionar
logicamente os computadores mainframe em mquinas virtuais separadas para
otimizao do seu uso. Essas parties permitiam aos mainframes executar vrias
tarefas, vrios aplicativos e processos ao mesmo tempo.
2

A virtualizao ento surgiu como forma de aprimorar a utilizao dos


recursos de TI com o foco na entrega dos servios e no mais na utilizao
exclusiva de determinados recursos, proporcionando s empresas a: consolidao
de sua infra-estrutura, otimizao do uso do hardware, economia com energia
eltrica e flexibilidade de sua infra-estrutura para atender suas eventuais
necessidades.

Algumas implementaes fizeram possvel o uso desta tecnologia em


ambiente mais disseminado, sendo que no ano de 2003 o XEN, software que
implementa tcnicas de virtualizao, foi criado atravs de um projeto de pesquisa
da universidade de Cambridge. No mesmo ano a Microsoft, adquiriu uma empresa
que estava no mercado desde 1988 chamada Connectix e com esta base lanou em
2004 o Virtual PC e em 2008, juntamente com o lanamento do Sistema Operacional
Windows Server 2008, foi incorporado sua soluo de virtualizao o Hyper-V.
Ainda, na dcada de 90, a VMware criou um produto lder no segmento de
virtualizao para a plataforma x86.

2. DEFINIES E CONCEITOS

O objetivo principal da virtualizao est, no compartilhamento otimizado de


todos os recursos disponveis. Todo o gerenciamento dos recursos virtualizados so
realizados utilizando-se os conceitos de: Instrues Privilegiadas e no privilegiadas,
sendo que essas instrues fazem parte do conjunto de instrues da arquitetura
x86.

Esta classificao se faz necessria considerando que as instrues no-


privilegiadas 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 e as instrues privilegiadas podem
alterar o estado e a alocao desses recursos.

Um computador opera 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.
3

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.

A arquitetura de virtualizao abordada neste artigo a x86, e neste contexto,


existem quatro nveis de privilgio, que so chamados de anis. Os anis 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 hospedeiros so executados com
esse nvel de privilgio, enquanto que os sistemas operacionais visitantes so
executados nos outros nveis

O 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 SO visitantes simultaneamente.

Os SO hospedeiros so controlados e a utilizao de seus recursos so


gerenciados por uma camada de software denominada VMM (Virtual Machine
Manager). O Virtual Machine Monitor (VMM) segundo (Whitaker, 2004) uma
camada de software que suporta a execuo concorrente de mltiplas mquinas
virtuais.

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.
4

Figura 1. Relacionamento das Mquinas Vrtuais e do VMM.


Fonte: MATTOS, 2010.

3. VIRTUALIZAO TOTAL E PARAVIRTUALIZAO

A abordagem de implementao do VMM pode ser realizada principalmente


por duas formas, a saber: virtualizao total ou paravirtualizao.

A virtualizao total tem por objetivo fornecer ao sistema operacional visitante


uma rplica do hardware subjacente. O sistema operacional visitante executado
sem modificaes sobre o monitor de mquina virtual (VMM). Ocorre aqui uma
desvantagem em seu desempenho, pois o nmero de dispositivos a serem
suportados pelo VMM extremamente elevado. Para resolver isto as
implementaes da virtualizao total usam dispositivos genricos, que por um lado
funcionam bem para a maioria dos dispositivos disponveis e por outro no sacrifica
a eficincia na utilizao dos recursos resultando em uma degradao na
performance.

A virtualizao total tem que contornar alguns problemas gerados pela


implementao dos sistemas operacionais, j que esses foram implementados para
executarem como instncia nica nas mquinas fsicas, no disputando recursos
com outros sistemas operacionais. Um exemplo: 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.

A para-virtualizao uma alternativa virtualizao total. Nela 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
5

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.

Figura 2. Virtualizao Total e ParaVirtualizao Arquitetura x86.


Fonte: MATTOS, 2010.
Embora a para-virtualizao apresente um ganho de desempenho
significativo frente virtualizao total, essa disparidade tem sido superada devido
presena de instrues de virtualizao nos processadores que favorecem a
virtualizao total.

Dentre os maiores fornecedores de processadores que disponibilizam


instrues de virtualizao diretamente em seus chips, temos a: a IVT (Intel
Virtualization Technology) codinome Vanderpool da Intel e a AMD-V (AMD-
Virtualization), codinome Pacfica da AMD.

Embora tenham sido desenvolvidas para o mesmo propsito, foram


projetadas de maneira independentes. Por esse motivo, h alguns problemas na
portabilidade de mquinas virtuais entre essas plataformas (arquitetura Intel para a
arquitetura AMD e vice-versa).

4. FERRAMENTAS DE VIRTUALIZAO

Aqui sero abordadas as trs principais ferramenta de virtualizao para a


arquitetura x86: o VMWare, o Hyper-V e o Xen. Todos so produtos de mercado,
porm possuem algumas diferenas na implementao das tcnicas de
virtualizao. A primeira e mais marcante o fato do XEN ser um exemplo de
6

paravirtualizao enquanto que o Hyper-V e o VMware serem exemplos de


virtualizao completa.

4.1. XEN

O Xen um dos mais populares exemplos de paravirtualizao. 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.

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 (Menasc, 2005).

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 (Menasc, 2005).

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 (Andrade, 2009).
7

Figura 3. Componentes do XEN: Hypervisor e Dominos.


Fonte: ANDRADE, 2009.
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 (Qutier, 2006).

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.

4.2. VMWARE

A Arquitetura do VMware compreende no sistema operacional chamado


VMKernel, e seus processos. O VMKernel fornece meios de executar todos os
processos do sistema, incluindo gerenciamento de aplicaes, gerenciamento dos
agentes, bem como de todas as mquinas virtuais. Ele possui o controle de todos os
dispositivos de hardware e gerenciamento de recursos das aplicaes. Os principais
processos que executam no VMKernel so: Direct Console User Interface (DCUI)
Console direto da interface de usurio, The virtual machine monitor (VMM) Monitor
de Maquina Virtual, agents os agentes e Common Information Model (CIM) Modelo
de Informao Comum.
8

O console direto da interface de usurio permite uma configurao de baixo


nvel e gerenciamento de interface, acessvel atravs do console do servidor, usado
na configurao bsica inicial. O monitor de mquina virtual, o processo que
fornece a execuo de uma mquina virtual, de um processo conhecido como VMX,
cada mquina virtual executada tem sua prpria VMM e processo VMX. Os agentes
so usados para habilitar o mais alto nvel de gerenciamento de infra-estrutura de
aplicaes remotas. O modelo de informao comum a interface que habilita o
gerenciamento de nvel do hardware de aplicaes remotas atravs de um conjunto
de APIs padro. (MATTOS, 2010).

Figura 4. Estrutura bsica da Vmware.


Fonte: MATTOS, 2010.

4.3. HYPER-V

Hyper-V uma tecnologia de virtualizao baseada em hypervisor para


verses do Windows Server 2008 64 bits. O hypervisor a plataforma de
virtualizao que permite que vrios sistemas operacionais isolados compartilhem
uma nica plataforma de hardware (ARUNKUNDRAM, 2010).

A pilha de virtualizao roda na partio pai e tem acesso direto aos


dispositivos de hardware. A partio pai ou raiz (root) cria as parties filho que
hospedam os sistemas operacionais convidados. Uma partio pai cria as parties
filhos usando o aplicativo hypercall interface de programao (API)
(ARUNKUNDRAM, 2010).

As parties tm uma viso virtual do processador e so executados em


uma regio de endereo de memria virtual que privada para cada partio
9

convidada. O hypervisor controla as interrupes do processador, e redireciona para


a respectiva partio. As parties filhas no tem acesso direto a outros recursos de
hardware e so apresentados uma viso virtual dos recursos, com os dispositivos
virtuais (VDevs).

As requisies para os dispositivos virtuais so redirecionados, quer


atravs da VMBus ou do hypervisor para os dispositivos na partio pai, que lida
com as solicitaes. O VMBus um canal de comunicao lgica inter-partio
(http://msdn.microsoft.com/en-us/library/cc768520(v=bts.10).aspx, 2011).

Todo esse processo transparente para o sistema operacional convidado.


O hypervisor kernel fornecida atravs de instalao de servios de integrao
Hyper-V, componentes de integrao, que incluem virtual server client (VSC) drivers
Drivers de Servidores de Clientes Virtuais que tambm esto disponveis para
outros sistemas operacionais cliente (http://msdn.microsoft.com/en-
us/library/cc768520(v=bts.10).aspx, 2011).

O diagrama a seguir fornece uma viso geral de alto nvel da arquitetura de


um ambiente do Hyper-V em execuo no Windows Server 2008.

Figura 5. Arquitetura do Hyper V.


Fonte: http://msdn.microsoft.com/en-us/library/cc768520(v=bts.10).aspx, 2011.
10

5. MIGRAO ENTRE PLATAFORMAS VMWARE E HYPER V

O maior benefcio da virtualizao de servidores a capacidade de migrar


mquinas virtuais em execuo, em mquinas fsicas (PRATT, 2005). Isso viabiliza
alta disponibilidade dos servios como tambm colabora para o balanceamento de
carga da utilizao feita sobre as mquinas reais. O Vmware, o XEN Enterprise e o
Hyper-V realizam este tipo de migrao. Porm a abordagem principal ser nas
implementaes de virtualizao completa (Hyper-V e VMware).

O processo de migrao do VMware e do Hyper-V so semelhantes, porm


cada uma possui suas caractersticas prprias. Na figura 5, temos um breve quadro
comparativo entre as tecnologias.

FIGURA 6. Comparao de compatibilidade Vmware e Hyper V.


FONTE: http://www.microsoft.com/virtualization/en/us/microsoft-advantage.aspx, 2011.

Conforme a figura 5, o gerenciamento do VMware possui algumas limitaes,


sem suporte no que tange ao: gerenciamento fsico e virtual, monitoramento fim a
fim do sistema operacional, monitoramento de servio/aplicao, automao de
processos fim a fim, gesto do ciclo de vida de mquinas virtuais, gerenciamento do
servio de TI.

O Hyper-V por possuir o SMSD (System Center Server Management Suite


Datacenter) e o SCCM (System Center Configuration Manager), possui ento um
gerenciamento centralizado de seus servios. Assim servios integrados com a
11

plataforma Windows: SQL Server, Hyper-V, Active Directory, entre outros, so


consolidados e integrados diretamente.

J nos servios de: otimizao do nvel da mquina virtual hospedeiro;


centralizao do hypervisor centralizado; gerenciamento do patching do sistema
operacional convidado; gerenciamento de failover e alta disponibilidade da mquina
virtual; migrao da mquina virtual e armazenamento de mquina virtual, ambas as
tecnologias possuem suporte nestes servios.

O VMware possui um gerenciamento escalvel e extensvel quando utiliza o


VCenter e o VMotion, integrando parte de sua estrutura a plataforma virtualizada em
especifico.

Ambas possuem a opo live migration migrao ao vivo de mquinas que esto
sendo virtualizadas enquanto esto em pleno processamento de dados. Assim
ambas tecnologias possuem vantagens e desvantagens sobre a outra, e analisar
qual mais especifica para determinada infra-estrutura o fator primordial para se
determinar qual delas mais adequada para ser utilizada. Compreende-se ento
que o Hyper-V interessante em ambientes totalmente Microsoft enquanto que o
VMware em ambientes de alta disponibilidade e de multiplataforma.

6. CONCLUSO
Virtualizao uma tcnica que est cada vez mais presente na rea de TI.
inmeras empresas esto investindo em solues de gerncia de ambientes
virtualizados e pelo aumento sucessivo nos investimento na rea. 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. Qual tecnologia utilizar, ser determinada conforme
as aquisies da infra-estrutura, para ser adequada a cada estrutura em especifico.

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
12

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.

Existem questes que ainda no esto completamente resolvidas, tais como a


migrao de mquinas virtuais entre diferentes tecnologias, portabilidade e
gerenciamento entre diferentes plataformas, computao em nuvem hbrida,
gerenciamento de recursos pelo hypervisor, gerenciamento de memria,
gerenciamento de disco, gerenciamento dos agentes das mquinas virtuais entre
outros temas para eventuais trabalhos futuros.

REFERNCIAS

ARUNKUNDRAM, Rajiv.Uma introduo ao Hyper-V no Windows Server 2008.


Disponvel em: http://technet.microsoft.com/pt-br/magazine/cc895595.aspx.
Acessado em: setembro 2010.
ANDRADE, Marcos Tadeu. Um estudo comparativo sobre as principais
ferramentas de virtualizao. Pernambuco. Disponvel em
(http://www.cin.ufpe.br/~tg/2006-2/mta.pdf) .Acessado em: setembro de 2010.
INTEL. Pgina da empresa Intel. Disponvel em:
http://www.nextg.com.br/v3/web/curso.php. Acesso em: Junho de 2011.
LAUREANO, Marcos. Mquinas Virtuais e Emuladores. 1.ed. So Paulo: Editora
Novatec Ltda, 2006. 30 p.
LAUREANO, Marcos; MAZIERO, Carlos; JAMHOUR, Edgard. Proteo de
detectores de intruso atravs de mquinas virtuais, 2004. Disponvel
em:http://www.mlaureano.org/projetos/deteccao-de-intrusao-em-maquinas-virtuais.
Acesso em: Novembro. 2010.
MATTOS, Diogo Menezes Ferazani. Virtualizao: VWare e Xen. Disponvel em:
http://www.gta.ufrj.br/grad/08_1/virtual/artigo.pdf. Acessado em: setembro de 2010.
MANASC, Daniel A.: Virtualization: Concepts, Applications, and Performance
Modeling. Int. CMG Conference 2005: 407-414
PRATT, A. W. . C. L. . S. H. . K. F. I. Xen 3.0 and the art of virtualization. Linux
Symposium, p. 6577, 2005.
http://msdn.microsoft.com/en-us/library/cc768520(v=bts.10).aspx, acessado em
20/05/2011.
Qutier, B., Neri, V., & Cappello, F. (Setembro de 2006). Scalability Comparison of
Four Host Virtualization Tools. Journal of Grid Computing , 83-98.
WHITAKER, Andrew. Building Robust Systems With Virtual Machine Monitors,
2004, Washington (Estados Unidos).