我有一个 LSI Megaraid 9271-8i 使用 6x samsung 850 pro SSD,我无法修改它在任何虚拟磁盘的属性中变灰的“磁盘缓存策略”。
这是为什么,兼容性矩阵中列出了 850 专业版?
这是否对性能有重大影响(我错过了)?
我目前有一个 RAID 10(6x 2TB)在华硕 H170M-PLUS(英特尔 H170 芯片组)上的 Ubuntu 16.04 上运行在英特尔 IMSM 容器(“fakeraid”,固件 RAID)中。
我正在使用 MOBO 上的所有 6 个 SATA 端口,并想添加一个 PCIe JBOD 控制器并将其上的磁盘添加到 IMSM 容器中。
这是一种可能性吗?英特尔快速存储固件是否会添加来自不同控制器的磁盘?
我想在 Linux KVM 主机上设置带有 3x1TB 驱动器的 RAID 5。RAID 将用作 VM 磁盘的 LVM 精简存储。
已经有很多关于硬件突袭与软件 [1] 的讨论。根据这个讨论,由于更好的写入性能,不应使用具有缓存和 BBU 的硬件 RAID 来进行虚拟机磁盘存储的软件 RAID。
我想知道的是,在读/写性能和数据安全方面,以下设置是否可以与具有缓存和 BBU(例如 HP P410 512 MB + BBU)的硬件突袭相媲美:
将我的 postgres 主服务器同步到从服务器导致从服务器 (journalctl) 上出现写入 I/O 错误:
Aug 18 03:09:23 db01a kernel: EXT4-fs warning (device dm-3):
**ext4_end_bio:330: I/O error -5 writing to inode 86772956 (offset 905969664 size 8388608 starting block 368694016)**
Aug 18 03:09:23 db01a kernel: buffer_io_error: 326 callbacks suppressed
Run Code Online (Sandbox Code Playgroud)
....
读取受影响的文件当然也不起作用:
cat base/96628250/96737718 >> /dev/null
cat: 96737718: Input/output error
Run Code Online (Sandbox Code Playgroud)
linux 内核(ubuntu 16.04 4.4.0-87-generic)不应该自动从阵列中踢出受影响的驱动器吗?
由于它是 Raid6(LVM 和 ext4 在上面),我已经尝试用坏块覆盖每个 SSD 几次以引发错误(为此从raid 中删除一个又一个磁盘),不幸的是没有成功。
smartctl 说一个磁盘之前有错误(其他磁盘是干净的):
smartctl -a /dev/sda
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0x0033 …Run Code Online (Sandbox Code Playgroud) 我有以下设置:
带有两个 LSI MegaRAID SAS 9380-8e 控制器的单个服务器,它们都连接到两个 60 托架磁盘架,同时大致遵循 Edmund White 的设计(参见https://github.com/ewwhite/zfs-ha/wiki)。目标是复制确切的设置,但它目前处于迁移中期。
在为第一个架子布线后,两个控制器都看到了所有 60 个磁盘,并且多路径设置并顺利运行。添加第二个磁盘架时,60 个磁盘上仍有一些旧的 RAID 配置,这两个控制器都尽职尽责地报告。使用第一个控制器,我从磁盘中删除了配置并将它们设置为 JBOD。所有 60 个磁盘现在对操作系统可见并且可以注册到多路径但只报告一个路径(通过控制器 1),第二个控制器仍然将所有 60 个磁盘报告为外部(UGood F)并且似乎没有办法强制让控制器重新扫描设备或忘记这个架子的当前配置:
# /opt/MegaRAID/storcli/storcli64 /c1 /e71 /sall show | head -n20
Controller = 1
Status = Success
Description = Show Drive Information Succeeded.
Drive Information :
=================
-----------------------------------------------------------------------
EID:Slt DID State DG Size Intf Med SED PI SeSz Model Sp
-----------------------------------------------------------------------
71:0 74 UGood F 3.637 TB SAS HDD N N 512B HUS724040ALS640 D
71:1 …Run Code Online (Sandbox Code Playgroud) 我的自定义 NAS 配置为在闲置 20 分钟后降低驱动器转速。
刚才我检查/proc/mdstat并注意到一个驱动器被标记为失败,但是 SMART 显示驱动器运行状况非常好。因此我怀疑 md-raid 认为启动时间太长并标记驱动器失败。
重新添加和重建似乎也不是问题。
dmesg 显示了以下有趣的行,我在谷歌上找不到太多。
[97144.228682] sd 0:0:2:0: attempting task abort! scmd(ffff97f7b14ce948)
[97144.228688] sd 0:0:2:0: [sdc] tag#0 CDB: opcode=0x12 12 00 00 00 24 00
[97144.228692] scsi target0:0:2: handle(0x000c), sas_address(0x5001438020b9ee12), phy(18)
[97144.228694] scsi target0:0:2: enclosure_logical_id(0x5001438020b9ee25), slot(49)
[97148.184253] sd 0:0:2:0: task abort: SUCCESS scmd(ffff97f7b14ce948)
[97148.235864] mpt2sas_cm0: log_info(0x31110101): originator(PL), code(0x11), sub_code(0x0101)
--- last message repeated a couple dozen times ---
[97148.490304] sd 0:0:2:0: [sdc] tag#16 UNKNOWN(0x2003) Result: hostbyte=0x0b driverbyte=0x00
[97148.490308] mpt2sas_cm0: log_info(0x31110101): …Run Code Online (Sandbox Code Playgroud) 我最近向Linux 服务器添加了一个StarTech 4 端口 PCIe SATA 卡。该卡通过 SFF-8087 连接到 Norco 4224 背板和 4 个新硬盘驱动器,我想将它们配置为新的软件 RAID。
主板(技嘉 GA-990FXA-UD5)已经有 8 个使用类似芯片组(2 个 Marvell 88SE9172 芯片)的板载 SATA 端口,它们运行良好,目前配置为 2 个独立的软件 RAID(使用mdadm)。
但是,系统没有检测到新的硬盘驱动器,我也无法ctrl+M按照手册的建议进入控制器卡的BIOS 。有没有人遇到过类似的问题,或者对如何排除故障有任何建议?提前致谢!
输出lspci(似乎检测到SATA卡,从末尾开始的第5个条目):
00:00.0 Host bridge [0600]: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI bridge (external gfx0 port B) [1002:5a14] (rev 02)
Subsystem: Gigabyte Technology Co., Ltd Device [1458:5000]
00:02.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD/ATI] RD890 PCI to PCI …Run Code Online (Sandbox Code Playgroud) 背景:
我们需要随时访问 30TB 的音频数据,尽管只有其中的一小部分需要播放,即使是多年旧数据也需要立即播放。数据驻留在多个阵列的 SAN 中,并对新数据执行夜间备份。一些数据也会每晚删除。由于两者都是写入事件,因此称其为每晚 20GB。总体趋势是写入的新数据多于删除的旧数据。
每周巡逻读取 (PR) 和一致性检查 (CC) 占阵列上的大部分磁盘活动,除了它们只是旋转直到它们失败。
问题:
我想弄清楚是否应该将基于磁盘的 SAN 替换为使用 NVMe 的 SAN,要考虑什么 RAID 级别,以及降低 VNAND 技术的 PR 或 CC 活动频率是否有意义?
根据我的理解,杀死 VNAND 的是写入,即使考虑到一致性检查,我们在大多数驱动器上写入的数据也将少于每日最小值。
我几乎没有在 NVMe 甚至 SSD 上找到 RAID 5/6 的测试。我主要追求长期可用性。
研究:
与此主题相关的大多数其他问题早于 NVMe 技术,并且已有 6-7 年的历史。这是一个例外,但也没有真正涵盖这种情况。
了解 NVMe 存储和硬件要求
我有两个硬盘分区,我使用 将它们组合成一个 RAID1 mdadm,并在生成的设备上创建了一个 ext4 文件系统。
当我mdadm --zero-superblock将这两个分区,并重新创建 RAID 时,原始的 ext4 元数据就被神奇地保留了下来。
这是为什么?
我怎么知道mdadm给我一个真正新的、未初始化的 MD?
我如何创建 RAID1 和文件系统:
ls /dev/sdc2 # partition 1
ls /dev/sdd2 # partition 2
mdadm --create --run --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sdc2 /dev/sdd2
mkfs.ext4 -L mylabel /dev/md1
Run Code Online (Sandbox Code Playgroud)
擦除 RAID1:
mdadm --stop /dev/md1
mdadm --zero-superblock /dev/sdc2
mdadm --zero-superblock /dev/sdd2
Run Code Online (Sandbox Code Playgroud)
重新创建 RAID1:
mdadm --create --run --verbose /dev/md1 --level=1 --raid-devices=2 /dev/sdc2 /dev/sdd2
Run Code Online (Sandbox Code Playgroud)
显示设备信息(注意wipefs没有-a标志不会擦除任何东西,只是显示信息):
# wipefs /dev/md1
offset type
---------------------------------------------------------------- …Run Code Online (Sandbox Code Playgroud)