Instalação e Configuração do Hipervisor xen pvm

32
Hipervisor Xen PVM Autores: Francisco Renato Cavalcante Araújo Fernando Pessoa Oliveira de Sousa Professor: Paulo Antônio Leal Rego

Transcript of Instalação e Configuração do Hipervisor xen pvm

Page 1: Instalação e Configuração do Hipervisor xen pvm

Hipervisor Xen PVM

Autores: Francisco Renato Cavalcante Araújo

Fernando Pessoa Oliveira de Sousa

Professor: Paulo Antônio Leal Rego

Page 2: Instalação e Configuração do Hipervisor xen pvm

Virtualização

Surgiu por volta de 1960 com a IBM;

Técnica que permite instalar um sistema operacional dentro de outro;

Melhor aproveitamento dos recursos da máquina;

Utiliza-se de hipervisores para gerenciar as máquinas virtuais.

Page 3: Instalação e Configuração do Hipervisor xen pvm

Tipos de Virtualização

VIRTUALIZAÇÃO TOTAL

Primeiro tipo de virtualização a surgir;

Proporcionava uma abstração completa do hardware;

SO não sabia que era executado em hardware emulado;

Usava tradução binária para comunicação entre máquina virtual e física.

Page 4: Instalação e Configuração do Hipervisor xen pvm

Tipos de Virtualização

PARAVIRTUALIZAÇÃO

Kernel do SO convidado é modificado;

SO convidado sabe que está sendo executado sobre hardware simulado;

Combina tradução binária com chamadas de sistema (hyper calls) para comunicação entre as máquinas;

Melhor desempenho;

Acesso parcial ao hardware.

Page 5: Instalação e Configuração do Hipervisor xen pvm

Tipos de virtualização

VIRTUALIZAÇÃO A NÍVEL DE SISTEMA OPERACIONAL

Baseia-se em containers ou partições;

SO convidados devem possuir o mesmo kernel do SO da máquina física;

Page 6: Instalação e Configuração do Hipervisor xen pvm

Tipos de Virtualização

VIRTUALIZAÇÃO ASSISTIDA POR HARDWARE

Apoiado pelos hardwares atuais que implementam uma nova arquitetura;

Anel -1, onde é instalado o hipervisor;

Máquina virtual executa no anel 0, ao lado do SO hospedeiro;

Acesso direto ao hardware.

Page 7: Instalação e Configuração do Hipervisor xen pvm

Hipervisor Xen PVM

O Xen é um framework de virtualização originalmente desenvolvido pela University of Cambridge (UK) e está

mantido pela XenSource, Inc. (parte da Citrix). Ele usa paravirtualização, um método de virtualização que envolve

alto grau de cooperação entre hosts virtualizados e máquinas virtuais (GUTIERREZ, 2014).

Page 8: Instalação e Configuração do Hipervisor xen pvm

Vantagens do Hipervisor Xen PVM

Elevado desempenho na execução das maquinas virtuais;

Flexibilidade Recursos de administração de uma máquina virtual em tempo real sem necessidade de reiniciá-la;

Migração em tempo real;

Pode ser instalado em infraestrutura heterogênea, na qual pode haver processadores que não tenham suporte a

virtualização assistida por hardware.

Page 9: Instalação e Configuração do Hipervisor xen pvm

Desvantagens do Hipervisor Xen PVM

A paravirtualzação é menos flexível, pois carece de modificações no sistema operacional convidado, para que

este possa trabalhar perfeitamente

Page 10: Instalação e Configuração do Hipervisor xen pvm

Trabalhos Relacionados

SCHMIDT, A. H. et al. Análise de Desempenho da Virtualização de Redes nos Sistemas Xen e OpenVZ. p. 1–8,

2007.

AZEVEDO, E. et al. Nuvem pública versus privada: Variações no desempenho de infraestrutura para elasticidade.

p. 110–123, 2012.

Page 11: Instalação e Configuração do Hipervisor xen pvm

Instalação Xen PVM no Ubunto 12.04 LTS

Para instalar o hipervisor Xen PVM e suas dependências utilize o comando:

sudo apt-get install xen-hypervisor-4.3-amd64 xen-utils-4.3 xenwatch xen-tools xen-utils-common xenstore-utils

Após isso instale a biblioteca virt com o commando:

sudo apt-get install virtinst virt-viewer virt-manager

Page 12: Instalação e Configuração do Hipervisor xen pvm

Instalação Xen PVM no Ubunto 12.04 LTS

Entre no arquivo de configuração do xen, que fica no diretório “/etc/xen/xend-config.sxp”, e configure-o para

que o hipervisor possa usar uma rede bridge descomentando a linha (network-script network-bridge) e ative o

acesso HTTP ao servidor xen descomentando as linhas abaixo:

#(xend-http-server yes)

#(xend-unix-server yes)

Page 13: Instalação e Configuração do Hipervisor xen pvm

Instalação Xen PVM no Ubunto 12.04 LTS

Abra o arquivo “/etc/xen-tools/xen-tools.conf” e adicione no fim do arquivo a seguinte linha:

pygrub=1

Edite o arquivo “/etc/default/grub” e modifique o grub para iniciar o Xen por padrão. Para tanto é necessário

modificar as seguintes linhas:

GRUB_DEFAULT=“Xen 4.1-amd64”

#GRUB_HIDDEN_TIMEOUT=0

#GRUB_HIDDEN_TIMEOUT_QUIET=true

GRUB_TIMEOUT=10

Page 14: Instalação e Configuração do Hipervisor xen pvm

Instalação Xen PVM no Ubunto 12.04 LTS

Entre na pasta “/etc/grub.d” e renomeie o arquivo 10_linux para 50_linux e atualize o grub utilizando os

comandos abaixo:

cd /etc/grub.d

sudo mv 10_linux 50_linux

sudo update-grub

Page 15: Instalação e Configuração do Hipervisor xen pvm

Instalação Xen PVM no Ubunto 12.04 LTS

Entre no arquivo “/etc/network/interface” para criar a interface bridge que funcione com DHCP. Como segue:

auto lo

iface lo inet loopback

auto xenbr0

iface xenbr0 inet dhcp

bridge_ports eth0

bridge_maxwait 0

Page 16: Instalação e Configuração do Hipervisor xen pvm

Instalação Xen PVM no Ubunto 12.04 LTS

Após criar a interface bridge é necessário que você levante a interface com o comando abaixo:

sudo ifup xenbr0

Entre no arquivo “/etc/init.d/rc.local” e adicione a linha “ifup xenbr0” no final do arquivo, para a interface subir

junto com a inicialização do sistema operacional.

Para ter certeza de que a sua interface bridge está funcionando, verifique se ela consta na saída do comando

abaixo:

sudo brctl show

Caso não esteja configurada ainda, reinicie o serviço de rede com o comando a seguir:

/etc/init.d/networking restart

Page 17: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração de Máquinas Virtuais

Para criar máquinas virtuais no hipervisor xen, você precisa passar como parâmetros: nome, distribuição,

tamanho do disco, tamanho do swap, rede estática ou por DHCP, tamanho da memória RAM, diretório destino

para criar a imagem e um parâmetro que possibilita a criação de um senha do usuário no processo de criação

da máquina virtual:

Ex: sudo xen-create-image –-hostname=gerente -–dist=precise –-size=4Gb -–swap=512Mb -–dhcp –-

memory=1024Mb -–dir=/xen -–role=udev --passwd

Page 18: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração de Máquinas Virtuais

Após criar a imagem da máquina virtual, é preciso criar um domínio para essa máquina. A imagem criada é um

arquivo com o nome “hostname.cfg”. No caso do exemplo citado, ficaria “gerente.cfg”. Para criar tal domínio

execute o comando:

sudo xm create NomeDoDomínio.cfg

Por motivos de melhor assimilação utilize tanto para a imagem, quanto para o domínio o mesmo nome.

Page 19: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração de Máquinas Virtuais

Com o domínio criado, a máquina virtual já pode ser iniciada. O usuário padrão é “root” e a senha, é a que você

escolheu no momento em que criou a imagem.

Para acessar a máquina virtual execute o comando a seguir:

sudo xm console “domínio”

Caso seja necessário pausar e depois iniciar a máquina pausada, execute os seguintes comandos

respectivamente:

sudo xm pause gerente

sudo xm unpause gerente

Page 20: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração de Máquinas Virtuais

Para salvar a máquina virtual, é preciso especificar o domínio, e um arquivo de saída para ser salva uma cópia da

imagem da máquina virtual. Execute o comando abaixo para salvar uma máquina:

sudo xm save –c gerente /home/domínioBackup

Para deletar uma máquina precisamos primeiro apagar seu domínio, e em seguida podemos deletar a imagem

da máquina virtual. Passando o nome da imagem a ser deletada e o diretório do domínio da imagem. Abaixo foi

usado como exemplo uma máquina virtual e domínio de nome “teste”.

sudo xm destroy teste

sudo xen-delete-image teste –dir=/xen

Page 21: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração do Iperf

Para instalar o iperf execute os seguintes comandos:

sudo apt-get update

sudo apt-get install iperf

Depois de instalar os pacotes nas duas máquinas vamos executar o comando abaixo para realização do teste na

máquina servidor e na máquina cliente respectivamente. A sintaxe do segundo comando executado no cliente,

200.129.39.86 é o endereço IP do servidor, -w tamanho do pacote, -i intervalo de 1 segundo, -t tempo para

transmitir:

Iperf -s

Iperf –c 200.129.39.86 –w 64k –I 1 –t 60

Page 22: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração do Bonnie++

Execute o comando abaixo para instalar a ferramenta usada para testar discos rígidos e performance do sistema

de arquivos:

sudo apt-get install bonnie++

Com a ferramenta instalada vamos aos testes de desempenho. Na máquina virtual é preciso criar um usuário

para poder executar a ferramenta, por exemplo “admin”. Na máquina física basta executar o segundo comando.

Então basta executar o comando bonnie++, porém o comando roda com os valores padrão (Default).

Especificamos os parâmetros –r 100, tamanho de memória RAM em megabytes que será usada na execução, e o

parâmetro –s 200, tamanho dos arquivos para o teste de entrada e saída em megabytes. É recomendado usar o

dobro da quantidade de memória RAM, para o teste ficar mais realista.

Page 23: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração do Bonnie++

Execute os comandos abaixo para criar o usuário na máquina virtual e em seguida para executar o teste com o

bonnie++:

adduser admin

bonnie++ -r 100 –s 200

Page 24: Instalação e Configuração do Hipervisor xen pvm

Instalação e Configuração do Sysbench

Para instalar a aplicação na máquina utilize o comando:

sudo apt-get install sysbench

Com a ferramenta instalada, vamos fazer os testes de desempenho da CPU. Neste modo é calculado o número

de primos até o valor especificado pela opção --cpu-max-prime. Nós usamos o número 20000 como exemplo.

sysbench -–test=cpu -–cpu-max-prime=20000 run

Page 25: Instalação e Configuração do Hipervisor xen pvm

Resultados Obtidos Iperf

Ao analisarmos o Gráfico 1, correspondente a máquina virtual e o Gráfico 2 correspondente a máquina física,

observamos que os testes foram feitos no tempo total de 60 segundos (eixo X), e usamos um tamanho fixo do

pacote a ser enviado na rede de 64k, com intervalos para envio de 1 segundo.

Notamos que a máquina física se manteve nove vezes por mais de um segundo com taxa de transmissão de

94,5 Mbits/s e não se manteve nenhuma vez com taxas abaixo de 93,5 Mbits/s por mais de um segundo.

Enquanto a máquina virtual se manteve com transmissões de 94,5 Mbits/s por mais de um segundo apenas três

vezes, e com o mesmo valor de vezes para taxas de transmissões de 93,5 Mbits/s por mais de um segundo.

Apesar da analise ter sido feita em um espaço curto de tempo, podemos observar um melhor desempenho na

transmissão de pacotes e uso da rede, por parte da máquina física, como mostram os gráficos a seguir.

Page 26: Instalação e Configuração do Hipervisor xen pvm

Desempenho de rede MF e MV

Page 27: Instalação e Configuração do Hipervisor xen pvm

Resultados Obtidos Bonnie++

Se um teste é concluído em menos de 500ms, então a saída será exibida como “+ + + +”, pois o resultado de

teste não pode ser calculado com precisão devido a erros de arredondamento e os desenvolvedores da

ferramenta preferiram exibir nenhum resultado, para não mostrar resultados errados.

As tabelas a seguir mostram o desempenho da máquina física e virtual respectivamente:

Page 28: Instalação e Configuração do Hipervisor xen pvm

Resultados Obtidos Bonnie++

Abaixo mostraremos as tabelas com o desempenho da máquina virtual:

Page 29: Instalação e Configuração do Hipervisor xen pvm

Resultados Obtidos Bonnie++

Abaixo mostraremos as tabelas com o desempenho da máquina física:

Page 30: Instalação e Configuração do Hipervisor xen pvm

Resultados Obtidos Sysbench

Page 31: Instalação e Configuração do Hipervisor xen pvm

Resultados Obtidos Sysbench

Na análise dos resultados na ferramenta sysbench, assumindo que o número máximo de primos calculado no

teste de CPU foi 20000, em ambas as máquinas, verificamos que o tempo total de execução na máquina física

foi de 23.8280 segundos e na máquina virtual foi de 23.9419 segundos, uma diferença de 0,1139 segundos para

a máquina física que se mostrou mais rápida no cálculo dos primos.

As tabelas a seguir mostram as estatísticas de desempenho de cada máquina.

Page 32: Instalação e Configuração do Hipervisor xen pvm

Referências Bibliográficas

AZEVEDO, E. et al. Nuvem pública versus privada: Variações no desempenho de infraestrutura para elasticidade.

p. 110–123, 2012.

GUTIERREZ, F. .XEN no Ubuntu 12.04 LTS. Lipe.82. 2012. Disponível em:

<htpps://sites.google.com/site/lipe82/Home/diaadia/xen>. Acesso em: 24 abr. 2014.

REGO, P. A. L. Installing Xen 4.3 on Ubuntu 12.04 LTS. Lost of stuff. 2012. Disponível em: <pauloalr.wordpress.com>.

Acesso em: 28 abr. 2014.

SEO, C. E. Virtualização–Problemas e desafios. IBM Linux Technology Center, v. 1, n. 008278, p. 1–19, 2009.

SCHMIDT, A. H. et al. Análise de Desempenho da Virtualização de Redes nos Sistemas Xen e OpenVZ. p. 1–8, 2007.