PowerEdge: Швидша продуктивність блокових пристроїв завдяки DM-кешу на базі NVMe PCIe SSD на RHEL
Summary: Кеш Device Mapper (dm-cache) може використовуватися для підвищення продуктивності блокового пристрою шляхом динамічного перенесення даних на швидший пристрій.
Instructions
Твердотільні накопичувачі PCIe на базі NVMe можуть виступати в якості кеш-пристрою для dm-кешу за допомогою інструментів набору інструментів Logical Volume Manager (LVM).
Віртуальний кеш, створений за допомогою dm-cache, складається з трьох фізичних пристроїв. (Див. Рис 1.) Пристрій Origin – це повільніший пристрій зберігання даних (HDD). Пристрій Cache використовується для зберігання даних користувача, а мета-кеш зберігає метадані, такі як розміщення блоків, брудні прапорці та інші внутрішні дані.
У цьому випадку ми використовуємо один і той самий пристрій [Cache device] як для блоків даних, так і для метаданих.
Малюнок 1: Кроки по налаштуванню та налаштуванню dm-кешу за допомогою LVM tools.
Налаштування обладнання:
Походження пристрою [HDD]: /dev/sda1
Кеш-пристрій [PCIe SSD на основі NVMe] (блок/мета): /dev/nvme0n1p1
Налаштування програмного забезпечення:
Операційна система: Інструменти RHEL 7
: Інструменти користувацького простору LVM2 для конфігурації dm-кешу
Етапи налаштування:
Нижче наведено кроки для налаштування dm-кешу віртуального пристрою за допомогою LVM.
Кожен крок виводу відображається на блок з нумерацією, зазначеною на рис.1.
- Створіть розділ 100 ГБ на жорсткому диску [Origin Device]
parted -a optimal /dev/sda mkpart primary 1 100G
Примітка: Це створює /dev/sda1 - Створіть розділ розміром 10 ГБ на SSD-диску NVMe PCIe [Кеш-пристрій]
parted -a optimal /dev/nvme0n1 mkpart primary 1 10G
- Створення групи томів (кешу) за допомогою пристрою Origin і Cache
vgcreate cache /dev/sda1 /dev/nvme0n1p1
- Перевірте наявність групи томів "cache" за допомогою
vgdisplay[root@localhost ~]# vgdisplay --- Volume group --- VG Name cache System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 7 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 103.36 GiB PE Size 4.00 MiB Total PE 26461 Alloc PE / Size 25399 / 99.21 GiB Free PE / Size 1062 / 4.15 GiB VG UUID Zd8dNe-6Kdt-7qgY-dmSN-8WHe-4wqQ-euM3Ql
- Перевірте наявність групи томів "cache" за допомогою
- Створіть логічний том вихідного пристрою (
origin_device)lvcreate -l 90%FREE -n origin_device cache /dev/sda1
- Створення кешу метаданих логічного об'єму (
cache_meta)lvcreate -l 5%FREE -n cache_meta cache /dev/nvme0n1p1
- Створення блоку кешу даних логічного об'єму (
cache_block)lvcreate -l 80%FREE -n cache_block cache /dev/nvme0n1p1
- Створіть логічний том пулу кешу, об'єднавши логічні томи блоку кешу та метаданих кешу (комбінуючи step 5 та 6)
lvconvert --type cache-pool --poolmetadata cache/cache_meta cache/cache_block
Примітка: Створений пул кешу має таку ж назву, як і «cache_block" Це ім'я логічного тому даних блоку кешу, створеного на кроці 6.-
Така поведінка інструменту. Перевірте наявність групи томів "cache" за допомогою
lvdisplayroot@localhost ~]# lvdisplay --- Logical volume --- LV Path /dev/cache/cache_block LV Name cache_block VG Name cache LV UUID kWYQxP-Jdlr-JdxE-aleB-JJpj-3rmw-Q0cojx LV Write Access read/write LV Creation host, time localhost.localdomain, 2014-06-28 09:05:32 -0400 LV Status available # open 0 LV Size 5.07 GiB Current LE 1297 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:2
-
-
Створіть логічний том кешу, зв'язавши логічний том пулу кешу (крок 7) і
origin_deviceЛогічний том (крок 4)lvconvert --type cache --cachepool cache/cache_block cache/origin_device
- Це створює віртуальний кеш-пристрій (dm-cache)
orign_deviceяк показано нижче якdm4.[root@localhost ~]# ls -l /dev/cache/origin_device lrwxrwxrwx. 1 root root 7 Jun 28 09:13 /dev/cache/origin_device -> ../dm-4
- Це створює віртуальний кеш-пристрій (dm-cache)
-
Відформатуйте віртуальний кеш-пристрій за допомогою файлової системи та використовуйте його.
mkfs.ext4 /dev/cache/origin_device
Дані про ефективність:
Тести продуктивності, проведені за допомогою інструменту FIO, показують значне покращення операцій читання, запису та міксування читання-запису.
У таблиці 1 показаний вихід інструменту FIO, різниця в продуктивності та покращення у відсотках з dmcache на місці в порівнянні з нормальним приводом (обертальним приводом) і на рис 2 показаний відповідний графік графіка.
Тест проводиться з розміром блоку 1M для випадкового читання, випадкового запису та випадкового читання-запису (50%) на оригінальному жорсткому диску (sda) та диску з dmcache Налаштований.
| FIO на BS = 1M | IOPS | ||
|---|---|---|---|
| ПРИСТРІЙ | Читати | Написати | Читання-запис |
Керуйте автомобілем з dm-cache |
197 | 798 | 159 |
| SDA [оригінальний диск] | 124 | 118 | 58 |
| Поліпшення у % | 58.87% | 576.20% | 174.13% |
Таблиця 1: Підвищення продуктивності за допомогою dm-cache
Малюнок 2: Підвищення продуктивності за допомогою dm-cache.