Logical Volume Manager の定義、I/O効率を改善する為LVMでストライプ化をテスト

                                               
###	LVMとは
-	LVMは「論理ボリューム管理：Logical Volume Manager」の略でボリューム管理をするツールです。
-       管理対象は複数の論理ボリュームを集約したLVM論理ボリュームです。


  ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/3ed2a469-466e-96a8-2eef-e83ae69113cc.png)


-	用語：

**物理ボリューム（パーティション）**　
パーティションであり、Linuxではsda1やsdb2など

**ボリュームグループ**
	物理ボリュームはボリュームグループに統合され、論理ボリュームへ割り当てるディスク領域のプールが作成される。

**論理ボリューム**
	ボリュームグループから切り出した仮想的なパーティション領域。従来のパーティションと同じようにファイルシステムを作って利用可能です。

-	LVMを利用する流れ

1.	物理ディスクから物理ボリューム（パーティション）を作成
      （sda1、sdb1、sdc1）

2.	物理ボリュームのシステムタイプを、83(Linux)から8e (LVM)に変更
3.	ボリュームグループを作成（Vol-00）
4.	論理ボリュームを作成（LogicVol-01）
5.	論理ボリュームをmount（/mnt/lvm）
	 





![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/938e0434-2417-aef0-9721-0bf6abe4208a.png)







###	LVMのの機能
-	リニアボリューム
 -	複数の物理ボリュームの領域を 1 つの論理ボリュームに統合します。
        例えば：
        60GB ディスクが 2 つある場合、120GB の論理ボリュームを作成できます。
 -	通常データは設定した順番に書き込まれます。
        PV1　⇒　PV2
 -	論理ボリュームを構成している物理ボリュームは同じサイズである必要はありません。
 -	必要に応じて容量が追加できることでオブジェクトストレージみたいものです。

 
         ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/c5b0d8d2-740a-e73c-7793-8d75b5313881.png)


　　　　

-	ストライプ化 ボリューム
 -	単一ディスクでのデータ格納とは対照的に、複数のディスクにわたってデータを分散させる手段です。そしてストライプ化では、I/O は並行して実行されますので効率を改善することができます。

 -	以下の図では、3 つの物理ボリューム全体にデータがストライプ化されている状態を示しています。

	データの 1 番目のストライプは PV1 に書き込まれます。
	データの 2 番目のストライプは PV2 に書き込まれます。
	データの 3 番目のストライプは PV３ に書き込まれます。
       	データの 4 番目のストライプは PV1 に書き込まれます。

      ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/704d8060-1ea6-925c-9123-b1509878fca8.png)


-	ミラー化 ボリューム
 -	ミラーはデータの同一コピーを異なるデバイスに維持します。データが 1 つ目のデバイスに書き込まれると、2 つ目のデバイスにも書き込まれ、データのミラー化が行われます。この重複保存は、デバイス障害に対する保護になります。
 -	ミラー化した際、同一の物理ボリュームを使用せずに異なる物理ボリュームを使用した場合、利用できるのは容量の小さな物理ボリュームのサイズとなります。 1GBディスクと2GBディスクをミラー化した場合の使用可能な容量は1GBになります。
 - 実際に各サーバでLVMのスナップショットとミラー化を利用せずにVMwareやStorageなどがスナップショットとミラー化をサポートするので、集中的に管理した方がいいです



![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/93223bd3-4069-37f2-bafc-778e0db3ed8a.png)



-	スナップショット

 -	論理ボリュームのシンプロビジョニング（thin provisioning）が可能になりました。スナップショットは、ある瞬間のファイルシステムのイメージを保持したものです。

 -	スナップショットは全データを複製するのではなく、元のデータへのリンク情報というポインタだけを残したものであるため、スナップショット領域はデータ元よりも格段に少ない容量で済み、元データが大きい場合もスナップショット作成処理は数秒で完了します。元のデータに変更が加えられた場合は、スナップショット領域に変更前のデータが退避されます。

        ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/4d043e6a-98a8-8221-45c7-8cc12146a733.png)






###	LVMでストライプ化論理ボリュームをテスト
-	I/O効率を改善することがでるので今回LVMでストライプ化のテストを実施します。
テスト目的：
 -	二つの2Tパーティションから４TBのLVM論理パーティションを組み立てて、
ストライプできるか確認します。
 -	MBR標準で２T 以上のパーティションが作成できない問題を解決します。
-	CentOSバージョンとパーティションテーブルを確認
CentOSバージョン：6.10
パーティションテーブル：msdos ➞　MBR標準です。

      ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/25449c32-fb34-1bd6-8b32-b5bf105b808f.png)



-	操作する対象のsdb、sdcを確認

     ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/4918e20b-e4d3-a531-abb7-49f01250ea56.png)


-	物理ボリュームを作成
          ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/4fca7156-4f56-1e10-50b2-d2166c2248f1.png)


-	ボリュームグループを作成
 
       ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/5b2241e5-1f58-84d8-139b-fac958562743.png)

       
-	論理ボリュームを作成
オプション：　
   -n lv-data               論理ボリューム名を指定
   -l 100%FREE        空き容量を全て使うことができる
   -i2                           ストライプするボリューム数（２）を指定
   -vg-data                   どのボリュームグループか名前を指定

 
       ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/ae91bd05-80e1-b6fa-b44e-67ec37b1a51d.png)

-	ストライプを確認
lvdisplay                 論理ボリュームの情報を表示
m                           論理ボリュームのマッピングの情報を表示
 
      ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/6209dbb8-cdc4-0e46-7385-1979a153c3bd.png)


- 	実際に論理ボリュームをmountし、データを作成してI/Oテスト
    ddで８GB のデータを作成して、I/Oテスト
    bs  　　　ブロックデータのサイズを指定
    count   　 ブロックデータの数を指定
 
     ![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/5133bf19-1c05-1249-1b8c-06582c34dc6e.png)

- 同時にiostatで観察sdbとsdcが一斉に書き込むことができました。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/229933/d6f47c57-bfa9-935e-d586-056db9a1a683.png)