AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1157424
Accepted
Danny Beckett
Danny Beckett
Asked: 2024-04-05 08:59:08 +0800 CST2024-04-05 08:59:08 +0800 CST 2024-04-05 08:59:08 +0800 CST

Docker para Debian em uma VM VMware ESXi trava frequentemente

  • 772
Esta recompensa terminou . As respostas a esta pergunta são elegíveis para uma recompensa de +100 reputação. O período de carência da recompensa termina em 2 horas . Danny Beckett quer chamar mais atenção para esta questão:
Qualquer ajuda sobre como solucionar o que está causando picos/travamentos de CPU é muito apreciada, por favor! Obrigado

Há cerca de um mês instalei a versão mais recente do Docker no Debian 12 em uma máquina virtual VMware ESXi 8.0U2 (versão mais recente do vSphere).

Tentei fazer o VNC rodar, mas outras prioridades assumiram o controle, então por enquanto estou apenas acessando a VM via VMware Remote Console, usando o Gnome.

Possui a versão mais recente do VMware Tools instalada:

$ sudo apt-get install open-vm-tools open-vm-tools-desktop
open-vm-tools is already the newest version (2:12.2.0-1+deb12u2).
open-vm-tools-desktop is already the newest version (2:12.2.0-1+deb12u2).

Existe apenas um único contêiner em execução ao mesmo tempo. Eu faço regularmente docker image prune -fedocker system prune

Sempre que a VM está rodando "por conta própria" (sem que eu esteja conectado a ela via Remote Console no Gnome), ela funciona como um campeão e nunca cai.

Sempre que estou acessando a VM e fazendo alguma coisa, ela trava aleatoriamente e minha "correção" é reinicializar a VM. Tentar acessar o servidor nginx em execução no contêiner de outra máquina enquanto ele está travado resulta no retorno de nosso proxy reverso Error 503 Service Unavailable - No server is available to handle this request.

Toda a VM host do Debian Docker trava totalmente quando faz isso e não me permite clicar/digitar e a tela congela. Não estou fazendo nada muito exigente. Normalmente estou apenas editando um arquivo nanono Terminal ou algo assim.

Às vezes, não estou fazendo nada na VM, simplesmente estou conectado a ela por meio do VMware Remote Console - e ela ficará inativa. Ele faz isso em intervalos aleatórios, mas geralmente recebo cerca de uma ou duas horas antes de travar, mas isso parece mudar aleatoriamente, às vezes recebo algumas horas - ultimamente estou tendo menos tempo antes de travar.

Se eu esperar e não reiniciar a VM, o Console Remoto eventualmente voltará à vida após 5 a 10 minutos, a tela descongelará e eu poderei fornecer informações novamente. O daemon Docker morre. Não estou usando o Docker Deskop. Ele está instalado, mas não está configurado para iniciar automaticamente na inicialização/login.

Às vezes, não há contêineres em execução quando ele trava. O contêiner que uso é um servidor web muito simples que só eu acesso.

Às vezes (mas nem sempre), mesmo emitir uma reinicialização para a VM a partir do VMware Remote Console enquanto a VM está suspensa não funcionará na primeira vez (mas geralmente funciona na segunda vez):

No vSphere, quando a VM está travada, [às vezes?] vejo a CPU sustentando 100% de uso! Reduzi os núcleos da CPU de 4 para 2, pois isso estava causando um consumo de CPU muito alto no servidor host VMware com um Xeon E5-1650V3 6c 12t. A VM possui 8 GB de RAM.

Não tenho problemas com nenhuma das minhas outras VMs não-Docker (Linux, FreeBSD e Windows).

Por onde começo a tentar solucionar isso, por favor?

Minha sensação é que isso está relacionado ao VMware Tools ou ao Gnome. Sempre que estou executando uma compilação do Dockerfile (mas às vezes também sem fazer nada), noto que esses processos geralmente consomem CPU muito alta:

  • qemu-system-x86_64
    • Este também possui altas leituras/gravações em disco, o que eu acho que é normal durante a construção
    • Passar o mouse sobre o processo no System Monitor mostra que ele está relacionado ao Docker:
  • gnome-shell
  • docker-scout
  • com.docker.backend

Freqüentemente, a compilação será concluída com êxito, mas esses processos ainda permanecerão usando CPU alta por um tempo depois - às vezes causando uma falha (quando nada mais estiver sendo compilado).

Não sou adverso em tentar algo em uma instalação totalmente nova do Debian, mas não estou convencido de que isso ajudará se eu não mudar mais nada em minha configuração.

debian
  • 1 1 respostas
  • 253 Views

1 respostas

  • Voted
  1. Best Answer
    Danny Beckett
    2024-04-23T04:40:33+08:002024-04-23T04:40:33+08:00

    OP aqui.

    Nossa configuração é: caixa física roda ESXi > tem uma VM para Debian/Docker > tem um contêiner para nginx.

    Originalmente, entendi mal o comentário de @GeraldSchneider - pensei que ele pretendia desinstalar o Gnome Desktop (talvez ele também), mas na verdade desinstalar o Docker Desktop faz todo o sentido agora, em retrospectiva.

    Agradecemos aos comentários de @AB por apontar que:

    • Existem duas opções de instalação distintas: Docker Desktop + Docker Engine
    • Ao contrário do Docker Engine, o Docker Desktop é executado dentro de uma VM via QEMU dentro da VM Debian, causando virtualização aninhada - o que faz com que a VM host trave com frequência!

    Abandonei a instalação original e reinstalei o Debian do zero, seguindo estes guias:

    • Docker Docs > Instale o Docker Engine no Debian
    • Docker Docs > Pós-instalação do Linux
      • Especificamente, configurando o driver de registro padrão

    Também mudei para o KDE, agora que as coisas relacionadas ao Gnome não são necessárias para o Docker Desktop. Só o tempo dirá, mas parece ser muito mais ágil nos tempos de resposta e sem travamentos (ainda)!! 🥳

    Veja também (mas NÃO siga os guias):

    • Docker Docs > Instalar Docker Desktop no Linux - que afirma em vários lugares:

      Docker Desktop no Linux executa uma máquina virtual (VM)

    • Docker Docs > Perguntas frequentes sobre Docker Desktop para Linux > Por que o Docker Desktop para Linux executa uma VM?
    • Docker Docs > Instale o Docker Desktop no Debian
    • 1

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve