flashcache с mdadm и LVM

У меня проблемы с настройкой flashcache в системе с LVM и mdadm, я подозреваю, что я либо просто пропускаю очевидный шаг, либо неправильно отображаю данные, и надеялся, что кто-то может указать мне правильное направление?

системная информация:

CentOS 6.4 64 бит

Конфигурация mdadm

md0 : active raid1 sdd3[2] sde3[3] sdf3[4] sdg3[5] sdh3[1] sda3[0]
      204736 blocks super 1.0 [6/6] [UUUUUU]


md2 : active raid6 sdd5[2] sde5[3] sdf5[4] sdg5[5] sdh5[1] sda5[0]
      3794905088 blocks super 1.1 level 6, 512k chunk, algorithm 2 [6/6] [UUUUUU]


md3 : active raid0 sdc1[1] sdb1[0]
      250065920 blocks super 1.1 512k chunks


md1 : active raid10 sdh1[1] sda1[0] sdd1[2] sdf1[4] sdg1[5] sde1[3]
      76749312 blocks super 1.1 512K chunks 2 near-copies [6/6] [UUUUUU]

pcsvan

PV /dev/mapper/ssdcache   VG Xenvol   lvm2 [3.53 TiB / 3.53 TiB free]
Total: 1 [3.53 TiB] / in use: 1 [3.53 TiB] / in no VG: 0 [0   ]

Используется команда создания flashcache:

flashcache_create -p back ssdcache /dev/md3 /dev/md2

pvdisplay

--- Physical volume ---
PV Name               /dev/mapper/ssdcache
VG Name               Xenvol
PV Size               3.53 TiB / not usable 106.00 MiB
Allocatable           yes
PE Size               128.00 MiB
Total PE              28952
Free PE               28912
Allocated PE          40
PV UUID               w0ENVR-EjvO-gAZ8-TQA1-5wYu-ISOk-pJv7LV

vgdisplay

--- Volume group ---
VG Name               Xenvol
System ID
Format                lvm2
Metadata Areas        1
Metadata Sequence No  2
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                1
Open LV               1
Max PV                0
Cur PV                1
Act PV                1
VG Size               3.53 TiB
PE Size               128.00 MiB
Total PE              28952
Alloc PE / Size       40 / 5.00 GiB
Free  PE / Size       28912 / 3.53 TiB
VG UUID               7vfKWh-ENPb-P8dV-jVlb-kP0o-1dDd-N8zzYj

Так вот где я нахожусь, я подумал, что работа была выполнена, однако при создании логического тома, называемого test, и монтирование его /mnt/test последовательная запись жалкая, 60 ish МБ / с.

/dev/md3 имеет 2 x твердотельных накопителя в Raid0, которые в одиночку выполняют при скорости записи около 800 МБ / с, и я пытаюсь кешировать /dev/md2, что составляет 6 x 1 ТБ дисков в raid6

Я прочитал несколько страниц в течение дня и некоторые из них здесь, из результатов видно, что кэш не работает, но я не уверен, почему.

Я добавил строку фильтра в lvm.conf

filter = [ "r|/dev/sdb|", "r|/dev/sdc|", "r|/dev/md3|" ]

Возможно, это что-то глупое, но кэш явно не выполняет записи, поэтому я подозреваю, что не отображаю его или неправильно смонтировал кэш.

статус dmsetup

ssdcache: 0 7589810176 flashcache stats:
    reads(142), writes(0)
    read hits(133), read hit percent(93)
    write hits(0) write hit percent(0)
    dirty write hits(0) dirty write hit percent(0)
    replacement(0), write replacement(0)
    write invalidates(0), read invalidates(0)
    pending enqueues(0), pending inval(0)
    metadata dirties(0), metadata cleans(0)
    metadata batch(0) metadata ssd writes(0)
    cleanings(0) fallow cleanings(0)
    no room(0) front merge(0) back merge(0)
    force_clean_block(0)
    disk reads(9), disk writes(0) ssd reads(133) ssd writes(9)
    uncached reads(0), uncached writes(0), uncached IO requeue(0)
    disk read errors(0), disk write errors(0) ssd read errors(0) ssd write errors(0)
    uncached sequential reads(0), uncached sequential writes(0)
    pid_adds(0), pid_dels(0), pid_drops(0) pid_expiry(0)
    lru hot blocks(31136000), lru warm blocks(31136000)
    lru promotions(0), lru demotions(0)
Xenvol-test: 0 10485760 linear

Я включил столько информации, сколько я могу придумать, жду любых ответов.

1 ответ

Я вижу, что /dev/md2 не отключен lvm.conf, но должен.

Я думаю, что в такой сложной настройке вам лучше явно добавить устройства LVM и отключить все остальные:

filter = [ "...", "a|/dev/md0|", "a|/dev/md1|", "a|/dev/mapper/ssdcache|", "r|.*|" ]

Дополнительно iostat может использоваться для мониторинга фактической активности устройств.

PS:

Я очень пессимистично отношусь к вашей сумасшедшей схеме хранения, где диски разбиты на множество разделов, которые участвуют в таком количестве различных RAID-массивов.

система {RAID1 (/dev/ssd1p1+/dev/ssd2p1)}
А ТАКЖЕ
Данные {RAID10 (6 whole drives) + flashcache on RAID1 (/dev/ssd1p2+/dev/ssd2p2)}

- гораздо привлекательнее:).

UPD:
Или даже лучше:

RAID1 на целых SSD: система и раздел для flashcache
А ТАКЖЕ
RAID10/6 на целых жестких дисках + flashcache

Другие вопросы по тегам