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.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

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.

Diagram van dmcache in opslag in LVM-volumes 
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.

  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
  2. Maak een partitie van 10 GB op de NVMe PCIe SSD-schijf [Cache-apparaat]
    parted -a optimal /dev/nvme0n1 mkpart primary 1 10G 
  3. Maak een volumegroep (cache) met het Origin- en Cache-apparaat
    vgcreate cache /dev/sda1  /dev/nvme0n1p1 
    1. 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 
  4. Maak het logische volume van het oorspronkelijke apparaat (origin_device)
    lvcreate -l 90%FREE -n origin_device cache /dev/sda1 
  5. Maak een logische cache-metadatavolume (cache_meta)
    lvcreate -l 5%FREE -n cache_meta cache /dev/nvme0n1p1 
  6. Maak een logisch volume voor cacheblokgegevens (cache_block)
    lvcreate -l 80%FREE -n cache_block cache /dev/nvme0n1p1 
  7. 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.
    1. Dit is het gedrag van de tool. Controleer de volumegroep "cache" met behulp van lvdisplay

      root@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 
  8. Maak een logisch cachevolume door het logische volume van de cachepool (stap 7) te koppelen en origin_device Logisch volume (stap 4)

    lvconvert --type cache --cachepool cache/cache_block cache/origin_device 
    1. Dit maakt het virtuele cache-apparaat (dm-cache) orign_device zoals hieronder weergegeven als dm4.
      [root@localhost ~]# ls -l /dev/cache/origin_device
      lrwxrwxrwx. 1 root root 7 Jun 28 09:13 /dev/cache/origin_device -> ../dm-4 
  9. 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


Staafdiagram met het prestatieverschil tussen schijven met en zonder dmcache 
Afbeelding 2: Prestatieverbetering met dm-cache.


Conclusie: NVMe PCIe SSD-gebaseerde dm-cache verbetert de prestaties van oudere spindle-gebaseerde harde schijven in grotere mate.

Affected Products

Red Hat Enterprise Linux Version 7, Red Hat Enterprise Linux Version 9, Red Hat Enterprise Linux Version 8

Products

PowerEdge XR2, PowerEdge C6420, PowerEdge C6520, PowerEdge C6525, PowerEdge C6615, PowerEdge C6620, PowerEdge R350, PowerEdge R360, PowerEdge R440, PowerEdge R450, PowerEdge R540, PowerEdge R550, PowerEdge R640, PowerEdge R6415, PowerEdge R650 , PowerEdge R650xs, PowerEdge R6515, PowerEdge R6525, PowerEdge R660, PowerEdge R660xs, PowerEdge R6615, PowerEdge R6625, PowerEdge R740, PowerEdge R740XD, PowerEdge R740XD2, PowerEdge R7415, PowerEdge R7425, PowerEdge R750, PowerEdge R750XA, PowerEdge R750xs, PowerEdge R7515, PowerEdge R7525, PowerEdge R760, PowerEdge R760XA, PowerEdge R760xd2, PowerEdge R760xs, PowerEdge R7615, PowerEdge R7625, PowerEdge R840, PowerEdge R860, PowerEdge R940, PowerEdge R940xa, PowerEdge R960, PowerEdge T350, PowerEdge T360, PowerEdge T440, PowerEdge T550, PowerEdge T560, PowerEdge T640, PowerEdge XE2420, PowerEdge XE7420, PowerEdge XE7440, PowerEdge XE8545, PowerEdge XE8640, PowerEdge XE9640, PowerEdge XE9680, PowerEdge XR11, PowerEdge XR12, PowerEdge XR4510c, PowerEdge XR4520c, PowerEdge XR5610, PowerEdge XR7620, PowerEdge XR8610t, PowerEdge XR8620t ...
Article Properties
Article Number: 000148672
Article Type: How To
Last Modified: 08 Apr 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.