Red Hat Training

A Red Hat training course is available for RHEL 8

12.4. 論理ボリュームに cachepool を使用した dm-cache キャッシュの有効化

この手順では、キャッシュデータとキャッシュメタデータ論理ボリュームを個別に作成し、ボリュームをキャッシュプールに統合することができます。

前提条件

  • システムに、dm-cache を使用した高速化したい低速な論理ボリュームがある。
  • 低速な論理ボリュームを含むボリュームグループには、高速ブロックデバイスに未使用の物理ボリュームも含まれます。

手順

  1. 高速デバイスに cachepool ボリュームを作成します。

    # lvcreate --type cache-pool --size <cachepool-size> --name <fastpool> <vg /dev/fast>

    以下の値を置き換えます。

    cachepool-size
    cachepool のサイズ (例: 5G)
    fastpool
    cachepool ボリュームの名前
    vg
    ボリュームグループ名
    /dev/fast

    高速ブロックデバイスへのパス (例: /dev/sdf1)

    注記

    --poolmetadata オプションを使用して、cache-pool の作成時にプールメタデータの場所を指定できます。

    例12.3 cachevol ボリュームの作成

    # lvcreate --type cache-pool --size 5G --name fastpool vg /dev/sde
    Logical volume "fastpool" created.
  2. キャッシュを開始するために、メイン論理ボリュームに cachepool をアタッチします。

    # lvconvert --type cache --cachepool <fastpool> <vg/main>

    以下の値を置き換えます。

    fastpool
    cachepool ボリュームの名前
    vg
    ボリュームグループ名
    main

    低速な論理ボリュームの名前

    例12.4 メイン LV への cachepool の接続

    # lvconvert --type cache --cachepool fastpool vg/main
    Do you want wipe existing metadata of cache pool vg/fastpool? [y/n]: y
    Logical volume vg/main is now cached.

検証手順

  • cache-pool タイプで新しく作成したデバイスボリュームを調べます。

    # lvs --all --options +devices <vg>
    
    LV                      Pool               Type        Devices
    [fastpool_cpool]                           cache-pool  fastpool_pool_cdata(0)
    [fastpool_cpool_cdata]                     linear      /dev/sdf1(4)
    [fastpool_cpool_cmeta]                     linear      /dev/sdf1(2)
    [lvol0_pmspare]                            linear      /dev/sdf1(0)
    main                    [fastpoool_cpool]  cache       main_corig(0)
    [main_corig]                               linear      /dev/sdf1(O)

関連情報

  • lvcreate(8) の man ページ
  • lvmcache(7) man ページ
  • lvconvert(8) の man ページ