palestra xen-flisol2011

35
Virtualização com André Luiz F. Moreira [email protected]

Upload: andreluizfm

Post on 13-Jan-2015

890 views

Category:

Technology


0 download

DESCRIPTION

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

TRANSCRIPT

Page 1: Palestra xen-flisol2011

Virtualização com

André Luiz F. Moreira [email protected]

Page 2: Palestra xen-flisol2011

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.

Page 3: Palestra xen-flisol2011

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.

Page 4: Palestra xen-flisol2011

Cenários de uso

● Consolidação de servidores;● Computação em cluster;● Variedade de sistemas operacionais;● Independência do hardware;● Desenvolvimento de kernel.

Page 5: Palestra xen-flisol2011

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.

Page 6: Palestra xen-flisol2011

Virtualização completa (HVM)

Page 7: Palestra xen-flisol2011

Paravirtualização

Page 8: Palestra xen-flisol2011

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;

Page 9: Palestra xen-flisol2011

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;

Page 10: Palestra xen-flisol2011
Page 11: Palestra xen-flisol2011
Page 12: Palestra xen-flisol2011

Rings

Page 13: Palestra xen-flisol2011

SOs suportados como domU

Page 14: Palestra xen-flisol2011

SOs que podem ser utilizados como dom0

Page 15: Palestra xen-flisol2011

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

Page 16: Palestra xen-flisol2011
Page 17: Palestra xen-flisol2011

Entrada no GRUB

title Debian Xen 2.0.7/2.6.11

root (hd0,0)

kernel /boot/xen-2.0.7.gz dom0_mem=65536 noreboot

module /boot/xen-linux-2.6.11-ksxen0 root=/dev/hda1 ro ramdisk_size=24576 console=tty0

module /boot/initrd-2.6.11-ksxen0

Page 18: Palestra xen-flisol2011

Arquivos de configuração

● /etc/xen/xend-config.sxp● /etc/xen/scripts/● /etc/xen/vm.cfg● /etc/xen/auto/vm.cfg

Page 19: Palestra xen-flisol2011

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.

Page 20: Palestra xen-flisol2011

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

Page 21: Palestra xen-flisol2011

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

Page 22: Palestra xen-flisol2011

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

Page 23: Palestra xen-flisol2011

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

Page 24: Palestra xen-flisol2011

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"

Page 25: Palestra xen-flisol2011

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"

Page 26: Palestra xen-flisol2011

Ferramentas automáticas

● xen-create-image:– xen-create-image --hostname <hostname> --ip

<ip> --scsi --vcpus 2 --pygrub --dist <lenny|maverick|whatever>

● virt-install --prompt

Page 27: Palestra xen-flisol2011

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

Page 28: Palestra xen-flisol2011

Remus

● Fornece alta disponibilidade para as vms do Xen;

● Mantém uma cópia atualizada da vm em um servidor de backup;

● É transparente.

Page 29: Palestra xen-flisol2011

Ferramentas gráficas

● Virt-manager;● Convirture;● Enomalism.

Page 30: Palestra xen-flisol2011

Virt-manager

Page 31: Palestra xen-flisol2011
Page 32: Palestra xen-flisol2011
Page 33: Palestra xen-flisol2011

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

Page 34: Palestra xen-flisol2011

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

Page 35: Palestra xen-flisol2011

Dúvidas, Perguntas