Transbordamentos de escuta de servidor web rastreados para um problema de desempenho do kernel do Linux

2025-02-14

A atualização de servidores web do CentOS para o Ubuntu levou a erros de transbordamento de escuta. A investigação revelou um pico de CPU do sistema em hosts Ubuntu recém-inicializados dentro de minutos após a inicialização, causando processamento lento de solicitações web e subsequentes transbordamentos de escuta. O culpado foi a troca de cgroup de inode no kernel do Linux; após escrever muitos arquivos, o kernel gastou um tempo significativo movendo inodes entre cgroups. A desativação dos controladores io ou memory no systemd resolveu o problema. O CentOS não foi afetado, pois usa cgroups v1, ao contrário dos cgroups v2 do Ubuntu. Um script de reprodução mínimo foi criado para demonstrar o problema.

Desenvolvimento Problema de Desempenho