Nós vemos esse comportamento sob condições de alta carga ou, mais surpreendentemente, grandes condições de gravação de arquivos. Você já descartou a carga alta. Deixe-me explicar o segundo cenário.
Este é um cenário real e aconteceu recentemente há alguns dias:
-
Suponha grandes quantidades de RAM, em relação à velocidade de gravação em disco (32 GB de RAM, 100 MB / s)
-
Um aplicativo gera uma gravação rápida de cerca de 20 GB, em que os dados são de uma origem em cache ou gerados, de modo que a gravação é armazenada em buffer em 20 GB de RAM e gravada em segundo plano.
-
Um "fsync" no final desta gravação de 20 GB. O aplicativo bloqueia e aguarda 200 segundos para que a gravação seja concluída.
Agora, para a parte complicada:
-
Durante esses 200 segundos de gravação do fsync, você tenta efetuar login no console SSH ou até mesmo (virtual).
-
O processo de login tenta registrar entradas do fsync sobre seu login.
-
Este fsync está parado pelo fsync anterior, aguardando até 200 segundos antes de ser concluído.
-
O processo de login expira com a mensagem que você vê.
O tempo todo a máquina é pingável. Além disso, coisas que não emitem "fsync" geralmente funcionam corretamente.
Por favor, note que isso acontece em nossos servidores CentOS 5, eu li que Theodore (Ted) Ts'o fez melhorias nos novos kernels para gerenciar melhor os fsyncs concorrentes não relacionados.