Linux管理者-ボリューム管理

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

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

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

PV 物理ボリューム sda
PP 物理パーティション sda1、sda2
VG ボリュームグループ プールされた物理リソース
LV 論理ボリューム オペレーティングシステムのストレージ機能と見なされます

A physical volume/ dev / sda、/ dev / sdbとして表示されます。Linuxによって検出された物理ディスク。

A physical partitionfdiskなどのディスクユーティリティによってパーティション化されたディスクのセクションになります。ほとんどの一般的なLVMセットアップでは、物理パーティションは推奨されないことに注意してください。例:ディスク/ dev / sdaは、/ dev / sda1/ dev / sda1の2つの物理パーティションを含むようにパーティション化されています

それぞれ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をいじくり回したくありません。このチュートリアルでは、sdbsdcの両方がシステムに追加されました。これらのディスクを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コマンドを実行するだけです。

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

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

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

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

管理できる最も近い場所は、17.4kBから1048kB(セクター34..2047)です。

これはまだあなたに受け入れられますか?

はい・いいえ?番号

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

Information − / 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 StorageManagerまたはssmと呼ばれるユーティリティが含まれていることでした。System Storage Manager LinuxでLVMプールとストレージボリュームを管理するプロセスを大幅に簡素化します。

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

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

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

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

  • /sdba1 −CentOSインストールをホストします

  • /sdb1 − / mnt / sdbにマウント

  • /sdc1 − / mnt / sdcにマウント

私たちがやりたいのは、2つのディスク(sdbとsdc)を使用してボリュームグループを作成することです。次に、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つの個別の論理ボリュームがで​​きました。

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