O que fazer se ocorrer ocasionalmente uma suspensão de I/O quando discos SCSI EVS forem usados?
Sintoma
Quando discos SCSI EVS são usados e contêineres são criados e apagados em um nó CentOS, os discos são frequentemente montados e desmontados. A taxa de leitura/gravação do disco do sistema pode aumentar instantaneamente. Como resultado, o sistema é suspenso, afetando a execução normal do nó.
Quando esse problema ocorre, as seguintes informações são exibidas no log de dmesg:
Attached SCSI disk task jdb2/xxx blocked for more than 120 seconds.
Exemplo:
Possível causa
Depois que um dispositivo PCI é adicionado ao BUS 0, o kernel do sistema operacional Linux passará por todas as pontes PCI montadas no BUS 0 por várias vezes, e essas pontes PCI não podem funcionar corretamente durante esse período. Durante esse período, se a ponte PCI usada pelo dispositivo for atualizada, devido a um defeito no kernel, o dispositivo considerará que a ponte PCI é anormal e o dispositivo entrará em um modo de falha e não poderá funcionar normalmente. Se o front-end estiver gravando dados no espaço de configuração PCI para o back-end processar I/Os de disco, a operação de gravação poderá ser excluída. Como resultado, o back-end não pode receber notificações para processar novas solicitações no anel de I/O. Por fim, ocorre a suspensão de I/O de front-end.
Esse problema é causado por um defeito no kernel do Linux. Para obter detalhes, consulte os defeitos nas distribuições de Linux.
Impacto
Os kernels de CentOS Linux de versões anteriores a 3.10.0-1127.el7 são afetados.
Solução
Atualize o kernel para uma versão posterior redefinindo o nó. Para obter detalhes, consulte Redefinição de um nó.