Red Hat Training

A Red Hat training course is available for RHEL 8

Capítulo 19. Diagnosticando problemas de máquinas virtuais

Ao trabalhar com máquinas virtuais (VMs), você pode encontrar problemas com diferentes níveis de severidade. Alguns problemas podem ter uma correção rápida e fácil, enquanto para outros, você pode ter que capturar dados e registros relacionados às máquinas virtuais para relatar ou diagnosticar os problemas.

As seções seguintes fornecem informações detalhadas sobre a geração de logs e diagnóstico de alguns problemas comuns da VM, bem como sobre a comunicação desses problemas.

19.1. Geração de logs de depuração de máquinas virtuais

Para diagnosticar problemas da máquina virtual (VM), é útil gerar e revisar os logs de depuração. A anexação de logs de depuração também é útil quando se pede suporte para resolver problemas relacionados à VM.

As seções seguintes explicam o que são registros de depuração, como você pode defini-los para serem persistentes, habilitá-los durante o tempo de execução e anexá-los ao relatar problemas.

19.1.1. Entendendo os logs de depuração de máquinas virtuais

Os logs de depuração são arquivos de texto que contêm dados sobre eventos que ocorrem durante o tempo de execução da máquina virtual (VM). Os logs fornecem informações sobre funcionalidades fundamentais do lado do servidor, tais como bibliotecas host e o serviço libvirtd. Os arquivos de log também contêm a saída de erro padrão (stderr) de todas as VMs em execução.

O registro de depuração não é habilitado por padrão e tem que ser habilitado quando a libvirt começa. Você pode habilitar o registro para uma única sessão ou de forma persistente. Você também pode habilitar o registro quando uma sessão de daemon libvirtd já estiver em execução, modificando as configurações de tempo de execução da daemon.

Anexar os logs da libvirt debug também é útil ao solicitar suporte com um problema de VM.

19.1.2. Permitindo configurações persistentes para registros de depuração de máquinas virtuais

Você pode configurar o registro de depuração da máquina virtual (VM) para ser ativado automaticamente sempre que a libvirt começar editando o arquivo de configuração libvirtd.conf, que está localizado no diretório /etc/libvirt.

Procedimento

  1. Abra o arquivo libvirtd.conf em um editor.
  2. Substitua ou ajuste os filtros de acordo com suas exigências.

    Ajustando o valor do filtro para:

    • 1: registra todas as mensagens geradas pela libvirt.
    • 2: registra todas as informações não depuradoras.
    • 3: registra todas as mensagens de aviso e erro. Este é o valor padrão.
    • 4: registra apenas mensagens de erro.

    Por exemplo, o seguinte comando:

    • Registra todas as mensagens de erro e aviso das camadas remote, util.json, e rpc
    • Registra apenas mensagens de erro da camada event.
    • Salva os logs filtrados para /var/log/libvirt/libvirtd.log

      log_filters="3:remote 4:event 3:util.json 3:rpc"
      log_outputs="1:file:/var/log/libvirt/libvirtd.log"
  3. Salvar e sair.
  4. Reinicie o serviço libvirtd.

    $ systemctl restart libvirtd.service

19.1.3. Habilitação de registros de depuração de máquinas virtuais durante o tempo de execução

Você pode modificar as configurações de tempo de execução do daemon libvirt para habilitar os logs de depuração e salvá-los em um arquivo de saída.

Isto é útil ao reiniciar o libvirtd não é possível porque reiniciar conserta o problema, ou porque há outro processo, como migração ou backup, rodando ao mesmo tempo. A modificação das configurações de tempo de execução também é útil se você quiser tentar um comando sem editar os arquivos de configuração ou reiniciar o daemon.

Pré-requisitos

  • Assegure-se de que o pacote libvirt-admin esteja instalado.

Procedimento

  1. Optional: Cópia de segurança do conjunto ativo de filtros de log.

    # virt-admin daemon-log-filters >> virt-filters-backup
    Nota

    É recomendável que você faça backup do conjunto ativo de filtros para que possa restaurá-los após a geração dos logs. Se você não restaurar os filtros, as mensagens continuarão a ser registradas, o que pode afetar o desempenho do sistema.

  2. Use o utilitário virt-admin para permitir a depuração e ajustar os filtros de acordo com suas necessidades.

    Ajustando o valor do filtro para:

    • 1: registra todas as mensagens geradas pela libvirt.
    • 2: registra todas as informações não depuradoras.
    • 3: registra todas as mensagens de aviso e erro. Este é o valor padrão.
    • 4: registra apenas mensagens de erro.

    Por exemplo, o seguinte comando:

    • Registra todas as mensagens de erro e aviso das camadas remote, util.json, e rpc
    • Registra apenas mensagens de erro da camada event.

      # virt-admin daemon-log-filters "3:remote 4:event 3:util.json 3:rpc"
  3. Use o utilitário virt-admin para salvar os logs em um arquivo ou diretório específico.
    Por exemplo, o seguinte comando salva a saída dos logs no arquivo libvirt.log no diretório /var/log/libvirt/.

    # virt-admin daemon-log-outputs "1:file:/var/log/libvirt/libvirtd.log"
  4. Optional: Você também pode remover os filtros para gerar um arquivo de registro que contenha todas as informações relacionadas à VM. Entretanto, não é recomendado, pois este arquivo pode conter uma grande quantidade de informações redundantes produzidas pelos módulos da libvirt.

    • Use o utilitário virt-admin para especificar um conjunto vazio de filtros.

      # virt-admin daemon-log-filters
        Logging filters:
  5. Optional: Restaurar os filtros ao seu estado original usando o arquivo de backup.
    Execute a segunda etapa com os valores salvos para restaurar os filtros.

19.1.4. Anexação de logs de depuração de máquinas virtuais para suporte de pedidos

Talvez você tenha que solicitar suporte adicional para diagnosticar e resolver problemas da máquina virtual (VM). Anexar os logs de depuração ao pedido de suporte é altamente recomendado para garantir que a equipe de suporte tenha acesso a todas as informações necessárias para fornecer uma solução rápida do problema relacionado à máquina virtual.

Procedimento

  • Para comunicar um problema e solicitar apoio, abra um caso de apoio.
  • Com base nos problemas encontrados, anexe os seguintes registros junto com seu relatório:

    • Para problemas com o serviço de libvirt, anexe o arquivo /var/log/libvirt/libvirtd.log do anfitrião.
    • Para problemas com um VM específico, anexe seu respectivo arquivo de log.

      Por exemplo, para o testguest1 VM, anexe o arquivo testguest1.log, que pode ser encontrado em /var/log/libvirt/qemu/testguest1.log.

Recursos adicionais