Red Hat Training

A Red Hat training course is available for RHEL 8

2.2. Criando máquinas virtuais

Para criar uma máquina virtual (VM) no RHEL 8, use a interface de linha de comando ou o console web RHEL 8.

Pré-requisitos

  • A virtualização é instalada e ativada em seu sistema.
  • Você tem quantidade suficiente de recursos do sistema para alocar para suas VMs, tais como espaço em disco, RAM ou CPUs. Os valores recomendados podem variar significativamente dependendo das tarefas pretendidas e da carga de trabalho das VMs.

    Atenção

    A instalação a partir de um CD-ROM ou DVD-ROM host não é possível no RHEL 8. Se você selecionar um CD-ROM ou DVD-ROM como fonte de instalação ao usar qualquer método de instalação VM disponível no RHEL 8, a instalação falhará. Para mais informações, consulte a Base de Conhecimento da Red Hat.

2.2.1. Criação de máquinas virtuais usando a interface de linha de comando

Para criar uma máquina virtual (VM) em seu host RHEL 8 usando o utilitário virt-install, siga as instruções abaixo.

Pré-requisitos

  • A virtualização é ativada em seu sistema hospedeiro.
  • Uma fonte de instalação de sistema operacional (SO) está disponível localmente ou em uma rede. Esta pode ser uma das seguintes:

    • Uma imagem ISO de um meio de instalação
    • Uma imagem em disco de uma instalação de VM existente
  • Opcional: Um arquivo Kickstart pode ser fornecido para uma configuração mais rápida e fácil da instalação.

Procedimento

Para criar uma VM e iniciar sua instalação do SO, use o comando virt-install, juntamente com os seguintes argumentos obrigatórios:

  • O nome da nova máquina
  • A quantidade de memória alocada
  • O número de CPUs virtuais alocadas (vCPUs)
  • O tipo e o tamanho do armazenamento alocado
  • O tipo e a localização da fonte de instalação do sistema operacional

Com base no método de instalação escolhido, as opções e valores necessários podem variar. Veja abaixo os exemplos:

  • O seguinte cria uma VM chamada demo-guest1 que instala o sistema operacional Windows 10 a partir de uma imagem ISO armazenada localmente no arquivo /home/username/Downloads/Win10install.iso. Esta VM também é alocada com 2048 MiB de RAM e 2 vCPUs, e um disco virtual de 80 GiB qcow2 é configurado automaticamente para a VM.

    # virt-install --name demo-guest1 --memory 2048 --vcpus 2 --disk size=80 --os-variant win10 --cdrom /home/username/Downloads/Win10install.iso
  • A seguir, cria-se uma VM chamada demo-guest2 que usa a imagem /home/username/Downloads/rhel8.iso para executar um SO RHEL 8 a partir de um CD ao vivo. Nenhum espaço em disco é atribuído a esta VM, portanto, as alterações feitas durante a sessão não serão preservadas. Além disso, a VM é alocada com 4096 MiB de RAM e 4 vCPUs.

    # virt-install --name demo-guest2 --memory 4096 --vcpus 4 --disk none --livecd --os-variant rhel8.0 --cdrom /home/username/Downloads/rhel8.iso
  • O seguinte cria uma RHEL 8 VM chamada demo-guest3 que se conecta a uma imagem de disco existente, /home/username/backup/disk.qcow2. Isto é semelhante a mover fisicamente um disco rígido entre máquinas, portanto o sistema operacional e os dados disponíveis para o Demo-guest3 são determinados pela forma como a imagem foi tratada anteriormente. Além disso, esta VM é alocada com 2048 MiB de RAM e 2 vCPUs.

    # virt-install --name demo-guest3 --memory 2048 --vcpus 2 --os-variant rhel8.0 --import --disk /home/username/backup/disk.qcow2

    Note que a opção --os-variant é altamente recomendada ao importar uma imagem de disco. Se ela não for fornecida, o desempenho do VM criado será afetado negativamente.

  • O seguinte cria uma VM chamada demo-guest4 que se instala a partir do http://example.com/OS-install URL. Para que a instalação comece com sucesso, a URL deve conter uma árvore de instalação do sistema operacional em funcionamento. Além disso, o sistema operacional é configurado automaticamente usando o arquivo kickstart /home/username/ks.cfg. Esta VM também é alocada com 2048 MiB de RAM, 2 vCPUs, e um disco virtual de 160 GiB qcow2.

    # virt-install --name demo-guest4 --memory 2048 --vcpus 2 --disk size=160 --os-variant rhel8.0 --location http://example.com/OS-install --initrd-inject /home/username/ks.cfg --extra-args="ks=file:/ks.cfg console=tty0 console=ttyS0,115200n8"
  • A seguir, cria-se uma VM chamada demo-guest5 que instala a partir de um arquivo de imagem RHEL8.iso em modo somente texto, sem gráficos. Ela conecta o console convidado ao console serial. A VM tem 16384 MiB de memória, 16 vCPUs, e 280 GiB de disco. Este tipo de instalação é útil quando se conecta a um host através de um link de rede lento.

    # virt-install --name demo-guest5 --memory 16384 --vcpus 16 --disk size=280 --os-variant rhel8.0 --location RHEL8.iso --graphics none --extra-args='console=ttyS0'
  • O seguinte cria uma VM chamada demo-guest6, que tem a mesma configuração do demo-guest5 , mas reside no host remoto 10.0.0.1.

    # virt-install --connect qemu ssh://root@10.0.0.1/system --name demo-guest6 --memory 16384 --vcpus 16 --disk size=280 --os-variant rhel8.0 --location RHEL8.iso --graphics none --extra-args='console=ttyS0'

Se a VM for criada com sucesso, uma janela do visualizador de vírus se abre com um console gráfico da VM e inicia a instalação do sistema operacional convidado.

Solução de problemas

  • Se virt-install falhar com um erro cannot find default network:

    1. Certifique-se de que o pacote libvirt-daemon-config-network esteja instalado:

      # yum info libvirt-daemon-config-network
      Installed Packages
      Name         : libvirt-daemon-config-network
      [...]
    2. Verifique se a rede padrão libvirt está ativa e configurada para iniciar automaticamente:

      # virsh net-list --all
       Name      State    Autostart   Persistent
      --------------------------------------------
       default   active   yes         yes
    3. Se não for, ative a rede padrão e configure-a para inicialização automática:

      # virsh net-autostart default
      Network default marked as autostarted
      
      # virsh net-start default
      Network default started
      1. Se a ativação da rede padrão falhar com o seguinte erro, o pacote libvirt-daemon-config-network não foi instalado corretamente.

        error: failed to get network 'default'
        error: Network not found: no network with matching name 'default'

        Para corrigir isso, reinstale libvirt-daemon-config-network.

        # yum reinstall libvirt-daemon-config-network
      2. Se a ativação da rede padrão falhar com um erro semelhante ao seguinte, ocorreu um conflito entre a subrede padrão da rede e uma interface existente no host.

        error: Failed to start network default
        error: internal error: Network is already in use by interface ens2

        Para corrigir isso, use o comando virsh net-edit default e altere os valores de 192.168.122.* na configuração para uma sub-rede que ainda não esteja em uso no host.

Recursos adicionais

  • Várias outras opções podem ser especificadas para virt-install para configurar ainda mais a VM e sua instalação do sistema operacional. Para detalhes, consulte a página de manual virt-install.
  • Se você já tem uma VM funcional, você pode cloná-la para criar rapidamente uma nova VM com a mesma configuração e dados. Para maiores detalhes, veja Capítulo 8, Clonagem de máquinas virtuais.