LVMとは
- LVMは「論理ボリューム管理:Logical Volume Manager」の略でボリューム管理をするツールです。
- 管理対象は複数の論理ボリュームを集約したLVM論理ボリュームです。
- 用語:
物理ボリューム(パーティション)
パーティションであり、Linuxではsda1やsdb2など
ボリュームグループ
物理ボリュームはボリュームグループに統合され、論理ボリュームへ割り当てるディスク領域のプールが作成される。
論理ボリューム
ボリュームグループから切り出した仮想的なパーティション領域。従来のパーティションと同じようにファイルシステムを作って利用可能です。
- LVMを利用する流れ
物理ディスクから物理ボリューム(パーティション)を作成
(sda1、sdb1、sdc1)物理ボリュームのシステムタイプを、83(Linux)から8e (LVM)に変更
ボリュームグループを作成(Vol-00)
論理ボリュームを作成(LogicVol-01)
論理ボリュームをmount(/mnt/lvm)
LVMのの機能
-
リニアボリューム
-
ストライプ化 ボリューム
- 単一ディスクでのデータ格納とは対照的に、複数のディスクにわたってデータを分散させる手段です。そしてストライプ化では、I/O は並行して実行されますので効率を改善することができます。
- 以下の図では、3 つの物理ボリューム全体にデータがストライプ化されている状態を示しています。
データの 1 番目のストライプは PV1 に書き込まれます。
データの 2 番目のストライプは PV2 に書き込まれます。
データの 3 番目のストライプは PV3 に書き込まれます。
データの 4 番目のストライプは PV1 に書き込まれます。 -
ミラー化 ボリューム
- ミラーはデータの同一コピーを異なるデバイスに維持します。データが 1 つ目のデバイスに書き込まれると、2 つ目のデバイスにも書き込まれ、データのミラー化が行われます。この重複保存は、デバイス障害に対する保護になります。
- ミラー化した際、同一の物理ボリュームを使用せずに異なる物理ボリュームを使用した場合、利用できるのは容量の小さな物理ボリュームのサイズとなります。 1GBディスクと2GBディスクをミラー化した場合の使用可能な容量は1GBになります。
- 実際に各サーバでLVMのスナップショットとミラー化を利用せずにVMwareやStorageなどがスナップショットとミラー化をサポートするので、集中的に管理した方がいいです
-
スナップショット
LVMでストライプ化論理ボリュームをテスト
- I/O効率を改善することがでるので今回LVMでストライプ化のテストを実施します。
テスト目的:
- 二つの2Tパーティションから4TBのLVM論理パーティションを組み立てて、 ストライプできるか確認します。
- MBR標準で2T 以上のパーティションが作成できない問題を解決します。
-
CentOSバージョンとパーティションテーブルを確認
CentOSバージョン:6.10
パーティションテーブル:msdos ➞ MBR標準です。 -
操作する対象のsdb、sdcを確認
-
ボリュームグループを作成
-
論理ボリュームを作成
オプション:
-n lv-data 論理ボリューム名を指定
-l 100%FREE 空き容量を全て使うことができる
-i2 ストライプするボリューム数(2)を指定
-vg-data どのボリュームグループか名前を指定 -
ストライプを確認
lvdisplay 論理ボリュームの情報を表示
m 論理ボリュームのマッピングの情報を表示 -
実際に論理ボリュームをmountし、データを作成してI/Oテスト
ddで8GB のデータを作成して、I/Oテスト
bs ブロックデータのサイズを指定
count ブロックデータの数を指定