domingo, 12 de março de 2017

Instalando máquinas com o virt-install


Vamos instalar um Ubuntu Server 16.04.02 LTS que é a última versão até a presente data dessa publicação. Para começar vamos instale os utilitários necessarios seguindo o post: Instalando máquinas com o virt-manager.

O vídeo Instalando um Linux com o comando virt-install demostra o conteúdo desse post.

Para instalar o Ubuntu que foi feito download (para o diretorio ~/VMs/Isos), execute:

rlucca@millie:~$ virt-install --name ubuntu-server-16-lts \
> --cdrom ~/VMs/Isos/ubuntu-16.04.2-server-amd64.iso      \
> --vcpus 1 --cpu=host --memory 512                       \
> --network network=default,model=virtio                  \
> --disk pool=VMs,size=20_

Vamos ver cada um desses parâmetros:
  • --name será utilizado para o nome da VM (máquina virtual) ou dominio;
  • --cdrom especifica o caminho completo local onde está a ISO à ser instalada;
  • --vcpus especifica a quantidade de processadores que a nova máquina simulará;
    • Cabe chamar atenção que é possivel fazer --vcpus 1,cores=2;
  • --cpu especifica o tipo de cpu (host significa o mesmo tipo que a estação física);
    • host: mesmo tipo da estação física;
    • É possível fazer diversos tipos de configuração de caracteristicas do processador e/ou utilizar modelos de processadores diferentes que o físico;
  • --memory especifica quantos MB de memória serão utilizados;
  • --network especifica como deve ser criada a placa de rede virtual;
    • No caso esta sendo criada uma placa do tipo network que utiliza a entrada default do net-list com o modelo virtio e não, por exemplo, rtl8139;
  • --disk especifica a localização onde esta salvo o HD da VM;
    •  Foi utilizado a opção de indicar o pool e o tamanho (size) que faz com que seja criado o volume usado pela máquina virtual (o nome do volume é o mesmo da máquina).

A manipulação de VMs pode ser feita pelo comando virsh. Esse comando pode ser usado sem nenhum argumento para abrir um shell ou com parâmetros que seriam a linha digitada dentro do shell que ele abriria...

Vamos ver alguns comandos:
  • list --all: Lista todos as VMs existentes (ativas ou não);
  • list: Lista todas as VMs ligadas existentes;
  • start nome: Inicia uma VM existente chamada 'nome';
  • shutdown nome: Envia uma solicitação para desligar a VM chamada 'nome';
  • destroy nome: Desliga forçadamente a VM chamada 'nome';
  • undefine nome: Apaga a configuração da VM chamada 'nome';
  • pool-list: Lista todos os pools ativos;
  • vol-list --pool nome: Lista todos os volumes (HDs) que existem no pool chamado 'nome';
  • vol-delete --pool nome1 nome2: Apaga o volume chamado 'nome2' que deve estar dentro do pool ativo chamado 'nome1';

Algumas explicações adicionais sobre a utilização da libvirt sobre a configuração de rede e como isso afeta o firewall existente do host pode ser visto nesse post do blog rabexc.

Uma coisa muito boa é que o virt-install pode ser utilizado  com a opção '--graphics none' para fazer com que seja utilizado a interface serial do Linux sendo instalado. Dessa forma, a interação toda acontece no próprio console que o comando foi chamado. Sendo assim, é possível fazer um script usando o expect para automatizar a instalação.

Nenhum comentário:

Postar um comentário