CentOS では自動パーティションでインストールを実行すると LVM でパーティションが構成されます。例えば100GBのディスク1本を自動パーティションで構築すると以下のように構成されます(CentOS7.6)。
[root@localhost ~]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/centos-root 50G 1002M 49G 2% /
devtmpfs 484M 0 484M 0% /dev
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 496M 6.8M 489M 2% /run
tmpfs 496M 0 496M 0% /sys/fs/cgroup
/dev/sda1 1014M 133M 882M 14% /boot
/dev/mapper/centos-home 47G 33M 47G 1% /home
tmpfs 100M 0 100M 0% /run/user/0
LVM だとデバイスマッパーという機能によりデバイス名が「/dev/mapper/VG名-LV名」となります。パーティション別に見てみると、sda1 は 83 の標準パーティションで /boot にマウントされています。sda2 は 8e で LVM です。
[root@localhost ~]# fdisk -l
Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0x000b255b
デバイス ブート 始点 終点 ブロック Id システム
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 209715199 103808000 8e Linux LVM
このように、インストールを適当に行うといつの間にか LVM になっています。後述しますが、LVM は基本的に使わなくてもよい機能です。ここからは LVM とは何なのかについて掘り下げていきます。
LVM と RAID の違い
LVM と RAID は同じディスク関連の技術ということもあり混乱しがちです。ここでは LVM と RAID の違いについて記載します。まずは RAID からです。
RAID
RAID は 1987年、カリフォルニア大学バークレー校の Patterson、Gibson、Katz の3人が発表した論文「 A Case for Redundant Arrays of Inexpensive Disks (RAID)」で初めて登場しました。
この論文は、メインフレームで一般的に使用されていた大容量ディスクドライブ の代わりに、低容量・低価格、そして比較的信頼性の低いディスクドライブを使用する方法について語られていたもので、RAID1~RAID5 がこの論文で既に定義されていました。
つまり RAID とは以下の3つを目的とした技術です。
- 複数のディスクを束ねて1本の大きなディスクとして扱う
- 冗長化による耐障害性の向上
- read/write の分散による処理速度の向上
RAID はディスクが安価になった現代でもよく利用されます。特にハードウェア RAID の場合、RAID でディスクを束ねていても OS からは1本のディスクに見える為、簡単に耐障害性と処理速度を向上することができます。
なお、時代の流れを反映して RAID という用語の定義は「inexpensive」から「independent」に改められています。
LVM
RAID がディスクを直接束ねるのに対し、LVM はパーティションを束ねます。束ねたパーティションはボリュームグループと呼ばれ、ボリュームグループから論理ボリュームを作成することができます。
例えば 100GB のディスクが3本あり、それぞれパーティションが 50GB×2 用意されていたとします。各ディスクからパーティションを1つずつボリュームグルプに追加すると、150GB のボリュームグループが作成されます。それをそのまま論理ボリュームにすると150GB です。つまり本来のディスク容量以上のパーティションを作成することが可能です。この辺りの機能は RAID と重なっている部分があります。
LVM の一番の特徴は論理ボリュームの容量をリサイズできることでしょう。ここが明確に RAID と異なる点です。
LVM は基本的に使わない
実際にサーバを構築する際、LVM はあまり利用する機会がないかもしれません。例えば NEC だと LVM は非推奨とまではいかないものの、推奨はされていません。
OS をインストールするディスクのパーティションタイプは[標準パーティション]を推奨します。ソフトウェア RAID や LVM は高度なストレージ機能を提供しますが、管理手順や障害復旧手順が複雑になりますので、必要な場合にだけ使用することを推奨します。
RedHat Enterprise Linux 7 Server のデフォルトファイルシステムは xfs ですが、動作実績の豊富な ext4 を使用されることを推奨します。
NEC Express5800/R110j-1 インストレーションガイド
LVM は利用しない方が「無難」です。