Professional Documents
Culture Documents
3. Paravirtualização (paravirtualization).
Já na paravirtualização, apenas alguns elementos são virtualizados.
4. O que é um hypervisor?
Hypervisor é uma plataforma de virtualização que permite executar múltiplos sistemas
operacionais em um mesmo host e ao mesmo tempo.
Hypervisors são comumente classificados em dois tipos:
4.1 Tipo 1:
Nativo nesse tipo o hypervisor é executado diretamente dentro da plataforma de hardware
(como um controle de programa do sistema operacional). Portanto um sistema operacional
visitante roda em um nível superior ao do hardware (Segundo nível).
O Hypervisor clássico tipo 1 foi o CP/CMS, desenvolvido pela IBM nos anos 60, o
antecessor da própria IBM era o z/VM. Exemplos mais recentes são, Xen, Citrix Xen
Server, Oracle VM (Virtualbox), Vmware’s ESX Server, L4 microkernels, VirtualLogix
VLX e outros menos conhecidos.
Uma variação do tipo 1 é embarcar o hypervisor dentro do firmware da
plataforma, conforme é feito no caso da Hitachis Virtage Hypervisor KVM, com um
Kernel Linux completo dentro do hypervisor.
4.2 Tipo 2:
Hosted hypervisor é um software que roda dentro do ambiente do sistema operacional. Um
sistema operacional visitante, roda portanto no terceiro
nivel acima do hardware. Exemplos incluem Vmware Server, Vmware Workstation,
Vmware Fusion, o open source QEMU, Microsoft’s Virtual PC e produtos do
Microsoft Virtual Server e Virtual Box.
O termo hypervisor call, ou hypercall, faz referência a interface de paravirtualização,
através da qual um sistema operacional “visitante” poderia acessar serviços diretamente de
um programa de controle de mais alto nível, análogo a fazer uma supervisor call ao sistema
operacional de mesmo nível. O termo supervisor se refere ao kernel do sistema operacional
que nos mainframes IBM roda com o estado de supervisor.
Hypervisor é o nome usual para o VMM, Virtual Machine Monitor. O VMM é o pedaço de
software que é responsável pela intermediação das requisições de hardware das máquinas
virtuais e o hardware propriamente dito.
5. Programas utilizados para realizar a Virtualização:
5.1 Xen
Uma empresa em separado, a XenSource, foi fundada em 2004 para promover a ampla
adoção dos hipervisores de código aberto Xen pelo mundo empresarial.
Durante o final do ano de 2004, o Xen 2.0 entrou em cena. A nova versão conseguiu
grande flexibilidade na configuração de dispositivos virtuais de E/S dos sistemas
operacionais hóspedes. Nesse ponto do desenvolvimento do Xen, os usuários podiam
configurar regras de firewall arbitrárias, roteamento e pontes de interfaces hóspedes virtuais
de rede. Suporte adicional foi acrescentado para volumes LVM de cópia-durante-gravação
bem como para arquivos de retorno (loopback) para manter imagens de disco de sistemas
operacionais hóspedes. O Xen 2.0 inclui suporte para multiprocessamento simétrico,
embora imagens de hóspedes continuem com processadores únicos. A melhoria mais
impressionante do ponto de vista da demonstração foi a adição da migração ativa (live
migration), que permite que uma instância em execução de um sistema operacional seja
movida entre hardwares conectados via rede sem interrupção perceptível no serviço. O Xen
introduziu uma função de migração de hóspedes muito solicitada que impressionou muitos
hackers casuais interessados em open source.
Durante o ano de 2005, uma comunidade cada vez maior de grupos interessados se
formava em torno do Xen. Essa tendência era notável, tanto no mundo acadêmico quanto
no empresarial, e no início de 2006 o Xen tinha conseguido uma participação significativa
no total das virtualizações em uso. Grandes distribuidores de Linux ficaram cada vez mais
interessados em se aproveitar da tecnologia do Xen para uso de seus clientes, e o suporte ao
Xen se tornou padrão para muitos deles. O hipervisor do Xen 2.0 também suportava mais
hóspedes do que antes, incluindo o Linux, o Open-Solaris, Plan 9 e muitas variantes do
BSD.
Tal arquivo de configuração foi usado para instalação CentOS 5.2 no Xen.
count=512
kernel = "/mnt/cdrom/xen/vmlinuz"
ramdisk = "/mnt/cdrom/xen/initrd.img"
memory = "1024"
name = "Domain1"
disk = ['file:/var/xen/Domain1.img,xvda,w',
'file:/var/xen/Domain1swap.img,xvdb,w']
vif = [ 'bridge=xenbr0' ]
vcpus = 2
extra = 'video=xenfb'
# xm create –c Domain1-inst.conf
memory = "1024"
bootloader = "/usr/bin/pygrub"
name = "Domain1"
disk = ['file:/var/xen/Domain1.img,xvda,w',
'file:/var/xen/Domain1swap.img,xvdb,w']
vif = [ 'bridge=xenbr0' ]
vcpus = 1
# xm create –c Domain1-post-inst.conf
5.2 VirtualBox
Criado pela empresa Innotek, inicialmente oferecia uma licença proprietária, existia uma
versão do produto para uso pessoal ou de avaliação sem custo. Em Janeiro de 2007 é
lançado a versão VirtualBox OSE (Open Source Edition) com a licença GPL (GNU
General Public License), versão 2. Em Fevereiro de 2008 a empresa Innoteck é adquirida
pela Sun Microsystems. No dia 20 de Abril de 2009 a Oracle compra a Sun Microsystems e
todos o seu produtos, incluindo o VirtualBox.
O VirtualBox tem um software especial que pode ser instalado dentro das máquinas virtuais
Windows e Linux para melhorar o desempenho e fazer integração muito mais perfeita.
Entre os recursos fornecidos por essas adições clientes são integração do ponteiro do mouse
o e soluções arbitrárias de tela (por exemplo, o redimensionamento da janela do cliente).Tal
como muitos outras soluções de virtualização, para facilitar a troca de dados entre os
hospedeiros e convidados, o VirtualBox permite a declaração dos diretórios de certos
hospedeiros como "pastas compartilhadas", que pode ser acessadas de dentro de máquinas
virtuais.
O VirtualBox, assim como os conhecidos VMware e Microsoft Virtual PC, é um software
de virtualização, muito útil quando, por exemplo, precisamos virtualizar um sistema para
testar softwares sem afetar a máquina física.
VirtualBox, no Mandriva
Um recurso bem legal das novas versões do VirtualBox é o modo seamless, que integra o
ambiente do sistema guest com o sistema host. Apesar de possuir algumas falhas, é útil
quando você utiliza frequentemente softwares de duas plataformas diferentes.
Modo Seamless
Ao abrir pela primeira vez o VirtualBox, é possível notar uma interface intuitiva, em
português do Brasil. Para criar uma nova máquina virtual, clicaremos em Novo. A janela de
nova máquina virtual se abrirá. Basta clicar em Próximo, digitar o nome da máquina
virtual, selecionar o tipo do sistema operacional que será virtualizado (DOS, Windows 95,
Windows Vista, Windows XP, Windows 7, Linux 2.6, FreeBSD, OS/2, etc.).
Criando uma máquina virtual
O próximo passo é selecionar a quantidade de memória que será alocada para a máquina
virtual. Esse passo é muito importante, pois, caso seja alocada pouca memória, o sistema
será incapaz de ser iniciado ou rodará com lentidão.
Depois, é necessário criar um disco virtual que será usado pelo sistema virtualizado. Assim,
ele não afetará o sistema host. Para tal, na respectiva janela, clique em Novo, e um
assistente de criação de disco rígido virtual será aberto. Você pode selecionar um disco
expansível, que se expande a medida que o sistema virtualizado cria mais arquivos, ou uma
imagem de tamanho fixo, que ocupa todo o espaço que você selecionar no seu HD.
Teoricamente, isso aumenta a performance do sistema virtualizado, mas, em contrapartida,
você ocupará um espaço desnecessário no seu HD físico.
Disco para armazenar o sistema operacional virtual
Após finalizar o assistente, sua máquina virtual estará criada. Você pode configurar opções
avançadas da máquina virtual clicando nela e indo em Configurações, no menu. Na janela
que se abre, é possível configurar a quantidade de memória de vídeo, a ordem de boot (CD,
HD, Disquete), montar uma imagem ISO como drive de CD, configurar o áudio, rede, entre
outros.
Após configurar a máquina virtual, finalmente a melhor parte: ligar a máquina virtual. Para
fazer isso, clique em Iniciar, no VirtualBox e divirta-se!
6. Uso da virtualização
6.1. Consolidação de Servidores
Um pensamento comum entre administradores de rede é de ter um servidor por serviço.
Esta medida garante uma maior segurança e maior disponibilidade dos serviços na rede, já
que a
falha de um servidor só afeta um serviço e a vulnerabilidade de um serviço só expõe um
servidor.
No entanto, a taxa de utilização dos recursos de hardware de um servidor é extremamente
baixa, o
que indica uma subutilização de seus recursos.
A consolidação de servidores consiste em usar uma máquina física com diversas máquinas
virtuais, sendo uma para cada servidor. Essa nova abordagem garante o isolamento dos
servidores e
apresenta as vantagens de aumentar a taxa de utilização de servidores, reduzir os custos
operacionais, criar ambientes mais flexíveis e reduzir custos de administração de TI. O
ponto mais
importante da consolidação de servidores é o melhor aproveitamento dos recursos, já que se
existem
n servidores com uma taxa de utilização x, tal que x < 100%, é menos custoso e mais
vantajoso
consolidar os n servidores em apenas um, com taxa de utilização de n.x, desde que n.x <
100%.
Outro ponto a ser levantado é que a consolidação permite ocupar menos espaço físico com
servidores, pois estes passam a ser apenas uma máquina física. Isso propicia menos gastos
com
eletricidade, já que o número de máquinas é menor, e com manutenção de máquinas. Vale
ainda
lembrar que a virtualização aumenta a flexibilidade, pois pode-se instalar diversos
ambientes em
uma mesma máquina, por exemplo, ter serviços que são executados em ambiente Windows,
coexistindo em uma mesma máquina física, mas em máquinas virtuais distintas, que
serviços que
são executados em ambiente Linux.
6.2. Virtualização da Infra-estrutura de TI
A virtualização da infra-estrutura de TI diferencia-se da consolidação de servidores na
medida em que a consolidação só prevê o isolamento dos servidores em máquinas virtuais,
enquanto a virtualização da infra-estrutura de TI vai mais além. A virtualização da infra-
estrutura de
TI prevê a virtualização de toda a estrutura da rede, com a criação de comutadores,
roteadores e
outros equipamentos virtuais, interconectado às máquinas virtuais. Outro ponto de distinção
entre a
consolidação e a virtualização da infra-estrutura é que esta permite a alocação dinâmica de
recursos
para as máquinas virtuais, levando a um processo de automação da infra-estrutura de TI.
6.3. Laboratórios de ensino
A aplicação da virtualização em laboratórios de ensino tem por objetivo criar um ambiente
que isole o estudante da máquina física. O estudante tem acesso a uma instância de uma
máquina
virtual, que pode ser facilmente recuperada de uma falha após o seu uso. Também é
interessante
notar que em ambientes virtualizados, a introdução de mais um sistema operacional no
laboratório,
não envolve a reinstalação das máquinas, mas somente a cópia dos arquivos de
configuração e
controle da máquina virtual do novo sistema operacional para as máquinas hospedeiras.
Em suma, a virtualização de laboratórios de ensino tem como vantagens a redução dos
custos de manutenção, aumento da flexibilidade e aumento da segurança.
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 versões, 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 não comprometa o sistema
operacional da
máquina hospedeira. Se o software em desenvolvimento vier a comprometer o sistema da
máquina
virtual, este pode ser recuperado copiando os arquivos de outra máquina, ou recuperando os
arquivos da máquina comprometida do último backup.
7. Conclusão
A virtualização é uma técnica que está cada vez mais presente na área de TI. Isso vem
sendo revelado pelo grande número de empresas que surgem com soluções de gerência de
ambientes virtualizados e pelo aumento sucessivo nos investimento na área . Essa técnica
não é
recente, mas após a popularização do PC, ela perdeu um pouco de destaque no cenário da
TI. No
entanto, esse destaque que vem sendo dado à virtualização recentemente é fruto do aumento
do
poder computacional, que não foi seguido pela taxa de utilização dos computadores, o que
gerou
muitos recursos ociosos. A fim de aproveitar esses recursos, a idéia da virtualização
retornou ao
cenário da TI.
Embora a técnica da virtualização pareça ser a solução para grande parte dos problemas de
infra-estrutura de TI, sua aplicação deve ser estudada e devem ser avaliados os transtornos
que
podem ser gerados. A aplicação da técnica da virtualização traz consigo uma mudança de
paradigma e, portanto, deve ser avaliada como um projeto de longo prazo. A sua adoção
implicará
na mudança de política de compras e instalação de novos sistemas.
Outro ponto a ser destacado na adoção da técnica de virtualização é qual vertente deve ser
seguida, a virtualização total ou a para-virtualização. 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 máquinas virtuais. Caso seja um hardware com suporte à virtualização, ou
seja, da
arquitetura AMD-V ou Intel VT, o mais aconselhável é o uso do virtualização total. Caso
contrário,
o aconselhável é o uso da para-virtualização, que obteve melhores resultados de
desempenho em
teste realizados com hardware sem suporte à virtualização .
Em suma, a proposta da virtualização é muito atraente e traz diversos benefícios.
Entretanto, como todo sistema computacional, está sujeito a falhas. A adoção da
virtualização como
paradigma a ser seguido é uma decisão que deve ser tomada avaliando uma série de fatores
e
ponderando os riscos e os benefícios. Portanto, para empregar a técnica de virtualização, o
mais
correto a ser feito é um projeto de longo prazo, que adote a virtualização 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 questões que ainda não estão
completamente
resolvidas, tais como a migração de máquinas, a configuração automática de máquinas
virtuais,facilidades de backup e a recuperação de falhas.
Portanto tornasse dificil, o comparativo mas ambos as tecnologias sao uteis para o uso
desde que seja avaliado o caso e o objetivo.
8. Perguntas e Respostas
8.1. A virtualização não é um conceito novo. Por que ficou esquecido durante tanto
tempo?
O conceito de virtualização ficou esquecido, pois o objetivo principal da virtualização,
quando esta foi criada, década de 60, era fornecer ambientes distintos dentro de um
mainframe que
permitisse executar uma aplicação legada de outro mainframe. Essa necessidade de vários
ambientes para aplicações 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 unificação de padrões.
Atualmente, a virtualização tem voltado ao cenário das discussões. Isso ocorre, pois o
poder computacional tem crescido em uma velocidade mais rápida do que a necessidade de
processamento de dados, o que gera um poder computacional ocioso muito elevado. A
virtualização
desponta como uma proposta de melhor aproveitar o poder computacional ocioso e, assim,
cortar
custos operacionais e de administração em TI.
Referencias
[2] http://www.virtualbox.org/
[4] Xen.org Project (2008). The Official Xen.org Project Site. (http://www.xen.org/)
[5] http://joelteixeira.net/2007/10/vurtualbox-virtualizacao-eficaz-e-opensource
[6] http://wiki.xen-br.org/P%C3%A1gina_principal
[7] http://franciscokapor@blogspot.com
Fonte(http://joelteixeira.net/2007/10/vurtualbox-virtualizacao-eficaz-e-opensource/)