XEN - Instalação e configuração no Debian Etch

Neste artigo mostro como instalar e configurar o software de virtualização XEN no Debian Etch. Para isso utilizaremos conceitos de LVM, entre outras coisas.

[ Hits: 122.727 ]

Por: Marcus-RJ em 06/08/2008


Criando a máquina modelo



Criaremos uma máquina modelo agora que será usada posteriormente.

# mkdir /modelo
# aptitude install debootstrap


O debootstrap precisa de uma fonte de dados, que pode ser o CD-ROM do Debian ou uma URL da Internet. Para utilizar o debootstrap com o CD-ROM do Debian, insira o mesmo no leitor de CD e monte a mídia com o comando:

# mount /dev/cdrom /mnt

Em seguida, emita o comando:

# debootstrap etch /modelo file:/mnt

Para utilizar o debootstrap com uma URL, ao invés do CD, execute o comando:

# debootstrap etch /modelo http://ftp.us.debian.org/debian

Copie alguns arquivos essenciais para dentro de /modelo:

# cp -a /etc/apt/* /modelo/etc/apt
# cp -a /etc/fstab /modelo/etc
# cp -a /etc/hosts /modelo/etc
# cp -a /etc/network/interfaces /modelo/etc/network
# cp -av /lib/modules/*xen* /modelo/lib/modules


"Enjaule-se" dentro do diretório /modelo com o comando:

# chroot /modelo

Obs.: Uma vez enjaulado, o /modelo passará a ser a raiz do sistema (/). Com isso o administrador estará operando dentro de um novo sistema, que deverá ser reconfigurado. Se a rede estava funcionando fora da jaula, continuará funcionando dentro da mesma e com o mesmo endereço IP.

Execute o comando:

# mount /proc

Obs.: Isso se faz necessário porque a partição /proc é montada pelo sistema durante o boot e não houve boot de sistema e sim enjaulamento.

Execute os comandos:

# aptitude update
# aptitude install locales libc6-xen


Na janela de diálogo que surgirá, selecione pt_BR ISO-8859-1 para gerar o locale correto. A seguir, selecione pt_BR para o environment.

Execute o comando "tzsetup" para configurar o fuso horário. Depois selecione "Nenhuma das opções acima" e, a seguir, GMT+2, GMT+3 ou GMT+4, de acordo com o seu caso (GMT+3 para o horário de Brasília).

Execute o comando a seguir para otimizar o sistema:

# aptitude install apmd less linuxlogo ntpdate rcconf

Execute o comando "rcconf" e desmarque os serviços que não serão utilizados. Se não souber o que está fazendo, deixe como está.

Instale o pacote module-init-tools:

# aptitude install module-init-tools

Atualize o sistema com o comando:

# aptitude upgrade

Remova os arquivos .deb utilizados até o momento para que a máquina modelo não fique muito grande:

# apt-get clean

Converta o arquivo de senhas de /etc/passwd para /etc/shadow com o comando:

# pwconv

Edite o arquivo /etc/hostname e altere o nome da máquina para o desejado.

Edite o arquivo /etc/hosts e altere o nome da máquina para o desejado.

Edite o arquivo /etc/network/interfaces e altere o nome xen por eth0 para que as máquinas virtuais possam utilizar corretamente os adaptadores de rede. Ainda, remova as entradas bridge_ports e bridge_maxwait.

Configure o arquivo /etc/resolv.conf para que o mesmo aponte para o(s) servidor(es) DNS correto(s).

Renomeie o diretório /lib/tls para desabilitá-lo. Utilize o comando:

# mv /lib/tls /lib/tls.disabled

Edite o arquivo /etc/inittab e desabilite os terminais locais de 2 a 6 (lembra do que eu disse no início sobre só ter um terminal). A situação final será a seguinte:

1:2345:respawn:/sbin/getty 38400 tty1
#2:23:respawn:/sbin/getty 38400 tty2
#3:23:respawn:/sbin/getty 38400 tty3
#4:23:respawn:/sbin/getty 38400 tty4
#5:23:respawn:/sbin/getty 38400 tty5
#6:23:respawn:/sbin/getty 38400 tty6

Obs.: O Xen só utiliza um terminal. Assim sendo, a não desabilitação dos terminais excedentes causará mensagens de erro na tela.

Edite o arquivo /etc/profile e insira as linhas (no final):

alias ls='ls --color=auto'
export TMOUT=1200

Obs.: A linha "alias" proverá a facilidade de colorização dos resultados do comando ls. A linha export irá declarar a variável TMOUT. Com isso, após 1200 segundos (20 minutos) de inatividade no teclado, haverá um auto-logout. Isso aumentará o nível de segurança.

Edite o arquivo /etc/fstab e altere as entradas existentes para que fiquem compatíveis com as máquinas virtuais a serem criadas. Esse arquivo deverá referir-se a uma nova máquina que, normalmente, terá um esquema de partições próprio, começando em /dev/hda1. A seguir, um exemplo de configuração para a máquina vm1:

# <file system> <mount point> <type>  <options> <dump> <pass>
proc          /proc       proc     defaults    0     0
/dev/hda1     /           ext3     defaults    0     1
/dev/hda2     none        swap     sw          0     0

Obs.: Não se preocupe com o fato de ter utilizado /dev/hda1 e /dev/hda2 e não saber o porque disso. Isto em nada tem haver com seus dispositivos físicos (reais), até mesmo se acaso tivesse, nós usaríamos algo como /dev/sd*, o que não é o caso. Na verdade, no momento em que a máquina virtual for configurada para ir ao ar, serão atribuídas ligações entre os dispositivos em questão e os volumes lógicos criados anteriormente. Assim sendo, no caso da máquina vm1, /dev/hda1 será correlacionado com /dev/vm/vm1.raiz. Já o /dev/hda2 será correlacionado com /dev/vm/vm1.swap. Configuraremos isso posteriormente.

Desmonte o diretório /proc com o comando:

# umount /proc

Saia da jaula com o comando:

# exit

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Requisitos e considerações
   3. Instalando e configurando
   4. Configuração + LVM
   5. Criando a máquina modelo
   6. Criando as máquinas virtuais (vms)
   7. Configurando a máquina virtual (vm1)
   8. Coisas interessantes do XEN
   9. Comandos úteis do XEN
   10. Comandos úteis do LVM
   11. Esclarecimento, referências, suporte técnico
Outros artigos deste autor

Ferramentas incríveis! Converta diversos tipos de arquivos com o xPDF e ffmpeg

VirtualBox 2.1.0: Rede no VirtualBox agora é fácil!

Leitura recomendada

Rodando o Windows 3.1 no Linux

xDVDShrink: um DVDShrink para Linux

Instalando fontes true type no Linux via Kcontrol

Gerência de projetos com Redmine

Mono e C# (parte 1)

  
Comentários
[1] Comentário enviado por leobragatti em 06/08/2008 - 13:33h

Parabens pelo artigo, ficou muito bom

[2] Comentário enviado por grandmaster em 06/08/2008 - 17:04h

Faço minha as palavras do Leobrgatti.

Muito bom o Artigo.

---
Renato de Castro Henriques
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br

[3] Comentário enviado por marcio.itpro em 06/08/2008 - 20:52h

Muito bom o artigo, lembrando que issu tudo ai nol Red Hat é bem mais tranquilo de fazer.
parabens.

[4] Comentário enviado por Marcus-RJ em 06/08/2008 - 22:07h

Obrigado galera. :) Fico feliz!! |-]]

*mgrinfo - Boa sua dica, eu nunca tentei no Red Hat, sugestão anotada.

Abraços, fiquem com Deus!

[5] Comentário enviado por cromado em 07/08/2008 - 23:17h

Não li , más por se tratar de XEN já merece um 10. estou pensando que assunto será meu trabalho de conclusão de curso , talvez fale sobre XEN ... vou testar esse tuto , se fluir legal , funfar numa boa , talvez me anime e fecho meu TCC com XEN ... olha a responsa aí hein cara =).

[6] Comentário enviado por Marcus-RJ em 07/08/2008 - 23:30h

Está certo!!!! rsrsrs...

Case você use o Debian Etch como distribuição, e seu hardware nao seja muito moderno (em geral, evite HDs do tipo SATA) é praticamente certo esse tutorial funcionar, com sobras! Porém qualquer dúvida ou problema que ocorra no meio do caminho, o vivaolinux está aqui para isso. xD

Abraços, fica com Deus. Obrigado pelo elogio!

[7] Comentário enviado por pink em 09/08/2008 - 13:42h

Caro Marcus Jabber,
Está ótimo seu artigo, 10! Você esclareceu perfeitamente o conteúdo proposto, com links, conteúdo para pesquisa, manual de instalação, sem dizer que é num Debian Etch (que eu amo demais), fez uso da didática, simplicidade como foi transmitida a informação, detalhes de configuração... Enfim, em outras palavras está perfeito, fico feliz de ver algo tão importante como virtualização aqui no VOL.
Anos atrás conheci a importância da virtualização, na época foi à implementação em um laboratório de informática com a finada Conectiva Linux 10.
Já ouvi falar muito do XEN, mas ainda não nos conhecemos pessoalmente hehehe, mas acredito que ainda vou ter uma oportunidade em testá-lo e configurá-lo.
Parabéns pela qualidade do artigo, pela sua presença e obrigada por compartilhar com a comunidade.
Beijos, pink
Fique com Deus.

[8] Comentário enviado por maran em 09/08/2008 - 15:34h

Bom velinhu, sensacional, realmente um belo artigo.
eu gosto deste tipo de artigo, grande, didático e eficiente.

Mas sobre o Red Hat , você só consegue tamanha fácilidade na versão paga, que vem com algusn softwares e kernel especial , ou seja, eles criam um kernel próprio para este propósito, junto com ferramentas....
Por isso a Red Hat , é paga, não o linux em si, e sim seu serviço !
Testei algo parecido no CentOS, e já achei magnifico, imagine com outrs ferramentas.
Mas voltando a seu artigo, já está lá.
Favoritos, grande abraço
Maran

[9] Comentário enviado por llavoura em 11/08/2008 - 09:27h

Parabéns pelo artigo Marcus !! Está bem completo e explicativo.
Aqui no trabalho usamos o XEN com Fedora 8, e ao contrário do Red Hat no Fedora não há a necessidade de se pagar e o Kernel já vem preparado para trabalhar com virtualização, sem necessidade de se recompilar.
Depois de corretamente configurado, as máquinas virtuais funcionam numa boa, dependendo da necessidade vale a pena mesmo utilizar virtualização, vc aproveita melhor o potencial do hardware, principalmente em se tratando de servidores.

Abraço,
Luciano

[10] Comentário enviado por Marcus-RJ em 18/08/2008 - 13:08h

Desculpa o atraso ai pessoal. Muito obrigado pelos elogios, fico feliz por todos.

Isso so nos motiva mais, ate mesmo porque recebi elogios de membros nobres do vivaolinux. rsrs


Abraços, fica com Deus!

[11] Comentário enviado por jorgealencar em 19/08/2008 - 14:08h

muito bom o artigo, um dos melhores que já li.
vlw por compartilhar seu conhecimento conosco.

[12] Comentário enviado por Galvaovao em 31/08/2008 - 16:01h

Olá, na verdade o Eriberto já havia escrito sobre instalacao e configuracao do Xen no Debian Etch, mas não na internet. O referido conteudo se encontra na segunda edicao de seu livro lancado no ano passado "Descobrindo o Linux".

Mas é legal disponibilizar mais material sobre o assunto , ainda mais sobre o Xen que é complicado de se instalar.

[13] Comentário enviado por henbran em 10/12/2008 - 21:06h

Iniciei a instalação por este tutorial porém ocorreram alguns erros e agora não sei por que mas minha configuração de rede consta como desabilitada. Rodando a mesma máquina no windows XP está OK porém no debian após esta tentativa de se instalar o XEN tive este impecílio de ficar sem net. Como faço para checar e resolver isso? Seria o caso de após instalado o XEN a rede não rode para a máquina real, mas só na virtual?

[14] Comentário enviado por Marcus-RJ em 23/12/2008 - 09:18h

@Galvaovao

Boa sua colaboração, não sabia do livro do Eriberto. De qualquer forma, valeu a minha contribuição aqui no VOL também.

@henbran
Alfuma coisa está errada na sua configuração de rede, não é correto a máquina real perder a rede. Verifique a configuração das suas bridges com o comando brctl e revise a parte de rede no artigo. Erros costumam estar na criação das bridges ou configuração do /etc/network/interfaces

No geral verifique se vocẽ está associando a bridge ao dispositivo correto tanto no interfaces quanto no arquivo de configuração da VM ( /etc/xen/algumavm .

Obrigado a todos pela colaboração com o artigo.

Abraços, fique com Deus!

[15] Comentário enviado por rogawa em 28/04/2009 - 21:39h

Eae Marcus, blz? Muito bom seu artigo, parabéns! Estou colocando em prática num Dell 2900 III com 2 Xeon 2.33Ghz, 4GB de RAM e 2 HD SAS de 73GB cada em RAID0. Tirando alguns percalços por conta de não ter prestado atenção em alguns detalhes, tudo correu bem. Só que quando inicializo minha vm, vejo o processo de boot até que a coisa trava... Dou um CTRL+], um xm list, e vejo que minha vm está com state b, de blocked. Busquei algo nas listas oficiais, mas as respostas são bem incipientes, tipo, o state b pode ser decorrente de um monte de coisas, nada em específico. Alguma dica do que pode ser? Abraços e sucesso!

[16] Comentário enviado por junior199 em 30/05/2009 - 00:21h

adorei o tuto, mas estou tendo problemas na instralação do programa =/


Contribuir com comentário