PowerEdge: Snellere blokapparaatprestaties met op NVMe PCIe SSD gebaseerde dm-cache op RHEL
Summary: De Device Mapper cache (dm-cache) kan worden gebruikt om de prestaties van een blokapparaat te verbeteren door data dynamisch te migreren naar een sneller apparaat.
Instructions
Op NVMe gebaseerde PCIe SSD's kunnen fungeren als het cacheapparaat voor dm-cache met behulp van de hulpprogramma's voor gebruikersruimte en de Logical Volume Manager (LVM)-tools.
De virtuele cache die door dm-cache wordt gemaakt, bestaat uit drie fysieke apparaten. (Zie Afb. 1.) Het Origin-apparaat is het tragere Destination Storage Device (HDD). Het cacheapparaat wordt gebruikt om de gebruikersdata op te slaan en de metacache slaat de metadata op, zoals blokplaatsing, vuile vlaggen en andere interne data.
In dit geval gebruiken we hetzelfde apparaat [Cacheapparaat] voor zowel datablokken als metadata.
Afbeelding 1: Stappen voor het instellen en configureren van de dm-cache met behulp van LVM-tools.
Hardware-installatie:
Origin Device [HDD]: /dev/sda1
Cacheapparaat [NVMe-gebaseerde PCIe SSD] (blok/meta): /dev/nvme0n1p1
Software-installatie:
Besturingssysteem: RHEL 7
Gereedschappen: LVM2-hulpprogramma's voor gebruikersruimte voor configuratie van dm-cache
Configuratiestappen:
Hieronder volgen de stappen voor het configureren van de dm-cache van het virtuele apparaat met behulp van LVM.
Elke stap wordt toegewezen aan het blok met nummering vermeld in Fig.1.
- Maak een partitie van 100 GB op de harde schijf [Origin Device]
parted -a optimal /dev/sda mkpart primary 1 100G
Opmerking: Dit maakt /dev/sda1 aan - Maak een partitie van 10 GB op de NVMe PCIe SSD-schijf [Cache-apparaat]
parted -a optimal /dev/nvme0n1 mkpart primary 1 10G
- Maak een volumegroep (cache) met het Origin- en Cache-apparaat
vgcreate cache /dev/sda1 /dev/nvme0n1p1
- Controleer de volumegroep "cache" met behulp van
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
- Controleer de volumegroep "cache" met behulp van
- Maak het logische volume van het oorspronkelijke apparaat (
origin_device)lvcreate -l 90%FREE -n origin_device cache /dev/sda1
- Maak een logische cache-metadatavolume (
cache_meta)lvcreate -l 5%FREE -n cache_meta cache /dev/nvme0n1p1
- Maak een logisch volume voor cacheblokgegevens (
cache_block)lvcreate -l 80%FREE -n cache_block cache /dev/nvme0n1p1
- Een logisch volume voor de cachepool maken door logische volumes voor cacheblokken en cachemetadata te combineren (door STep 5 en 6 te combineren)
lvconvert --type cache-pool --poolmetadata cache/cache_meta cache/cache_block
Opmerking: De gemaakte cachepool heeft dezelfde naam als "cache_block" dat is de naam van het logische volume van het cacheblokgegevens dat in stap 6 is gemaakt.-
Dit is het gedrag van de tool. Controleer de volumegroep "cache" met behulp van
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
-
-
Maak een logisch cachevolume door het logische volume van de cachepool (stap 7) te koppelen en
origin_deviceLogisch volume (stap 4)lvconvert --type cache --cachepool cache/cache_block cache/origin_device
- Dit maakt het virtuele cache-apparaat (dm-cache)
orign_devicezoals hieronder weergegeven alsdm4.[root@localhost ~]# ls -l /dev/cache/origin_device lrwxrwxrwx. 1 root root 7 Jun 28 09:13 /dev/cache/origin_device -> ../dm-4
- Dit maakt het virtuele cache-apparaat (dm-cache)
-
Formatteer het virtuele cacheapparaat met een bestandssysteem en gebruik het.
mkfs.ext4 /dev/cache/origin_device
Prestatiegegevens:
Prestatietests die zijn uitgevoerd met behulp van de FIO-tool laten een grote verbetering zien van de mixbewerkingen voor lezen, schrijven en lezen-schrijven.
Tabel-1 toont de FIO-tooloutput van prestatieverschil en de verbetering in percentage met de dmcache in vergelijking met de normale aandrijving (rotatieaandrijving) en Fig 2 toont de bijbehorende grafiekgrafiek.
De test wordt uitgevoerd met een blokgrootte van 1M voor een combinatie van willekeurige lees-, willekeurige schrijf- en lees-schrijfbewerkingen (50%) op de originele harde schijf (sda) en de schijf met dmcache Geconfigureerd.
| FIO bij BS = 1M | IOPS | ||
|---|---|---|---|
| APPARAAT | Lezen | Schrijven | Lezen-schrijven |
Rijden met dm-cache |
197 | 798 | 159 |
| SDA [Original Drive] | 124 | 118 | 58 |
| Verbetering in % | 58.87% | 576.20% | 174.13% |
Tabel 1: Prestatieverbetering met dm-cache
Afbeelding 2: Prestatieverbetering met dm-cache.