Linux-admin-volume-management

提供:Dev Guides
移動先:案内検索

Linux Admin-ボリューム管理

  • 論理ボリューム管理(LVM)*は、さまざまな物理ハードディスク間でストレージボリュームを管理するためにLinuxで使用される方法です。 これはRAIDと混同しないでください。 ただし、RAID 0またはJ-Bodと同様の概念で考えることができます。 LVMを使用すると、(たとえば)それぞれ1TBの3つの物理ディスクを使用し、次に/dev/sdbなどの約3TBの論理ボリュームを使用できます。 または、1.5TBの2つの論理ボリューム、500GBの5つのボリューム、または任意の組み合わせです。 論理ボリュームのスナップショットに1つのディスクを使用することもできます。

注意-論理ボリュームを使用すると、正しく構成されている場合、実際にディスクI/Oが増加します。 これは、RAID 0が別々のディスクにデータをストライピングするのと同じように機能します。

LVMを使用したボリューム管理について学習するとき、LVMの各コンポーネントが何であるかを知っていれば簡単です。 次の表を調べて、各コンポーネントをしっかりと把握してください。 必要な場合は、Googleを使用して勉強してください。 論理ボリュームの各部分を理解することは、それらを管理するために重要です。

PV Physical Volume sda
PP Physical Partition sda1 , sda2
VG Volume Group Pooled physical resources
LV Logical Volume Seen as a storage facility to the operating system
  • 物理ボリューム*は/dev/sda、/dev/sdbとして認識されます。 Linuxによって検出される物理ディスク。
  • 物理パーティション*は、fdiskなどのディスクユーティリティによってパーティション分割されたディスクのセクションです。 ほとんどの一般的なLVMセットアップでは、物理パーティションは推奨されません。 例:ディスク/dev/sdaは、2つの物理パーティション_/dev/sda1_および_/dev/sda1_を含むようにパーティション分割されています

それぞれ1TBの物理ディスクが2つある場合、2つの中にほぼ2TBの_ボリュームグループ_を作成できます。

ボリュームグループから、3つの_論理ボリューム_を作成できます。それぞれは、ボリュームグループの合計サイズを超えない任意のサイズです。

従来のLinuxディスク管理ツール

CentOS 7のLVM管理用の最新かつ最高の機能を備えたツールに慣れる前に、まずLinuxディスク管理に使用されてきた従来のツールを詳しく調べる必要があります。 これらのツールは便利であり、System Storage Manager(lsblk、parted、mkfs.xfs)などの今日の高度なLVMツールで引き続き使用できます。

ここで、システムに1つまたは2つのディスクを追加したと仮定すると、Linuxによって検出されたディスクを列挙する必要があります。 破壊的と見なされる操作を実行する前に、常にディスクを列挙することをお勧めします。 lsblk はディスク情報を取得するための素晴らしいツールです。 CentOSが検出するディスクを見てみましょう。

[root@localhost rdc]# lsblk
NAME         MAJ:MIN    RM    SIZE    RO    TYPE MOUNTPOINT
sda            8:0       0     20G     0        disk
├─sda1         8:1       0      1G     0     part/boot
└─sda2         8:2       0     19G     0        part
  ├─cl-root  253:0       0     17G     0      lvm /
  └─cl-swap  253:1       0      2G     0      lvm  [SWAP]
    sdb       8:16       0      6G     0       disk
    sdc       8:32       0      4G     0       disk
    sr0       11:0       1   1024M     0       rom

ご覧のとおり、このシステムにはsda、sdb、sdcの3つのディスクがあります。

Disk sdaには動作中のCentOSインストールが含まれているため、sdaをいじりたくありません。 このチュートリアルでは、_sdb_と_sdc_の両方がシステムに追加されました。 これらのディスクをCentOSで使用できるようにしましょう。

ディスクラベルを作成する

[root@localhost rdc]# parted/dev/sdb mklabel GPT
Warning: The existing disk label on/dev/sdb will be destroyed and all data on this
   disk will be lost. Do you want to continue?
Yes/No? Yes
[root@localhost rdc]#

これで、1つのディスクにラベルが付けられました。 _sdc_で同じ方法で_parted_コマンドを実行するだけです。

ディスクにパーティションを作成する

各ディスクに単一のパーティションのみを作成します。 パーティションを作成するには、_parted_コマンドを再度使用します。

[root@localhost rdc]# parted -a opt/dev/sdb mkpart primary ext4 0% 100%

警告-0.00Bから6442MB(セクター0..12582911)のパーティションを要求しました。

私たちが管理できる最も近い場所は17.4kB〜1048kB(セクター34..2047)です。

これはまだ受け入れられますか?

はい・いいえ? NO

[root@localhost rdc]# parted -a opt/dev/sdc mkpart primary ext4 0% 100%

情報-/etc/fstabの更新が必要な場合があります。

[root@localhost rdc]# lsblk
NAME        MAJ:MIN   RM    SIZE    RO    TYPE MOUNTPOINT
sda           8:0      0     20G     0        disk
├─sda1        8:1      0      1G     0      part/boot
└─sda2        8:2      0     19G     0        part
 ├─cl-root  253:0      0     17G     0       lvm /
 └─cl-swap  253:1      0      2G     0       lvm  [SWAP]
sdb          8:16      0      6G     0        disk
└─sdb1       8:17      0      6G     0        part
 sdc         8:32      0      4G     0        disk
└─sdc1       8:33      0      4G     0        part
sr0          11:0      1   1024M     0        rom

[root@localhost rdc]#

lsblkの出力からわかるように、2つのパーティションがあり、それぞれがsdbとsdcにあります。

ファイルシステムを作成する

最後に、ボリュームをマウントして使用する前に、ファイルシステムを追加する必要があります。 XFSファイルシステムを使用します。

root@localhost rdc]# mkfs.xfs -f/dev/sdb1
meta-data =/dev/sdb1               isize = 512    agcount = 4, agsize = 393088 blks
            =                      sectsz = 512    attr = 2, projid32bit = 1
            =                         crc = 1      finobt = 0, sparse = 0
data        =                       bsize = 4096   blocks = 1572352, imaxpct = 25
            =                       sunit = 0      swidth = 0 blks
naming      = version 2             bsize = 4096   ascii-ci = 0 ftype = 1
log         = internal log          bsize = 4096   blocks = 2560, version = 2
            =                      sectsz = 512    sunit = 0 blks, lazy-count = 1
realtime    = none                  extsz = 4096   blocks = 0, rtextents = 0
[root@localhost rdc]# mkfs.xfs -f/dev/sdc1
meta-data   =/dev/sdc1             isize = 512    agcount = 4, agsize = 262016 blks
            =                      sectsz = 512    attr = 2, projid32bit = 1
            =                         crc = 1      finobt = 0, sparse = 0
data        =                       bsize = 4096   blocks = 1048064, imaxpct = 25
            =                       sunit = 0      swidth = 0 blks
naming      = version 2             bsize = 4096   ascii-ci = 0 ftype = 1
log         = internal log          bsize = 4096   blocks = 2560, version = 2
            =                      sectsz = 512    sunit = 0 blks, lazy-count = 1
realtime    = none                  extsz = 4096   blocks = 0, rtextents = 0

[root@localhost rdc]#

それぞれに使用可能なファイルシステムがあることを確認してみましょう。

[root@localhost rdc]# lsblk -o NAME,FSTYPE
NAME           FSTYPE
sda
├─sda1         xfs
└─sda2         LVM2_member
 ├─cl-root     xfs
 └─cl-swap     swap
sdb
└─sdb1         xfs
sdc
└─sdc1         xfs
sr0

[root@localhost rdc]#

現在、それぞれがXFSファイルシステムを使用しています。 それらをマウントし、マウントを確認して、それぞれにファイルをコピーしましょう。

[root@localhost rdc]# mount -o defaults/dev/sdb1/mnt/sdb
[root@localhost rdc]# mount -o defaults/dev/sdc1/mnt/sdc

[root@localhost ~]# touch/mnt/sdb/myFile/mnt/sdc/myFile
[root@localhost ~]# ls/mnt/sdb/mnt/sdc
/mnt/sdb:
  myFile

/mnt/sdc:
  myFile

この時点で2つの使用可能なディスクがあります。 ただし、手動でマウントした場合にのみ使用できます。 ブート時にそれぞれをマウントするには、_fstab_ファイルを編集する必要があります。 また、新しいディスクへのアクセスを必要とするグループにアクセス許可を設定する必要があります。

ボリュームグループと論理ボリュームを作成する

CentOS 7に追加された最大の機能の1つは、_System Storage Manager_または_ssm_というユーティリティが追加されたことです。 System Storage Manager は、Linux上のLVMプールとストレージボリュームの管理プロセスを大幅に簡素化します。

CentOSでシンプルボリュームプールと論理ボリュームを作成するプロセスを実行します。 最初のステップは、System Storage Managerのインストールです。

[root@localhost rdc]# yum  install system-storage-manager

_ssm list_コマンドを使用してディスクを見てみましょう。

SSMリストコマンド

上記のように、合計3つのディスクがシステムにインストールされています。

  • /sdba1 -CentOSインストールをホストします
  • /sdb1 -/mnt/sdbにマウント
  • /sdc1 -/mnt/sdcにマウント

2つのディスク(sdbとsdc)を使用して_Volume Group_を作成します。 次に、3つの3GB論理ボリュームをシステムで使用できるようにします。

ボリュームグループを作成しましょう。

[root@localhost rdc]# ssm create -p NEW_POOL/dev/sdb1/dev/sdc1

デフォルトでは、_ssm_はプールの10GB全体を拡張する単一の論理ボリュームを作成します。 これは必要ないので、これを削除しましょう。

[root@localhost rdc]# ssm remove/dev/NEW_POOL/lvol001
 Do you really want to remove active logical volume NEW_POOL/lvol001? [y/n]: y
 Logical volume "lvol001" successfully removed
[root@localhost rdc]#

最後に、3つの論理ボリュームを作成しましょう。

[root@localhost rdc]# ssm create -n disk001 --fs xfs -s 3GB -p NEW_POOL
[root@localhost rdc]# ssm create -n disk002 --fs xfs -s 3GB -p NEW_POOL
[root@localhost rdc]# ssm create -n disk003 --fs xfs -s 3GB -p NEW_POOL

それでは、新しいボリュームを確認しましょう。

ボリューム

これで、2つの物理ディスクパーティションにまたがる3つの個別の論理ボリュームがで​​きました。

論理ボリュームは、CentOS Linuxに組み込まれた強力な機能です。 これらの管理の表面に触れました。 マスタリングプールと論理ボリュームには、Tutorials Pointの練習と拡張学習が付属しています。 ここまでは、CentOSでのLVM管理の基本を学び、単一のホストで基本的なストライプ化論理ボリュームを作成する機能を備えています。