Neste artigo abordo a instalação do Xen 3.3.0 no Linux Debian Lenny. O Xen é uma plataforma de virtualização livre para arquitetura x86. Com ele é possível executar vários sistemas operacionais (inclusive Windows) em cima de um mesmo hardware.
Abaixo segue um resumo dos comandos básicos para administrar uma VM. Lembrando que eles só existem no dom0.
xm list = lista as vms ligadas.
xm console "ID" = abre o console da vm especificada.
xm mem-set "ID" "MEMORIA" = altera a quantidade de memória do domínio especificado, limitado ao parâmetro MAXMEM no arquivo de configuração. Ex: xm mem-set 1 512
xm vcpu-set "ID" "VCPU" = altera o número de processadores ativos num domínio, limitado ao parâmetro VCPUS no arquivo de configuração. Ex: xm vcpu-set 1 2
xm vcpu-list = mostra quais processadores (cores) reais estão sendo usados pelas VMs.
xm shutdown "ID" = inicia o desligamento do domínio especificado.
xm destroy "ID" = força o desligamento do domínio especificado. É como puxar o "cabo da tomada", inclusive com as mesmas consequências.
xm reboot "ID" = reinicia o domínio especificado.
xm top = mostra o monitor das VMs.
xm dmesg = mostra o log de inicialização do hypervisor.
[1] Comentário enviado por andrefreire em 05/11/2008 - 19:53h
Parabéns pelo artigo ! Bastante detalhado e assim que tiver tempo vou testar, porém só uma dúvida. Por que você não usou um kernel já compilado pra XEN do próprio Debian ?
[2] Comentário enviado por brunaocomanda em 06/11/2008 - 08:36h
Opa André,
Cara, nada impede que vc use um kernel pré-compilado do próprio Debian, inclusive, que vc instale o Xen via apt, mas a questão é que eu gosto de deixar o kernel bem "enxuto", só com aquilo que é realmente necessário. Isso é uma forma de ter mais controle também, por isso eu faço assim.
[4] Comentário enviado por brunaocomanda em 06/11/2008 - 09:23h
Pra instalar o Windows, vc deve criar uma imagem ISO do cd de instalação do windows no HD (pra isso use o comando "dd"); Deve tambem criar o volume onde será instalado o windows (windows.disk) e usar o exemplo abaixo como arquivo de configuração desta VM, salvo em /etc/xen/windows.vm
#---------------------------------------------------------------------------------------------------
builder='hvm'
memory = 512
shadow_memory = 8
name="WindowsXP"
vcpus=2
vif = [ 'mac=00:16:3e:00:00:02, type=ioemu, bridge=eth0' ]
disk=[ 'phy:xenvg/windows.disk,ioemu:hda,w','file:/opt/windows.iso,ioemu:hdc:cdrom,r' ]
cdrom = "/opt/windows.iso"
on_poweroff = 'destroy'
on_reboot = 'restart'
n_crash = 'restart'
device_model= '/usr/lib/xen/bin/qemu-dm'
ne200 = 1
boot = "d"
sdl = 1
vnc = 0
#----------------------------------------------------------------------------------------------
Inicie a vm com xm create windows.vm, ela será iniciada a partir da ISO do cd (opção "boot = d"), depois de instalado o windows, mude esta opção para "boot = c". Tente ai e boa sorte!!!
[5] Comentário enviado por apscherbach em 13/11/2008 - 12:14h
A pergunta é: é preciso ter um processador específico ou com uma tecnologia específica para fazer isso?
Pelo artigo entendi que há processadores com recursos para potencializar a virtualização, mas não ficou claro se iso é um requisito para desempenho ou para realmente ter a solução.
[6] Comentário enviado por brunaocomanda em 13/11/2008 - 12:48h
Caro apscherbach,
A tecnologia presente nos novos processadores com certeza melhora o desempenho das VMs, porque é feito pra isso, mas a maior utilidade dessa tecnologia é permitir que dois sistemas operacionais distintos rodem no mesmo nível de execução do processador. Por isso é possível executar o Windows num esquema de paravirtualização. Sem esses recursos no processador, o Xen funciona, mas a execução do windows é feita com virtualização total. No caso do Linux, como tem que haver as modificações no kernel, ele sempre é executado no modo de paravirtualização, independente ou não do processador. Conforme falei, os recursos do processador apenas aumentam (e muito) o desempenho das Vms.
[9] Comentário enviado por jeff.jno em 08/10/2011 - 12:17h
Meu amigo muito obrigado e parabéns.
BrunoaComanda, Ficou ótimo seu artigo muito bom mesmo. Estou precisando de uma solução e o sistema da Vmware é muito caro no meu caso que trabalho para uma instituição de ensino você já pode imaginar o quão é difícil conseguir dinheiro se quer para comprar novos mouses, imagine então para comprar uma solução da vmware que me ofereceram por 11k por processador. tem base!
Queria fazer algumas perguntinhas:
1) conseguira eu rodar isso no ubuntu server 2.38-8? Ou você me indica mesmo o Debian?
2) Tentei instalar no unbutu e deu erro, usando esse kernel 2.38 precisaria eu usar um kernel mais antigo como o 2.11?
3) preciso baixar o kernel para compilar e gerar o arquivo que vou madar o link para o /boot
4) eu conseguiria rodar um tipo de cluster com essa solução exemplo... 4 ou 5 computadores rodando o Xem e eu instalar por exemplo uma máquina virtual onde se uma cair as outras continuam rodando os processos?
5) Se possível for fazer o cluster queria saber se tem como eu configurar por exemplo um cluster de HP e outro de HA, uma analogia bem simploria seria uma RAID 0+1 com computadores rsrs ou quem sabe até uma RAID 5?
Bruno desculpe se fiz um monte de pergunta boba ou sem sentido sou vigem nesse assunto a alguns anos atrás comecei a estudar KVM mas me roubaram o livro...