mdadm raid1セットアップで2つの3 TBドライブを使用したい(Debian Sequeezeを使用)。
ドライブは、従来の512バイトの代わりに4kハードウェアセクターを使用します。
一方でカーネルが報告するため、私は少し混乱しています:
$ cat /sys/block/sdb/queue/hw_sector_size
512
しかし、一方でfdisk
報告:
# fdisk -l /dev/sdb
Disk /dev/sdb: 3000.6 GB, 3000592982016 bytes
255 heads, 63 sectors/track, 364801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
したがって、カーネルはドライブが4kセクターを使用しているという考えを持っているようです。
mdadm
manページには、チャンクサイズとRAID1について少し不可解です。
-c, --chunk= Specify chunk size of kibibytes. The default when creating an array is 512KB. To ensure compatibility with earlier versions, the default when Building and array with no persistent metadata is 64KB. This is only meaningful for RAID0, RAID4, RAID5, RAID6, and RAID10.
raid1にとって意味がないのはなぜですか?
を見ると/proc/mdstat
、raid1デバイスmd8には2930265424ブロックがあります。
3000591794176/2930265424/2 = 512
んmdadm
その後、512バイトのブロックサイズを使用できますか?(/ 2両面ミラーであるため)
また、チャンクサイズはブロックサイズとは異なる概念ですか?
デバイスをmdadm
説明しよう:
# mdadm -E /dev/sdb -v -v
Avail Dev Size : 5860531120 (2794.52 GiB 3000.59 GB)
Array Size : 5860530848 (2794.52 GiB 3000.59 GB)
どこ
3000591794176/5860530848 = 512
mkfs.xfs
mdデバイスのデフォルトでは、以下を報告します。
sectsz=512
bsize=4096
の呼び出しでこれを修正しました mkfs.xfs -s size=4096 /dev/md8
編集:少しテストして、次のことに気付きました:
最初の再同期は、ブロックサイズ128k(512バイトではない)で行われているようです:
md: resync of RAID array md8
md: minimum _guaranteed_ speed: 1000 KB/sec/disk.
md: using maximum available idle IO bandwidth (but not more than 200000 KB/sec) for resync.
md: using 128k window, over a total of 2930265424 blocks.
表示される速度/proc/mdstat
は、そのブロックサイズに対して一貫しています(512バイトの場合、パフォーマンスヒットが予想されます)。
[>....................] resync = 3.0% (90510912/2930265424) finish=381.1min speed=124166K/sec
(たとえば、書き込みキャッシュを無効にすると、表示される速度はすぐに18m /秒に低下します)
下/sys
には、実際にはさらに関連するファイルがありますhw_sector_size
:
# cat /sys/block/sdb/queue/physical_block_size
4096
# cat /sys/block/sdb/queue/logical_block_size
512
これは、ドライブがその4kセクターサイズについてカーネルに嘘をつかず、カーネルが(fstab -l
提案の出力として)いくつかの4kセクターをサポートしていることを意味します。
少しグーグルすると、WDディスクに関するいくつかのレポートが生成されましたが、4kサイズをレポートしません-幸い、この3 TB WDディスクはそれを行いません-おそらくWDは現在のディスクでファームウェアを修正しました。