You are on page 1of 14

O que virtualizao e para

que serve?
A virtualizao est presente tanto no desktop de um entusiasta pelo assunto quanto no
ambiente de TI de uma infinidade de empresas das mais variadas reas. No se trata de
"moda" ou mero capricho: graas a este conceito, possvel, entre outros benefcios,
economizar com equipamentos e obter resultados de determinadas tarefas computacionais
em menor tempo.

O conceito de virtualizao
Apesar de ser uma ideia antiga - seu surgimento se deu na dcada de 1960, se
propagando com mais fora a partir de 1970 -, a virtualizao extremamente
importante para o mundo cada vez mais "digital" de hoje. Podemos definir o
conceito como solues computacionais que permitem a execuo de vrios
sistemas operacionais e seus respectivos softwares a partir de uma nica
mquina, seja ela um desktop convencional ou um potente servidor.
Sim, como se voc se deparasse com um ou mais computadores distintos
dentro de um s. A diferena que estas mquinas so virtuais: na prtica,
elas oferecem resultados como qualquer outro computador, mas existem
apenas logicamente, no fisicamente.
Cada mquina virtual se traduz em um ambiente computacional completo:
praticamente todos os recursos de seu sistema operacional podem ser
utilizados, possvel conect-las em rede, consegue-se instalar aplicativos,
enfim.

Virtualizao

Uma das razes para o surgimento da virtualizao que, anos atrs, na


poca em que os mainframes dominavam o cenrio tecnolgico e no havia
computadores pessoais, por exemplo, no existia a praticidade de "adquirir,
instalar e usar um software" - este era acompanhado de bibliotecas e outros
recursos que o tornavam quase que exclusivos ao o computador para o qual foi
desenvolvimento originalmente.
Desta forma, muitas vezes uma organizao que implementava um novo
sistema se via obrigada a adquirir um equipamento apenas para execut-lo, em
vez de simplesmente aproveitar o maquinrio existente, deixando toda a
operao mais cara no final das contas.
A virtualizao conseguiu resolver este problema: pode-se aproveitar um
computador j existente para executar dois ou mais sistemas distintos, j que

cada um roda dentro de sua prpria mquina virtual. Evita-se, assim, gastos
com novos equipamentos e aproveita-se os possveis recursos ociosos do
computador.
Nos dias de hoje, a virtualizao permite, por exemplo, que uma empresa
execute vrios servios a partir de um nico servidor ou at mesmo que um
usurio domstico teste um sistema operacional em seu computador antes de
efetivamente instal-lo. Do ponto de vista corporativo, seu uso atual se destina
a vrias aplicaes, como sistemas de ERP, servios de computao nas
nuvens, ferramentas de simulao, entre muitos outros.

Benefcios da virtualizao
Voc j conhece algumas das vantagens da virtualizao, mas a sua utilizao
oferece vrios outros benefcios. Os principais so abordados a seguir:
- Melhor aproveitamento da infraestrutura existente: ao executar vrios
servios em um servidor ou conjunto de mquinas, por exemplo, pode-se
aproveitar a capacidade de processamento destes equipamentos o mais
prximo possvel de sua totalidade;
- O parque de mquinas menor: com o melhor aproveitamento dos recursos
j existentes, a necessidade de aquisio de novos equipamentos diminui,
assim como os consequentes gastos com instalao, espao fsico,
refrigerao, manuteno, consumo de energia, entre outros. Imagine o
impacto que esta vantagem pode ter em um data center, por exemplo;

Aproveitamento de capacidade: uma mquina fazendo o papel de trs

- Gerenciamento centralizado: dependendo da soluo de virtualizao


utilizada, fica mais fcil monitorar os servios em execuo, j que o seu
gerenciamento feito de maneira centralizada;
- Implementao mais rpida: dependendo da aplicao, a virtualizao pode
permitir sua implementao mais rpida, uma vez que a infraestrutura j est
instalada;
- Uso de sistemas legados: pode-se manter em uso um sistema legado, isto
, antigo, mas ainda essencial s atividades da companhia, bastando destinar
a ele uma mquina virtual compatvel com o seu ambiente;
- Diversidade de plataformas: pode-se ter uma grande diversidade de
plataformas e, assim, realizar testes de desempenho de determinada aplicao
em cada uma delas, por exemplo;

- Ambiente de testes: possvel avaliar um novo sistema ou uma atualizao


antes de efetivamente implement-la, diminuindo significativamente os riscos
inerentes a procedimentos do tipo;
- Segurana e confiabilidade: como cada mquina virtual funciona de
maneira independente das outras, um problema que surgir em uma delas como uma vulnerabilidade de segurana - no afetar as demais;
- Migrao e ampliao mais fcil: mudar o servio de ambiente de
virtualizao uma tarefa que pode ser feita rapidamente, assim como a
ampliao da infraestrutura.

Como a virtualizao funciona?


Uma soluo de virtualizao composta, essencialmente, por dois
"protagonistas": o hospedeiro (host) e o hspede ou convidado (guest).
Podemos entender o hospedeiro como sendo o sistema operacional que
executado por uma mquina fsica. O hspede, por sua vez, o sistema
virtualizado que deve ser executado pelo hospedeiro. A virtualizao ocorre
quando estes dois elementos existem.
A forma como hospedeiro e hspedes trabalham varia conforme a soluo. Em
um mtodo bastante comum h a figura do VMM (Virtual Machine Monitor Monitor de Mquina Virtual), que tambm pode ser chamado de hypervisor:
trata-se de uma espcie de plataforma implementada no hospedeiro que
recebe os sistemas a serem virtualizados, controlando os seus recursos e
mantendo-os "invisveis" em relao aos outros.
Para que possa fazer o seu trabalho, o VMM tem um tratamento diferenciado:
ele pode ser executado no "modo supervisor", enquanto que programas
comuns (aplicativos) rodam no "modo usurio".

No "modo supervisor", o software pode requisitar instrues que lidam


diretamente com certos recursos hardware, como funcionalidades especficas
do processador. No "modo usurio", estes recursos mais crticos no podem
ser acessados diretamente, cabendo ao sistema operacional, que trabalha em
"modo supervisor", fazer uma espcie de intermediao quando necessrio.
O VMM precisa ter acesso privilegiado porque cabe a ele alocar os recursos a
serem utilizados por cada mquina virtual sob sua responsabilidade, assim
como determinar a ordem pela qual cada solicitao destas ser atendida.
O hspede executado em "modo usurio", mas como a mquina virtual
possui um sistema operacional, qualquer requisio de instruo mais crtica
solicitada por este "interceptada" pelo hypervisor, que se encarrega de
fornec-la.

Virtual Machine Monitor

Virtualizao total e paravirtualizao


A virtualizao por meio de Virtual Machine Monitor comumemente dividida
em duas tcnicas: avirtualizao total e a paravirtualizao.
Na virtualizao total, o sistema operacional do hspede trabalha como se de
fato houvesse uma mquina fsica inteiramente sua disposio. Desta forma,

o sistema no precisa sofrer nenhuma adaptao e trabalha como se no


houvesse virtualizao ali. O problema que esta abordagem pode ter
algumas limitaes considerveis.
Uma delas o risco de algumas solicitaes do hspede no serem atendidas
da maneira esperada. Isso acontece, por exemplo, quando o hypervisor no
consegue lidar com determinada instruo privilegiada ou quando um recurso
de hardware no pode ser plenamente acessado por no haver drivers (uma
espcie de software que "ensina" o sistema operacional a lidar com um
dispositivo) na virtualizao capazes de garantir sua plena compatibilidade.
A paravirtualizao surge como uma soluo para problemas do tipo. Nela, o
sistema operacional do hspede roda em uma mquina virtual similar ao
hardware fsico, mas no equivalente.
Como este mtodo, o hspede modificado para recorrer ao hypervisor
quando necessitar de qualquer instruo privilegiada e no diretamente ao
processador. Assim, o VMM no precisa interceptar estas solicitaes e testlas (tarefa que causa perda de desempenho), como acontece na virtualizao
total.
Alm disso, a paravirtualizao diminui expressivamente os problemas com
compatibilidade de hardware porque o sistema operacional do hspede acaba
podendo utilizar drivers adequados - na virtualizao total, os drives disponveis
so "genricos", isto , criados para suportar o mximo possvel de
dispositivos, mas sem considerar as particularidades de cada componente.
A principal desvantagem da paravirtualizao a necessidade de o sistema
operacional ter que sofrer modificaes para "saber" que est sendo
virtualizado, podendo gerar custos com adaptao e atualizao ou limitaes
referentes migrao para um novo conjunto de hardware, por exemplo.
Na virtualizao total, vale relembrar, no h necessidade de alterao do
sistema, mas o procedimento fica sujeita aos problemas mencionados no incio

deste tpico. Assim, a adoo de um modo ou outro depende de anlises e


testes que possam determinar qual mais vantajoso para determinado servio.

Outros mtodos de virtualizao


O VMM no a nica tcnica de virtualizao que existe. Para que possa
atender s mais variadas necessidades, vrios mtodos foram (e so)
desenvolvidos. Entre os demais, tem-se o Process Virtual Machine,
o Operating System Virtual Machine e a virtualizao assistida por
hardware.

Process Virtual Machine (Mquina Virtual de Processo)


Neste mtodo, a mquina virtual funciona como uma aplicao qualquer
rodando dentro do sistema operacional. Um dos exemplos mais populares de
mquinas virtuais do tipo a linguagem de programao Java: nela, quando
um programa compilado, um cdigo especfico gerado para ser executado
por uma JVM (Java Virtual Machine - Mquina Virtual Java).
O Virtual Machine Monitor uma camada de software diretamente ligada ao
hardware, por isso, permanece ativo durante todo o tempo em que o
computador permanecer ligado. No Process Virtual Machine, a mquina virtual
tratada como um processo, como o seu nome indica. Assim, assim quando a
sua execuo concluda, o ambiente da mquina virtual deixa de existir.

Operating System Virtual Machine (Mquina Virtual de


Sistema Operacional)
Voc j sabe que um nico computador pode suportar mais de uma mquina
virtual, sem que uma saiba da existncia da outra. O problema que, muitas
vezes, esta abordagem pode comprometer o desempenho. Uma das maneiras
de lidar com este problema o uso da tcnica Operating System Virtual
Machine (Mquina Virtual de Sistema Operacional).

Aqui, a mquina fsica recebe um sistema operacional, mas h a criao de


vrios ambientes virtuais sobre este. Cada um destes ambientes tem acesso a
determinados recursos, como espao em disco e quotas de processamento,
mas compartilham do mesmo kernel (ncleo, isto , a parte principal do sistema
operacional). Normalmente, um ambiente no sabe da existncia do outro.
Mquinas Virtuais de Sistema Operacional so bastante utilizadas, por
exemplo, em empresas de hospedagem de sites: cada ambiente oferecido a
um cliente como se fosse um sistema exclusivo, quando, na verdade, o
servidor est sendo compartilhado com vrios outros usurios.

Hardware na virtualizao
At agora, lidamos com a virtualizao como sendo uma variedade de tcnicas
baseadas em software. Mas o hardware tambm pode ter participao
importante em solues do tipo.
Empresas como Intel e AMD, as maiores fabricantes de processadores do
mundo, desenvolveram (e desenvolvem) tecnologias que possibilitam aos seus
chips um trabalho aprimorado em solues de mquinas virtuais,
especialmente no que diz respeito virtualizao total.
No caso da Intel, muitos de seus processadores atuais contam a
tecnologia Intel Virtualization Technology (Intel VT), que consiste em um
conjunto de instrues aplicadas ao chip especialmente para tratar de tarefas
de virtualizao. A AMD tem uma tecnologia equivalente (no h
compatibilidade de uma com a outra), de nome AMD Virtualization (AMD-V).
Entre os recursos oferecidos por estas tecnologias est a capacidade de
facilitar o trabalho de fazer com que o processador funcione como um conjunto
de chips, um para cada mquina virtual em uso.

Algumas solues de virtualizao


Como a virtualizao pode atender s mais distintas aplicaes, h vrias
solues do tipo no mercado, assim como diversas empresas especializadas
no segundo. Eis algumas das mais
conhecidas: VMware, Microsoft, Xen e VirtualBox.

VMware
A VMware uma empresa de origem norte-americana especializada em
virtualizao. Seus produtos so bastante conhecidos no mercado e atendem a
aplicaes dos mais variados tamanho.
Um deles - o produto de entrada, por assim dizer - o VMware Player, um
software gratuito de virtualizao que permite ao usurio domstico criar uma
mquina virtual para rodar outros sistemas operacionais no Windows ou no
Linux. Assim, pode-se estudar um sistema, fazer testes de softwares, entre
outros.

Ubuntu Linux no Windows 7 por meio do VMware Player

Outra soluo bastante conhecida da empresa o VMware Server, que


tambm gratuito, mas tem a proposta de atender ao segmento de servidores
de pequeno e mdio porte.
As solues pagas da empresa, no entanto, so muito mais amplas em
recursos, e podem atender desde servidores mais simples at grandes data
centers.

Microsoft
A Microsoft tambm tem presena expressiva no mercado de virtualizao,
especialmente porque os seus softwares da categoria se integram facilmente
aos seus sistemas operacionais - pelo menos na maioria das vezes.

Um deles o gratuito Virtual PC, que permite ao usurio rodar em um


computador com Windows verses antigas da plataforma ou mesmo outros
sistemas operacionais, como distribuies Linux. Aqui, a ideia tambm a de
permitir ao usurio avaliar outros sistemas operacionais, realizar testes em
softwares, enfim.
Mas o destaque mesmo fica por conta do Hyper-V, uma soluo de
virtualizao que integrada linha de sistemas operacionais para servidores
da empresa (como o Windows Server 2012), embora tambm funcione em
determinadas verses para uso domstico ou em escritrios (como o Windows
8).
Tendo como base o conceito de hypervisor, o Hyper-V consegue lidar com
vrios cenrios de virtualizao, inclusive aqueles de alto desempenho,
podendo trabalhar, por exemplo, com data centers virtuais.
Entre os vrios recursos do Hyper-V esto uma funcionalidade que permite
passar mquinas virtuais de um servidor para outro (para que o primeiro seja
reparado, por exemplo) e a capacidade de criar rplicas - possvel ter um
nmero ilimitado de "cpias" de virtual machines para utiliz-las em testes ou
cobrir imediatamente um servio que ficou indisponvel.

Xen
Xen outro nome bastante forte quando o assunto virtualizao. Trata-se de
uma soluo baseada em VMM que teve seu desenvolvimento promovido pela
Universidade de Cambridge, no Reino Unido. O projeto compatvel com
vrias plataformas e arquiteturas.
Disponibilizado como software livre, o Xen gratuito e o seu cdigo-fonte pode
ser acessado por qualquer pessoa. Por isso, seu uso bastante difundido no
meio acadmico e por entusiastas de sistemas Linux, por exemplo.

Em 2007, a XenSource, companhia que mantinha o projeto, foi comprada


pela Citrix, outra grande empresa do segmento de virtualizao. Assim,
tambm possvel encontrar solues pagas desta que levam o nome Xen.

VirtualBox
O VirtualBox um projeto iniciado em 2007 por uma empresa alem de nome
Innotek, mas que hoje pertence Oracle. Sua proposta a de permitir ao
usurio rodar um sistema operacional dentro do outro sem enfrentar
complexidade.
H verses do software para os principais sistemas operacionais do mercado,
como Windows, OS X e distribuies Linux. A verso mais importante do
VirtualBox tem cdigo-fonte aberto e gratuita, mas a Oracle disponibiliza
edies para uso corporativo que exigem pagamento de licenas.

Desvantagens da virtualizao
A infinidade de solues e mtodos disponveis faz com que a virtualizao
atenda s mais variadas necessidades, como voc j sabe, mas tambm no
podemos entender o conceito como um "remdio milagroso" para todos os
problemas de TI. Dependendo das circunstncias, a virtualizao tambm pode
ter desvantagens. Eis algumas:
- Sobrecarga afeta a todas as mquinas virtuais: para comear, a
quantidade de mquinas virtuais que um computador pode suportar no
ilimitada, razo pela qual necessrio encontrar um equilbrio para evitar
sobrecarga, do contrrio, o desempenho de todas as mquinas virtuais ser
afetado;
- Segurana: se houver uma vulnerabilidade de segurana no VMM, por
exemplo, todas as mquinas virtuais podero ser afetadas pelo problema;

- Portabilidade: dependendo da soluo em uso, migrar uma mquina virtual


pode ser um problema. Um exemplo hipottico: quando um sistema utiliza
instrues AMD-V, mas precisa ser transferido para uma mquina Intel;
- Contingncia: em aplicaes crticas, importante ter um computador que
possa atuar imediatamente no lugar da mquina principal (como um servidor),
pois se esta parar de funcionar, todos os sistemas virtualizados que rodam nela
tambm sero interrompidos;
- Desempenho: a virtualizao pode no ter bom desempenho em todas as
aplicaes, por isso importante avaliar muito bem a soluo antes de sua
efetiva implementao;
- Gastos: pode haver gastos no previstos com manuteno, mo-de-obra,
treinamento, implementao e outros.

Fim

You might also like