Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ Cloud Container Engine/ Perguntas frequentes/ / Kernel do nó/ Quando as aplicações são repetidamente criadas e excluídas em um nó de CentOS com uma versão anterior do kernel, o vazamento do cgroup kmem ocorre ocasionalmente
Atualizado em 2025-05-23 GMT+08:00

Quando as aplicações são repetidamente criadas e excluídas em um nó de CentOS com uma versão anterior do kernel, o vazamento do cgroup kmem ocorre ocasionalmente

Sintoma

Em cenários em que a versão do kernel dos nós do CentOS 7.6 é anterior a 3.10.0-1062.12.1.el7.x86_64 (principalmente em clusters da versão 1.17.9), o vazamento de cgroup kmem ocorre quando os aplicativos são criados repetidamente. Como resultado, a memória do nó está livre, mas novos nós não podem ser criados, a mensagem de erro "Cannot allocate memory" é exibida.

Possível causa

Quando uma aplicação é criada repetidamente, um cgroup de memória temporária é criado. No entanto, quando o aplicativo é excluído, o kernel exclui o cgroup (o diretório cgroup correspondente em /sys/fs/cgroup/memory foi excluído), mas o cssid não é liberado no kernel, como resultado, o kernel considera que o número real de Cgroups é inconsistente. Quando o número de Cgroups residuais atinge o limite superior do nó, os pods não podem ser criados no nó.

Solução

  • Use o parâmetro cgroup.memory=nokmem globalmente no kernel para desabilitar o kmem para evitar vazamentos.
  • Os clusters da v1.17 não são mais mantidos. Para resolver esse problema, atualize o cluster para v1.19 ou posterior e redefina o sistema operacional do nó para a versão mais recente. Verifique se a versão do kernel é posterior a 3.10.0-1062.12.1.el7.x86_64.