Hitachi Dynamic Link Manager ユーザーズガイド(Linux®用)

[目次][索引][前へ][次へ]


3.10.2 HDLMデバイスを使用して新規に論理ボリュームを作成する

ここでは,新規にHDLMデバイスを使用して,論理ボリュームを作成する手順を説明します。「図3-15 HDLMデバイス上に論理ボリュームを作成した場合のデバイス構成」に示す環境は,次の手順で構築してください。

図3-15 HDLMデバイス上に論理ボリュームを作成した場合のデバイス構成

[図]

  1. HDLMデバイスを使用しているプロセス,サービスなどをすべて停止します。
  2. HDLMデバイス上にディスクパーティションを作成し,システムIDを「Linux」(16進数で表記した場合,83)から「Linux LVM」(16進数で表記した場合,8e)に変更します。
    /dev/sddlmad(HDLMデバイス)に2つのパーティションを作成する場合の実行例を次に示します。

    fdiskコマンドの実行例(IA32)
    [図]

    partedコマンドの実行例(IA32,またはEM64T/AMD64)
    [図]
    partedコマンドでパーティションを変更する場合には,HDLMデバイス上のパーティションを認識させるために,partedコマンドの実行後にblockdevコマンドを実行してください。
  3. /etc/lvm/lvm.confファイルを編集します。
    SCSIデバイスの構成を無効にしてHDLMデバイスの構成を有効にするために,ファイル中のデバイスセクションに対して次の編集を行います。
    /etc/lvm/lvm.confファイルの編集例を次に示します。
    • Red Hat Enterprise Linux 8,Oracle Linux 8,Oracle Unbreakable Enterprise Kernel 8またはSUSE LINUX Enterprise Server 15 SP2以降の場合
      変更前
      devices {
                                    :
              # global_filter = [ "a/.*/" ]
              global_filter = [ "r|sddlm[a-p][a-p].*|", "a|/dev/sd|" ]
                                    :
              # types = [ "fd", 16 ]
                                    :
              md_component_detection = 1
                                    :
              allow_changes_with_duplicate_pvs = 0
                                    :
      }
      変更後
      devices {
                                    :
              # global_filter = [ "a/.*/" ]
              # global_filter = [ "r|sddlm[a-p][a-p].*|", "a|/dev/sd|" ]
              global_filter = [ "a|sddlm[a-p][a-p].*|", "r|/dev/sd|" ]
                                    :
              # types = [ "fd", 16 ]
              types = [ "sddlmfdrv", 16 ]
                                    :
              # md_component_detection = 1
              md_component_detection=0
                                    :
              # allow_changes_with_duplicate_pvs = 0
              allow_changes_with_duplicate_pvs = 1
                                    :
      }
      既存のglobal_filtertypesmd_component_detectionおよびallow_changes_with_duplicate_pvsの行をコメントアウトし,下線部を追加します。
      SCSIデバイスの構成に戻す場合に使用するため,変更前の値は控えてください。
    • SUSE LINUX Enterprise Server 12,SUSE LINUX Enterprise Server 15 SP1以前,Red Hat Enterprise Linux 7,Oracle Linux 7およびOracle Unbreakable Enterprise Kernel 7の場合
      allow_changes_with_duplicate_pvsの値を1に,write_cache_stateの値を0に設定してください。詳細は,「3.10.1 LVM2を使用する場合の注意事項」を参照してください。
      use_lvmetad=0で運用する場合は,global_filterではなくfilterで指定してください。
      変更前
      # This section allows you to configure which block devices should
      # be used by the LVM system.
      devices {
                                    :
      
              # filter = [ "a/.*/" ]
                filter = [ "r|sddlm[a-p][a-p].*|", "a|/dev/sd|" ]
                                    :
      
               write_cache_state = 1
                                    :
      
              # types = [ "fd", 16 ]
                                    :
      
              md_component_detection = 1
                                    :
      }
      変更後
      # This section allows you to configure which block devices should
      # be used by the LVM system.
      devices {    
                                   :
      
              # filter = [ "a/.*/" ]
              # filter = [ "r|sddlm[a-p][a-p].*|", "a|/dev/sd|" ]
                  filter = [ "a|sddlm[a-p][a-p].*|", "r|/dev/sd|" ]
                                    :
      
              # write_cache_state = 1
                  write_cache_state = 0
                                    :
      
              # types = [ "fd", 16 ]
              types = [ "sddlmfdrv", 16 ]
                                    :
      
              # md_component_detection = 1
                  md_component_detection=0
                                    :
      }
      既存のfilterwrite_cache_statetypesおよびmd_component_detectionの行をコメントアウトし,下線部を追加します。
      SCSIデバイスの構成に戻す場合に使用するため,変更前の値は控えてください。
    • 上記以外のOSの場合
      write_cache_stateの値を0に設定してください。詳細は,「3.10.1 LVM2を使用する場合の注意事項」を参照してください。
      global_filterが使用できるLVM2のバージョンで,use_lvmetad=1で運用する場合は,filterではなくglobal_filterで指定してください。
      変更前
      # This section allows you to configure which block devices should
      # be used by the LVM system.
      devices {
                                    :
      
              # filter = [ "a/.*/" ]
                                    :
      
              # global_filter = [ "a/.*/" ]
                global_filter = [ "r|sddlm[a-p][a-p].*|", "a|/dev/sd|" ]
                                    :
      
               write_cache_state = 1
                                    :
      
              # types = [ "fd", 16 ]
                                    :
      
              md_component_detection = 1
                                    :
      }
      変更後
      # This section allows you to configure which block devices should
      # be used by the LVM system.
      devices {    
                                   :
      
              # filter = [ "a/.*/" ]
                                    :
      
              # global_filter = [ "a/.*/" ]
              # global_filter = [ "r|sddlm[a-p][a-p].*|", "a|/dev/sd|" ]
                  global_filter = [ "a|sddlm[a-p][a-p].*|", "r|/dev/sd|" ]
                                    :
      
              # write_cache_state = 1
                  write_cache_state = 0
                                    :
      
              # types = [ "fd", 16 ]
              types = [ "sddlmfdrv", 16 ]
                                    :
      
              # md_component_detection = 1
                  md_component_detection=0
                                    :
      }
      既存のglobal_filterwrite_cache_statetypesおよびmd_component_detectionの行をコメントアウトし,下線部を追加します。
      SCSIデバイスの構成に戻す場合に使用するため,変更前の値は控えてください。
  4. VGスキャンを実行します。
    ファイルを編集したあと,次に示すコマンドを実行してください。
    # /sbin/vgscan
     
  5. LVMキャッシュファイルを削除します。
    次のファイルがある場合,ファイルを削除してください。
    • /etc/lvm/.cache
    • /etc/lvm/cache/.cache
  6. 物理ボリュームを作成します。
    /dev/sddlmad1および/dev/sddlmad2を物理ボリュームとして定義する場合の実行例を次に示します。
    # pvcreate /dev/sddlmad1
      Physical volume "/dev/sddlmad1" successfully created
    # pvcreate /dev/sddlmad2
      Physical volume "/dev/sddlmad2" successfully created
    
  7. ボリュームグループを作成します。
    物理ボリュームである/dev/sddlmad1および/dev/sddlmad2を使用して,vg01(ボリュームグループ)を作成する場合の実行例を次に示します。
    # vgcreate vg01 /dev/sddlmad1 /dev/sddlmad2 
      Volume group "vg01" successfully created
  8. 論理ボリュームを作成します。
    vg01(ボリュームグループ)を使用して,論理ボリューム(lvol1:100MB)を作成する場合の実行例を次に示します。
    # lvcreate -L 100M -n lvol1 vg01
      Logical volume "lvol1" created
  9. ファイルシステムを作成します。
    mke2fsコマンドを使用して,lvol1(論理ボリューム)にファイルシステムを作成する場合の実行例を次に示します。
    # mke2fs /dev/vg01/lvol1
    Filesystem label=
    OS type: Linux
    Block size=1024 (log=0)
    Fragment size=1024 (log=0)
    25688 inodes, 102400 blocks
    5120 blocks (5.00%) reserved for the super user
    First data block=1
    13 block groups
    8192 blocks per group, 8192 fragments per group
    1976 inodes per group
    Superblock backups stored on blocks:
            8193, 24577, 40961, 57345, 73729
    
    Writing inode tables: done
    Writing superblocks and filesystem accounting information: done
    
    This filesystem will be automatically checked every 38 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
  10. 論理ボリュームをマウントするディレクトリを作成します。
    /mnt/lvol1ディレクトリを作成する実行例を,次に示します。
     
    # mkdir /mnt/lvol1
      
  11. 論理ボリュームをマウントします。
    /mnt/lvol1ディレクトリにマウントする実行例を,次に示します。
    # mount /dev/vg01/lvol1 /mnt/lvol1
    
  12. Red Hat Enterprise Linux 6の場合は,ボリュームグループの情報を更新します。
    次に示すコマンドを実行して,ボリュームグループの情報を更新します。
     
    # vgscan
      Reading all physical volumes.  This may take a while...
      Found volume group "VolGroup00" using metadata type lvm2