서버가 일정 기간(~주/몇 일) 동안 가동된 후 서버가 손상된 데이터를 읽기 시작하는 문제가 있습니다. 예를 들어 새로 부팅한 후 파일의 sha1sum을 실행하면 동일하게 유지됩니다. 그러나 잠시 후 segfault가 발생하기 시작하고 그때부터 이 파일을 읽을 때마다 다른 sha1sum이 표시됩니다.
긴 테스트로 SMART를 확인했고 확장된 memtest86+(12패스)를 실행했습니다.
내 lspci는 다음과 같습니다.
00:00.0 호스트 브리지: Advanced Micro Devices [AMD] RS780 호스트 브리지 00:01.0 PCI 브리지: Advanced Micro Devices [AMD] RS780 PCI-PCI 브리지(int gfx) 00:06.0 PCI 브리지: Advanced Micro Devices [AMD] RS780 PCI-PCI 브리지(PCIE 포트 2) 00:07.0 PCI 브리지: Advanced Micro Devices [AMD] RS780 PCI-PCI 브리지(PCIE 포트 3) 00:11.0 SATA 컨트롤러: ATI Technologies Inc SB700/SB800 SATA 컨트롤러 [AHCI 모드] 00:12.0 USB 컨트롤러: ATI Technologies Inc SB700/SB800 USB OHCI0 컨트롤러 00:12.1 USB 컨트롤러: ATI Technologies Inc SB700 USB OHCI1 컨트롤러 00:12.2 USB 컨트롤러: ATI Technologies Inc SB700/SB800 USB EHCI 컨트롤러 00:13.0 USB 컨트롤러: ATI Technologies Inc SB700/SB800 USB OHCI0 컨트롤러 00:13.1 USB 컨트롤러: ATI Technologies Inc SB700 USB OHCI1 컨트롤러 00:13.2 USB 컨트롤러: ATI Technologies Inc SB700/SB800 USB EHCI 컨트롤러 00:14.0 SMBus: ATI Technologies Inc SBx00 SMBus 컨트롤러(rev 3c) 00:14.1 IDE 인터페이스: ATI Technologies Inc SB700/SB800 IDE 컨트롤러 00:14.3 ISA 브리지: ATI Technologies Inc SB700/SB800 LPC 호스트 컨트롤러 00:14.4 PCI 브리지: ATI Technologies Inc SBx00 PCI-PCI 브리지 00:14.5 USB 컨트롤러: ATI Technologies Inc SB700/SB800 USB OHCI2 컨트롤러 00:18.0 호스트 브리지: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] HyperTransport 구성 00:18.1 호스트 브리지: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] 주소 맵 00:18.2 호스트 브리지: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] DRAM 컨트롤러 00:18.3 호스트 브리지: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] 기타 제어 00:18.4 호스트 브리지: Advanced Micro Devices [AMD] K10 [Opteron, Athlon64, Sempron] 링크 제어 01:05.0 VGA 호환 컨트롤러: ATI Technologies Inc Radeon HD 3300 그래픽 01:05.1 오디오 장치: ATI Technologies Inc RS780 Azalia 컨트롤러 02:00.0 이더넷 컨트롤러: Atheros Communications Atheros AR8121/AR8113/AR8114 PCI-E 이더넷 컨트롤러(rev b0) 03:00.0 FireWire(IEEE 1394): VIA Technologies, Inc. 장치 3403
이 문제에 대해 도움을 좀 받을 수 있을 것 같은데, 이 문제의 원인이 무엇인지 아시나요? 완전히 무작위로 실행되고 재부팅할 때까지 사라지지 않는 것 같아서 정말 실망스럽습니다. 나는 또한 이 서버에서 가상화를 위해 KVM을 사용하고 소프트웨어 RAID를 위해 MD를 사용하고 있으며 프로세서는 Phenom II X4 965입니다. 그러나 이것이 비-RAID 파티션에서 호스팅되는 파일에도 영향을 미치기 때문에 소프트웨어 RAID라고 생각하지 않습니다. 모르겠습니다.
업데이트6월 10일 21일 알겠습니다. 방금 마더보드를 교체했습니다. 여전히 같은 오류가 발생합니다. 찾을 수 있는 CPU 오류는 없습니다. 스마트 테스트를 통해 디스크가 모두 정상적으로 보고됩니다. 누구든지 이것이 무엇인지 아는 사람이 있습니까? 여기에서 머리카락을 뽑고 있어요.
업데이트2010년 6월 22일 그래서 로그를 확인하고 다른 파일 시스템을 시도해 보았지만 여전히 마찬가지였습니다. 이것은 모두 호스트 VM에도 있습니다.
답변1
내 직감으로는 이것이 하드웨어 문제일 가능성이 있고 열과 관련이 있을 수 있음을 알려줍니다(일부 런타임 이후에 나타남). 사우스브리지나 관련 하드웨어에 문제가 있을 가능성이 높습니다.
사우스브리지에서 광범위한 트랜잭션 테스트를 실행하거나 단순히 마더보드를 교체하는 것을 고려해보세요.
OS가 안정적으로 유지되지만 임의의 IO 오류가 발생하면 일반적으로 CPU/메모리가 제외됩니다. 이러한 오류로 인해 OS가 충돌하고 다른 소프트웨어와 함께 연소되는 경향이 있기 때문입니다. 그러나 대부분의 커널은 부팅 시 디스크에서 읽혀지며 교체되지 않습니다. 따라서 Linux 시스템은 디스크에서 제대로 읽을 수 없더라도 놀라울 정도로 안정적입니다.
답변2
호스트 자체에서 손상이 발생합니까, 아니면 게스트 시스템에서 발생합니까? qemu-kvm에는 대규모 가상 디스크의 데이터 손상을 초래하는 알려진 버그가 있습니다(참조:https://bugs.launchpad.net/ubuntu/+source/qemu-kvm/+bug/574665예를 들어)
답변3
문제는 시간이 지남에 따라 점점 커지기 때문에 열적 측면을 조사해 볼 가치가 있다는 @pehrs의 의견에 동의합니다. 어떤 종류의 서버를 보유하고 있나요? 요즘 대부분의 랙마운트에는 하드웨어 상태를 모니터링하는 데 사용할 수 있는 많은 센서가 함께 제공됩니다. 확인해 보세요lm-센서. Dell 서버인 경우 DellOMSA패키지가 도움이 될 수 있습니다. 나는 다른 대형 기업들도 그들만의 독점 패키지를 가지고 있다고 확신합니다.
몇 가지 다른 아이디어도 던지는 것이 나을 수도 있습니다. 이는 잠시 후에 나타나는 문제에 대해 설명하신 시나리오와 실제로 일치하지 않지만 해를 끼칠 수는 없습니다.
오류 로그와 관련하여 디스크 또는 RAID 하위 시스템의 로그에 오류 메시지가 표시됩니까? 아니면 dmesg로? 리눅스소프트웨어-RAID HOTWO찾고 있는 오류 종류에 대한 정보가 있습니다. 불량 케이블과 같은 것이 드라이브의 SMART 자체 테스트에 표시되지 않을 수 있지만 기록된 일부 오류 메시지는 확실히 볼 수 있습니다.
RAID 구성이란 무엇입니까? /proc/mdstat에 아무것도 없나요? 예를 들어 서버에 3개 드라이브 RAID 5가 있고 드라이브 중 하나가 불량한 경우 문제가 발생할 수 있습니다.
또한 마더보드/SCSI 카드 등의 펌웨어 개정판을 확인하고 최신 버전인지 또는 수정된 디스크 I/O 관련 버그가 있는지 확인하세요.