corrupção de arquivo na leitura/gravação do servidor 2.6.32-22 (acontece em muitos kernels)

corrupção de arquivo na leitura/gravação do servidor 2.6.32-22 (acontece em muitos kernels)

Estou tendo um problema em que, depois que o servidor estiver ativo por um período de tempo (~ semana/alguns dias), o servidor começará a ler dados corrompidos. Por exemplo, quando executo um sha1sum de um arquivo após uma nova inicialização, ele permanece o mesmo. Porém, depois de um tempo, começarei a obter segfaults e, a partir de então, sempre que ler esse arquivo, recebo um sha1sum diferente.

Verifiquei o SMART com testes longos e executei um memtest86+ estendido (12 passes)

Meu lspci é o seguinte:

00:00.0 Ponte de host: Microdispositivos avançados [AMD] Ponte de host RS780
00:01.0 Ponte PCI: Micro dispositivos avançados [AMD] Ponte RS780 PCI para PCI (int gfx)
00:06.0 Ponte PCI: Advanced Micro Devices [AMD] Ponte RS780 PCI para PCI (porta PCIE 2)
00:07.0 Ponte PCI: Advanced Micro Devices [AMD] Ponte RS780 PCI para PCI (porta PCIE 3)
00:11.0 Controlador SATA: Controlador SATA ATI Technologies Inc SB700/SB800 [modo AHCI]
00:12.0 Controlador USB: Controlador ATI Technologies Inc SB700/SB800 USB OHCI0
00:12.1 Controlador USB: Controlador ATI Technologies Inc SB700 USB OHCI1
00:12.2 Controlador USB: Controlador USB EHCI ATI Technologies Inc SB700/SB800
00:13.0 Controlador USB: Controlador ATI Technologies Inc SB700/SB800 USB OHCI0
00:13.1 Controlador USB: Controlador ATI Technologies Inc SB700 USB OHCI1
00:13.2 Controlador USB: Controlador USB EHCI ATI Technologies Inc SB700/SB800
00: 14.0 SMBus: Controlador ATI Technologies Inc SBx00 SMBus (rev 3c)
00:14.1 Interface IDE: Controlador IDE SB700/SB800 da ATI Technologies Inc
00:14.3 Ponte ISA: controlador host ATI Technologies Inc SB700/SB800 LPC
00:14.4 Ponte PCI: ATI Technologies Inc SBx00 PCI para ponte PCI
00:14.5 Controlador USB: Controlador USB OHCI2 da ATI Technologies Inc SB700/SB800
00:18.0 Ponte host: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] Configuração HyperTransport
00:18.1 Ponte host: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] Mapa de endereços
00:18.2 Ponte host: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] Controlador DRAM
00:18.3 Ponte host: Microdispositivos avançados [AMD] K10 [Opteron, Athlon64, Sempron] Controles diversos
00:18.4 Ponte host: Microdispositivos avançados [AMD] K10 [Opteron, Athlon64, Sempron] Controle de link
01: 05.0 Controlador compatível com VGA: ATI Technologies Inc Radeon HD 3300 Graphics
01: 05.1 Dispositivo de áudio: controlador ATI Technologies Inc RS780 Azalia
02:00.0 Controlador Ethernet: Controlador Ethernet PCI-E Atheros Communications Atheros AR8121/AR8113/AR8114 (rev b0)
03:00.0 FireWire (IEEE 1394): VIA Technologies, Inc. Dispositivo 3403

Eu realmente poderia usar alguma ajuda sobre isso, você tem alguma ideia do que poderia causar isso? É realmente frustrante para mim, pois parece ser acionado de forma totalmente aleatória e não desaparece até que eu reinicie. Também uso KVM para virtualização, bem como MD para RAID de software neste servidor e o processador é um Phenom II X4 965. Não acredito que seja o ataque de software, pois isso afeta arquivos também hospedados em partições não-raid, então Não sei.

Atualizar21 de junho de 10 Ok, acabei de substituir a placa-mãe. Ainda tenho o mesmo erro. Nenhum erro de CPU que eu possa encontrar; todos os discos reportam bem com o teste inteligente. Alguém tem alguma ideia do que possa ser isso? Estou puxando meu cabelo aqui.

Atualizar22 de junho de 10 Verifiquei os logs e tentei outro sistema de arquivos, ainda a mesma coisa. A propósito, tudo isso também está na VM host.

Responder1

Meus instintos me dizem que este é um problema de hardware, possivelmente relacionado ao calor (como aparece após algum tempo de execução). Provavelmente você tem um problema com a ponte sul ou hardware relacionado.

Considere executar alguns testes extensivos de transação na ponte sul ou simplesmente substituir a placa-mãe.

O fato de seu sistema operacional permanecer estável, mas você ter erros de IO aleatórios, normalmente exclui a CPU/memória, pois os erros tendem a fazer com que o sistema operacional trave e queime junto com o outro software. Mas a maior parte do Kernel é lida do disco na inicialização e nunca trocada, então um sistema Linux pode ser surpreendentemente estável mesmo que não consiga ler corretamente o disco.

Responder2

A corrupção acontece no próprio host ou nas máquinas convidadas? Há um bug conhecido no qemu-kvm que leva à corrupção de dados em grandes discos virtuais (consultehttps://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/574665por exemplo)

Responder3

Concordo com @pehrs que vale a pena examinar o aspecto térmico disso, pois o problema aumenta com o tempo. Que tipo de servidor você tem? A maioria das montagens em rack hoje em dia vem com um bom número de sensores que podem ser usados ​​para monitorar a integridade do hardware. Confirasensores lm. Se for um servidor Dell, o DellOMSApacote pode ser útil. Tenho certeza de que outros grandes players também têm seus próprios pacotes proprietários.

Eu também poderia lançar algumas outras idéias - elas realmente não correspondem ao cenário que você descreveu, pois o problema só aparece depois de um tempo, mas não pode prejudicar.

No que diz respeito aos logs de erros, você está recebendo alguma mensagem de erro nos logs do disco ou do subsistema RAID? Ou no dmesg? O LinuxSoftware-RAID HOTWOtem algumas informações sobre os tipos de erros que você estaria procurando. Algo como um cabo ruim pode não aparecer nos autotestes SMART da unidade, mas você definitivamente verá algumas mensagens de erro registradas.

Qual é a configuração do RAID? Alguma coisa em /proc/mdstat? Se (por exemplo) o servidor tivesse um RAID 5 de 3 unidades e uma das unidades estivesse com defeito, isso poderia causar problemas.

Além disso, verifique a revisão do firmware da sua placa-mãe/placa SCSI/etc e veja se ela está atualizada ou se há algum bug relacionado à E/S do disco que foi corrigido.

informação relacionada