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/ / Execução de nó/ Como corrigir um contêiner ou nó anormal devido a nenhum espaço em disco de thin pool?
Atualizado em 2025-05-23 GMT+08:00

Como corrigir um contêiner ou nó anormal devido a nenhum espaço em disco de thin pool?

Descrição do problema

Quando o espaço em disco de um thin pool em um nó está prestes a ser usado, as seguintes exceções ocorrem ocasionalmente:

Falha na criação de arquivos ou diretórios no contêiner, o sistema de arquivos no contêiner é somente leitura, o nó está contaminado com pressão de disco ou o nó não está disponível.

Você pode executar o comando docker info no nó para exibir o espaço usado e restante do thin pool para localizar a falha. A figura a seguir é um exemplo.

Possível causa

Quando o Docker device mapper é usado, embora você possa configurar o parâmetro basesize para limitar o tamanho do diretório /home de um único contêiner (para 10 GB por padrão), todos os contêineres no nó ainda compartilham o thin pool do nó para armazenamento. Eles não estão completamente isolados. Quando a soma do espaço do thin pool usado por determinados contêineres atinge o limite superior, outros contêineres não podem ser executados corretamente.

Além disso, depois que um arquivo é excluído no diretório /home do contêiner, o espaço do thin pool ocupado pelo arquivo não é liberado imediatamente. Portanto, mesmo que o basesize seja definido como 10 GB, o espaço de thin pool ocupado pelos arquivos continua aumentando até 10 GB quando os arquivos são criados no contêiner. O espaço liberado após a exclusão do arquivo será reutilizado somente depois de um tempo. Se o número de contêineres de serviço no nó multiplicado pelo tamanho de base for maior do que o tamanho do espaço do thin pool do nó, existe a possibilidade de que o espaço do thin pool tenha sido usado.

Soluções

Quando o espaço do thin pool de um nó é usado, alguns serviços podem ser migrados para outros nós para recuperar rapidamente os serviços. Mas é aconselhável usar as seguintes soluções para resolver a causa raiz:

Solução 1:

Planeje adequadamente a distribuição de serviço e o espaço em disco do plano de dados para evitar o cenário em que o número de contêineres de serviço multiplicado pelo tamanho de base é maior que o tamanho do thin pool do nó. Para expandir o espaço do thinpool, consulte Expansão da capacidade de disco do nó.

Solução 2:

Crie e exclua arquivos em contêineres de serviço no armazenamento local (como emptyDir e hostPath) ou no diretório de armazenamento em nuvem montado no contêiner. Esses arquivos não ocupam o espaço do thin pool.

Solução 3:

Se o SO usar OverlayFS, os serviços poderão ser implementados nesses nós para evitar o problema de que o espaço em disco ocupado por arquivos criados ou excluídos no contêiner não seja liberado imediatamente.