硬盘/Raid1 问题

硬盘/Raid1 问题

我的根服务器的硬盘出现了问题。

它在软件 Raid1 中使用 2 个硬盘运行。

在通过 O_DIRECT 和 innodb_flush_log_at_trx_commit=0 写入的大型 MySQL DB 出现性能问题后,我更换了其中一个磁盘 (sda),因为 SMART 值显示错误率很高。

一周前,再次出现性能问题,系统日志中出现以下消息:

Sep 25 15:09:41 server02 kernel: ata1.00: exception Emask 0x0 SAct 0x2 SErr 0x0 action 0x6 frozen
Sep 25 15:09:41 server02 kernel: ata1.00: failed command: READ FPDMA QUEUED
Sep 25 15:09:41 server02 kernel: ata1.00: cmd 60/08:08:58:ed:1e/00:00:79:00:00/40 tag 1 ncq 4096 in
Sep 25 15:09:41 server02 kernel:         res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
Sep 25 15:09:41 server02 kernel: ata1.00: status: { DRDY }
Sep 25 15:09:41 server02 kernel: ata1: hard resetting link
Sep 25 15:09:41 server02 kernel: ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
Sep 25 15:09:41 server02 kernel: ata1.00: configured for UDMA/133
Sep 25 15:09:41 server02 kernel: ata1.00: device reported invalid CHS sector 0
Sep 25 15:09:41 server02 kernel: ata1: EH complete 

/dev/sdb3 被 mdadm 自动停用。然后我更换了第二块硬盘 (sdb),并更换了电缆和端口。

现在,我再次遇到同样的错误:

Oct  2 21:44:46 server02 kernel: ata2.00: exception Emask 0x0 SAct 0x6 SErr 0x0 action 0x6 frozen
Oct  2 21:44:46 server02 kernel: ata2.00: failed command: READ FPDMA QUEUED
Oct  2 21:44:46 server02 kernel: ata2.00: cmd 60/18:08:10:08:24/00:00:79:00:00/40 tag 1 ncq 12288 in
Oct  2 21:44:46 server02 kernel:         res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
Oct  2 21:44:46 server02 kernel: ata2.00: status: { DRDY }
Oct  2 21:44:46 server02 kernel: ata2.00: failed command: READ FPDMA QUEUED
Oct  2 21:44:46 server02 kernel: ata2.00: cmd 60/10:10:30:08:24/00:00:79:00:00/40 tag 2 ncq 8192 in
Oct  2 21:44:46 server02 kernel:         res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
Oct  2 21:44:46 server02 kernel: ata2.00: status: { DRDY }
Oct  2 21:44:46 server02 kernel: ata2: hard resetting link
Oct  2 21:44:46 server02 kernel: ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
Oct  2 21:44:46 server02 kernel: ata2.00: configured for UDMA/133
Oct  2 21:44:46 server02 kernel: ata2.00: device reported invalid CHS sector 0
Oct  2 21:44:46 server02 kernel: ata2.00: device reported invalid CHS sector 0
Oct  2 21:44:46 server02 kernel: ata2: EH complete

/dev/sdb3 再次被停用。

有人知道我的服务器可能出了什么问题吗?

谢谢!Christian

答案1

更换两块硬盘后,您再次收到错误,表明磁盘存在硬件问题。这可能意味着您只是运气不好,或者存在其他问题,表现为磁盘故障。这可能是:

  1. 主板问题——可能是 SATA 控制器有故障。
  2. 电缆问题——松动、磨损、弯曲等。
  3. 环境——温度、振动、湿度。
  4. SATA 芯片驱动程序存在问题。
  5. 交流电不稳定。

你能在测试/开发机器上重现这个问题吗?是否有什么东西触发了故障(备份、负载峰值、特定查询)?问题是间歇性的(你记录了几个错误,然后服务器运行正常),还是持续性的(一旦开始出现,就会一直出现)?

就我个人而言,我不会信任这台机器,我会将数据迁移到其他服务器,同时寻找导致此错误的原因。短时间内出现 3 个磁盘故障是可能的(有时人们会中彩票),但这种可能性不大。

相关内容