PowerEdge: RHEL üzerinde NVMe PCIe SSD tabanlı dm-cache ile Daha Hızlı Blok Aygıt Performansı

Summary: Aygıt Eşleyici önbelleği (dm-cache), verileri daha hızlı bir aygıta dinamik olarak taşıyarak bir blok aygıtının performansını artırmak için kullanılabilir.

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

NVMe tabanlı PCIe SSD'ler, kullanıcı alanı araç seti Mantıksal Disk Bölümü Yöneticisi (LVM) araçlarını kullanarak dm-cache için önbellek aygıtı görevi görebilir.

dm-cache tarafından oluşturulan sanal önbellek üç fiziksel aygıttan oluşur. (Bkz. Şekil 1.) Kaynak aygıt, daha yavaş hedef depolama aygıtıdır (HDD). Önbellek aygıtı, kullanıcı verilerini depolamak için kullanılır ve meta önbellek, blok yerleştirme, değiştirilmiş veriler ve diğer dahili veriler gibi meta verileri depolar.
Bu durumda, hem veri blokları hem de meta veriler için aynı aygıtı [Önbellek aygıtı] kullanırız.

LVM disk bölümlerinde depolamada dmcache şeması 
Şekil 1: LVM araçlarını kullanarak dm-cache'i kurma ve yapılandırma adımları.

 

Donanım Kurulumu:

Kaynak Aygıt [HDD]: /dev/sda1
Önbellek Aygıtı [NVMe tabanlı PCIe SSD] (Blok/Meta): /dev/nvme0n1p1 

 

Yazılım Kurulumu:

İşletim sistemi: RHEL 7
Araçlar: dm-cache yapılandırması için LVM2 kullanıcı alanı araçları

 

Yapılandırma Adımları:

Aşağıda, LVM kullanarak Sanal aygıt dm-cache öğesini yapılandırma adımları verilmiştir.

Her adımın çıktısı, Şekil 1'de belirtilen numaralandırma ile bloğa eşlenir.

  1. Sabit diskte 100 GB'lık bir bölüm oluşturun [Kaynak Aygıt]
    parted -a optimal /dev/sda mkpart primary 1 100G 
    Not: Bu, /dev/sda1'i oluşturur
  2. NVMe PCIe SSD diskinde 10 GB'lık bir bölüm oluşturun [Önbellek Aygıtı]
    parted -a optimal /dev/nvme0n1 mkpart primary 1 10G 
  3. Kaynak ve Önbellek aygıtıyla bir Disk Bölümü grubu (önbellek) oluşturun
    vgcreate cache /dev/sda1  /dev/nvme0n1p1 
    1. Şu komutu kullanarak "önbellek" disk bölümü grubunu kontrol edin: 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. Kaynak Aygıt mantıksal disk bölümünü oluşturun (origin_device)
    lvcreate -l 90%FREE -n origin_device cache /dev/sda1 
  5. Önbellek meta veri mantıksal disk bölümünü oluşturun (cache_meta)
    lvcreate -l 5%FREE -n cache_meta cache /dev/nvme0n1p1 
  6. Önbellek blok veri mantıksal disk bölümünü oluşturun (cache_block)
    lvcreate -l 80%FREE -n cache_block cache /dev/nvme0n1p1 
  7. Önbellek blok ve önbellek meta veri mantıksal disk bölümlerini birleştirerek bir önbellek havuzu mantıksal disk bölümü oluşturun (5. ve 6. adımları birleştirerek)
    lvconvert --type cache-pool --poolmetadata cache/cache_meta cache/cache_block 
    Not: Oluşturulan önbellek havuzu, "cache_block" ile aynı ada sahip olur. Bu, 6. adımda oluşturulan önbellek blok veri mantıksal disk bölümünün adıdır.
    1. Bu, aracın normal davranışıdır. Şu komutu kullanarak "önbellek" disk bölümü grubunu kontrol edin: 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. Önbellek havuzu (7. adım) mantıksal disk bölümü ile origin_device mantıksal disk bölümünü (4. adım) bağlantılı hale getirerek bir önbellek mantıksal disk bölümü oluşturun

    lvconvert --type cache --cachepool cache/cache_block cache/origin_device 
    1. Bu işlem, sanal önbellek aygıtını (dm-cache) oluşturur, orign_device aşağıda gösterilmektedir 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. Sanal önbellek aygıtını bir dosya sistemiyle biçimlendirin ve kullanın.

    mkfs.ext4 /dev/cache/origin_device 

 

 

 

Performans Verileri:

FIO aracı kullanılarak yapılan performans testleri okuma, yazma ve okuma-yazma karışık işlemlerinde büyük bir gelişme olduğunu göstermektedir.

Tablo-1, normal sürücüye (döner sürücüye) kıyasla dmcache varken performans farkının FIO araç çıktısını ve yüzde cinsinden iyileşmeyi ve Şekil 2 ise buna karşılık gelen grafiği göstermektedir.

Test, Orijinal sabit sürücüde (sda) ve dmcache yapılandırmasına sahip sürücüde Rastgele Okuma, Rastgele Yazma ve Rastgele Okuma-Yazma karışık işlemi (%50) için 1M blok boyutuyla gerçekleştirilmiştir.
 

BS'de FIO = 1M IOPS
AYGIT Okuma Yazma Okuma-Yazma
Sürücü: dm-cache 197 798 159
sda [orijinal sürücü] 124 118 58
% olarak iyileşme %58,87 %576,2 %174,13

Tablo 1: Şununla Performans İyileşmesi: dm-cache


dmcache yapılandırmasına sahip olan ve olmayan diskler arasındaki performans farkını gösteren çubuk grafik 
Şekil 2: Şununla Performans İyileşmesi: dm-cache.


Sonuç: NVMe PCIe SSD tabanlı dm-cache, eski yerleşik sabit sürücülerin performansını büyük ölçüde artırır.

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.