Palestra xen-flisol2011

1.032 visualizações

Publicada em

Palestra sobre o Xen hypervisor, apresentada no FLISOL-ES de 2011.

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Palestra xen-flisol2011

  1. 1. Virtualização comAndré Luiz F. Moreira andrelfm22@gmail.com
  2. 2. Xen hypervisor (1/2)● Software de virtualização;● Também conhecido como VMM (Virtual Machine Monitor);● Lançado sob a licença GPL v2;● Suporta as arquiteturas: – x86; – x86-64; – Itanium; – Power PC; – ARM.
  3. 3. Xen hypervisor (2/2)● Originalmente desenvolvido pelo Grupo de Pesquisa de Sistemas na Universidade de Cambridge como parte do projeto Xenoservers;● O projeto Xenoservers tem como objetivo proporcionar uma “infra-estrutura global para computação distribuída”;● Primeira versão lançada em Outubro de 2003.
  4. 4. Cenários de uso● Consolidação de servidores;● Computação em cluster;● Variedade de sistemas operacionais;● Independência do hardware;● Desenvolvimento de kernel.
  5. 5. Tipos de virtualização● Virtualização completa (HVM): – Vms não sabem que estão virtualizadas; – Desempenho muito próximo a sistemas instalados do modo convencional; – É necessário um processador adequado (IVT e AMD-V).● Paravirtualização – Vms sabem que estão virtualizadas; – Em geral, possui melhor desempenho do que o HVM; – SO precisa ser modificado.
  6. 6. Virtualização completa (HVM)
  7. 7. Paravirtualização
  8. 8. Verificando se o processador tem suporte a HVM● Intel VT: – # grep vmx /proc/cpuinfo● AMD-V: – # grep svm /proc/cpuinfo● Ativar na BIOS a opção de virtualização do processador caso o mesmo tenha suporte;
  9. 9. Hypervisor, dom0 e domU● Hypervisor: – Controla os recursos de comunicação,memória e processamento das vms.● dom0: – Iniciado pelo hypervisor após o boot do sistema; – Possui privilégios que permitem gerenciar as outras máquinas virtuais.● domU: – Domínios não-privilegiados (Unprivileged) lançados e controlados pelo dom0;
  10. 10. Rings
  11. 11. SOs suportados como domU
  12. 12. SOs que podem ser utilizados como dom0
  13. 13. Instalação do Xen 4● Debian: – # apt-get install xen-linux-system-2.6-xen- amd64● Opensuse: – # zypper install xen xen-libs xen-tools vm- install kernel-xen virt-manager virt- viewer
  14. 14. Entrada no GRUBtitle Debian Xen 2.0.7/2.6.11root (hd0,0)kernel /boot/xen-2.0.7.gz dom0_mem=65536norebootmodule /boot/xen-linux-2.6.11-ksxen0root=/dev/hda1 ro ramdisk_size=24576 console=tty0module /boot/initrd-2.6.11-ksxen0
  15. 15. Arquivos de configuração● /etc/xen/xend-config.sxp● /etc/xen/scripts/● /etc/xen/vm.cfg● /etc/xen/auto/vm.cfg
  16. 16. Criando máquinas virtuais (domUs)● Criação manual: – Criação dos discos; – Criação do chroot; – Ajustes em alguns arquivos do chroot; – Usar o kernel do Xen; – Criação do arquivo de configuração.● Uso de ferramentas automáticas: – xen-create-image; – virt-install.
  17. 17. Criando arquivos para serem usados como partições do domU● # dd if=/dev/zero of=vm.img bs=1M count=10240● # qemu-img create vm.img 10G
  18. 18. Criando as partições do domU usando LVM● # pvcreate /dev/sda3● # vgcreate vgxen01 /dev/sda3● # lvcreate -L 2G -n vm-root vgxen01● # lvcreate -L 3G -n vm-usr vgxen01● # lvcreate -L 512M -n vm-swap vgxen01● # mkfs.ext3 /dev/vgxen01/vm-root● # mkfs.ext3 /dev/vgxen01/vm-usr● # mkswap /dev/vgxen01/vm-swap
  19. 19. Criação do chroot● Usando debootstrap: – # debootstrap --arch=amd64 squeeze /mnt http://ftp.us.debian.org● Usando o tar: – # tar -zcpvf chroot.tar.gz --exclude /proc --exclude /sys --exclude /chroot.tar.gz / – # tar -xzpvf chroot.tar.gz -C /mnt
  20. 20. Ajustes no chroot e uso do kernel do Xen● /etc/inittab● /etc/securetty● /etc/fstab● linux-image-2.6.32-5-xen-amd64● linux-image-2.6.32-5-xen-686● kernel-xen-2.6.18-194.32.1.el5
  21. 21. Arquivo de configuração (HVM)kernel = “/usr/lib/xen/boot/hvmloader”builder = “hvm”name = “vm-web”memory = “256”vcpus = “2”vif = [ “bridge = eth0” ]disk = [ phy:/dev/vgxen01/vm-web-root,xvda1,w,phy:/dev/vgxen01/vm-web-swap,xvda2,w ]root = "/dev/xvda1 ro"
  22. 22. Arquivo de configuração (paravirtualização)kernel = “/boot/vmlinuz”ramdisk = “/boot/initrd.img”builder = “linux”name = “vm-web”memory = “256”vcpus = “2”vif = [ “bridge = eth0” ]disk = [ phy:/dev/vgxen01/vm-web-root,xvda1,w,phy:/dev/vgxen01/vm-web-swap,xvda2,w ]root = "/dev/xvda1 ro"
  23. 23. Ferramentas automáticas● xen-create-image: – xen-create-image --hostname <hostname> --ip <ip> --scsi --vcpus 2 --pygrub --dist <lenny| maverick|whatever>● virt-install --prompt
  24. 24. Comandos para gerenciamento dos domUs● # xm list● # xm create -c vm-web.cfg● # xm console vm-web● # xm reboot vm-web● # xm shutdown vm-web● # xm destroy vm-web● # xm mem-set vm-web● # xm info● # xm migrate vm-web xen-server -l
  25. 25. Remus● Fornece alta disponibilidade para as vms do Xen;● Mantém uma cópia atualizada da vm em um servidor de backup;● É transparente.
  26. 26. Ferramentas gráficas● Virt-manager;● Convirture;● Enomalism.
  27. 27. Virt-manager
  28. 28. Xen 4.1● Suporte para sistemas com mais de 255 processadores e super-páginas de 1GB/2MB;● Advanced Vector Extension (AVX);● API Access Memory;● Mais informações sobre a release: http://wiki.xen.org/xenwiki/Xen4.1
  29. 29. Mais informações● http://www.xen.org● http://www.xen.org/support/community.html● http://wiki.xen.org● http://wiki.debian.org/Xen● http://en.gentoo-wiki.com/wiki/Xen● http://wiki.freebsd.org/FreeBSD/Xen● http://www.netbsd.org/ports/xen/howto.html
  30. 30. Dúvidas, Perguntas

×