我有一个网络服务器,其内容位于 HP MSA2040 存储器(总存储空间 10 TB)中。
我不断收到如下错误
Jul 31 19:06:24 xxxxxxxx*** kernel: blk_update_request: I/O error, dev sda, sector 7094923416
Jul 31 19:06:24 xxxxxxxx*** kernel: buffer_io_error: 1110 callbacks suppressed
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865171, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865172, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865173, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865174, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865175, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865176, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865177, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865178, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865179, lost async page write
Jul 31 19:06:24 xxxxxxxx*** kernel: Buffer I/O error on dev sda, logical block 886865180, lost async page write
我尝试在 /dev/sda(我的 MSA2040 存储)上运行 xfs_repair,这是我得到的报告
Phase 1 - find and verify superblock...
Phase 2 - using internal log
- zero log...
- scan filesystem freespace and inode maps...
- found root inode chunk
Phase 3 - for each AG...
- scan (but don't clear) agi unlinked lists...
- process known inodes and perform inode discovery...
- agno = 0
- agno = 1
- agno = 2
- agno = 3
- agno = 4
- agno = 5
- agno = 6
- agno = 7
- agno = 8
- agno = 9
- process newly discovered inodes...
Phase 4 - check for duplicate blocks...
- setting up duplicate extent list...
- check for inodes claiming duplicate blocks...
- agno = 0
- agno = 1
- agno = 2
- agno = 3
- agno = 4
- agno = 5
- agno = 6
- agno = 7
- agno = 8
- agno = 9
No modify flag set, skipping phase 5
Phase 6 - check inode connectivity...
- traversing filesystem ...
- traversal finished ...
- moving disconnected inodes to lost+found ...
Phase 7 - verify link counts...
我甚至尝试运行,xfs_repaif -L
我可以访问我的数据,但过了一段时间就卡住了。我还检查了 MSA 的界面,一切似乎都很顺利。
有什么方法可以解决这个问题吗?
提前致谢。
编辑* 这也是 smartctl 报告
=== START OF INFORMATION SECTION ===
Vendor: HP
Product: MSA 2040 SAN
Revision: G210
User Capacity: 10,239,998,951,424 bytes [10.2 TB]
Logical block size: 512 bytes
LU is thin provisioned, LBPRZ=1
Rotation Rate: 15000 rpm
Logical Unit id: 0x600xxxxxxxxxxxxxxxef5701000000
Serial number: 00c0ff27xxxxxxxxxxxx701000000
Device type: disk
Transport protocol: Fibre channel (FCP-2)
Local Time is: Mon Jul 31 19:22:30 2017 +03
SMART support is: Available - device has SMART capability.
SMART support is: Disabled
Temperature Warning: Disabled or Not Supported
=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK
Elements in grown defect list: 0
Error Counter logging not supported
Device does not support Self Test logging
编辑2* 请求的输出
[root@xxxxxxxx*** thumbs]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 9.3T 0 disk /msa10tb
sdb 8:16 0 1.8T 0 disk
├─sdb1 8:17 0 200M 0 part /boot/efi
├─sdb2 8:18 0 500M 0 part /boot
└─sdb3 8:19 0 1.8T 0 part
├─centos-root 253:0 0 50G 0 lvm /
├─centos-swap 253:1 0 7.8G 0 lvm [SWAP]
└─centos-home 253:2 0 1.8T 0 lvm /home
sr0 11:0 1 1024M 0 rom
[root@xxxxxxxx*** thumbs]# pvs
PV VG Fmt Attr PSize PFree
/dev/sdb3 centos lvm2 a-- 1.82t 64.00m
[root@xxxxxxxx*** thumbs]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 3 0 wz--n- 1.82t 64.00m
[root@xxxxxxxx*** thumbs]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- 1.76t
root centos -wi-ao---- 50.00g
swap centos -wi-ao---- 7.75g
[root@xxxxxxxx*** thumbs]#
编辑*3 - 当我检查 journalctl 时,现在我不断收到这些日志;
Jul 31 19:29:46 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1461891501:1461898801 (repaired)
Jul 31 19:29:48 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1461891501:1461898801 (repaired)
Jul 31 19:29:50 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1461891501:1461898801 (repaired)
Jul 31 19:29:54 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1461891501:1461898801 (repaired)
Jul 31 19:30:03 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1461891501:1461898801 (repaired)
Jul 31 19:30:25 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1462932481:1462952921 (repaired)
Jul 31 19:30:27 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1462932481:1462952921 (repaired)
Jul 31 19:30:29 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1462932481:1462952921 (repaired)
Jul 31 19:30:30 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:5e37:2374:63273/443 unexpectedly shrunk window 3861953537:3862015916 (repaired)
Jul 31 19:30:31 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:5e37:2374:63273/443 unexpectedly shrunk window 3861953537:3862015916 (repaired)
Jul 31 19:30:32 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:5e37:2374:63273/443 unexpectedly shrunk window 3861953537:3862015916 (repaired)
Jul 31 19:30:33 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:1885:f5b0:30313/443 unexpectedly shrunk window 1462932481:1462952921 (repaired)
Jul 31 19:30:34 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:5e37:2374:63273/443 unexpectedly shrunk window 3861953537:3862015916 (repaired)
Jul 31 19:30:38 xxxxxxxx*** kernel: Peer 0000:0000:0000:0000:0000:ffff:5e37:2374:63273/443 unexpectedly shrunk window 3861953537:3862015916 (repaired)
答案1
消息为
Buffer I/O error on dev sda, logical block 886865171, lost async page write
意味着异步写入(即脏页写回或缓冲写入)失败。您发现这些错误是dmesg
因为/var/log/message
失败的异步写入本质上无法通知最初提交写入的原始应用程序。
它们通常是由于介质中某些块无法写入而导致的。这可能是由于以下原因造成的:
- 磁盘盘片/单元损坏
- 连接问题(例如:电缆损坏、iSCSI 目标“丢失”等)
- 父池空间已耗尽的精简配置块设备
您直接使用sda
顶部的文件系统,没有头节点端 LVM,因此我们可以排除坏的设备映射器表作为问题源(至少在头节点上)。
如果您的存储节点的物理属性正常(即:没有故障磁盘等),我强烈建议检查任何精简配置的卷及其父池。