使用 bcache 使用 ramdisk 快取對虛擬磁碟 raid 10 陣列

使用 bcache 使用 ramdisk 快取對虛擬磁碟 raid 10 陣列

我試著用 mdadm 和 bcache 模擬一個場景。我使用 qemu-img 創建了 4 個原始 img 檔案。我使用 mdadm 創建了 raid 10,並在 /mnt/ramdisk 上創建了 tmpfs,並在 ramdisk 上創建了原始 ramdisk.img 檔案。嘗試使用 bcache 連線 ramdisk.img 和其他 4 個 mdadm raid10 img 檔案...

看起來像這樣。

loop0           7:0    0   512M  0 loop   
└─md0           9:0    0  1020M  0 raid10 
  └─md0p1     259:0    0  1018M  0 md     
    └─bcache0 252:0    0  1018M  0 disk   /media/gediz/vmbcache
loop1           7:1    0   512M  0 loop   
└─md0           9:0    0  1020M  0 raid10 
  └─md0p1     259:0    0  1018M  0 md     
    └─bcache0 252:0    0  1018M  0 disk   /media/gediz/vmbcache
loop2           7:2    0   512M  0 loop   
└─md0           9:0    0  1020M  0 raid10 
  └─md0p1     259:0    0  1018M  0 md     
    └─bcache0 252:0    0  1018M  0 disk   /media/gediz/vmbcache
loop3           7:3    0   512M  0 loop   
└─md0           9:0    0  1020M  0 raid10 
  └─md0p1     259:0    0  1018M  0 md     
    └─bcache0 252:0    0  1018M  0 disk   /media/gediz/vmbcache
loop101         7:101  0   255M  0 loop   
└─loop101p1   259:1    0   228M  0 loop   

mdadm 統計:

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid10 loop3[3] loop2[2] loop1[1] loop0[0]
      1044480 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]

支援超級塊:

bcache-super-show /dev/md0p1 
sb.magic        ok
sb.first_sector     8 [match]
sb.csum         51E3C78C7BED1DBF [match]
sb.version      1 [backing device]

dev.label       (empty)
dev.uuid        bb01d667-c8bf-442e-994b-94c108864cf5
dev.sectors_per_block   1
dev.sectors_per_bucket  1024
dev.data.first_sector   16
dev.data.cache_mode 0 [writethrough]
dev.data.cache_state    0 [detached]

cset.uuid       acd29060-d604-4441-961a-413ce85cc604

緩存超級塊:

sb.magic        ok
sb.first_sector     8 [match]
sb.csum         D66FD05126FF5088 [match]
sb.version      0 [cache device]

dev.label       (empty)
dev.uuid        774d0fab-82ab-4825-ba19-43a83e4b4f53
dev.sectors_per_block   1
dev.sectors_per_bucket  1024
dev.cache.first_sector  1024
dev.cache.cache_sectors 465920
dev.cache.total_sectors 466944
dev.cache.ordered   no
dev.cache.discard   no
dev.cache.pos       0
dev.cache.replacement   0 [lru]

cset.uuid       f3c837cb-a743-4615-9a7f-4f647d603eaf

我第一次嘗試時make-bcache -B /dev/md0 -C /dev/loop101確信它可以在沒有 p1 分區的情況下工作,並且它不適用於原始設備。然後我創建了 gpt 分割區並將備份磁碟格式化為 ext4 左側快取磁碟,沒有格式化(如指南所述),並嘗試附加也不起作用...

# echo f3c837cb-a743-4615-9a7f-4f647d603eaf > /sys/block/bcache0/bcache/attach
-bash: echo: write error: No such file or directory

狀態是:

# cat /sys/block/bcache0/bcache/state
no cache

已分離且無法附加...

我做錯了什麼 ?

我的目標是使用 mdadm 和 bcache 模擬由具有 ramdisk 快取的虛擬磁碟形成的 raid 10 陣列。

謝謝。

相關內容