GNU/Linux >> Linux の 問題 >  >> Linux

LVMでストレージを追加する

論理ボリュームマネージャー(LVM)は、オペレーティングシステムとハードウェア間の抽象化レイヤーを可能にします。通常、OSはディスク(/dev/sda)を探します 、/dev/sdb 、など)およびそれらのディスク内のパーティション(/dev/sda1/dev/sdb1 、など)。

LVMでは、オペレーティングシステムとディスクの間に仮想レイヤーが作成されます。 LVMは、1つのドライブがいくつかのパーティションを保持する代わりに、統合ストレージプール(ボリュームグループと呼ばれる)を作成します )任意の数の物理ドライブ(物理ボリュームと呼ばれる)にまたがる )。 LVMは、ボリュームグループで利用可能なストレージを使用して、ディスクとパーティションのように見えるものをOSに提供します。

そしてオペレーティングシステムは、それが「だまされている」ことを完全に認識していません。

LVMはボリュームグループと論理ボリュームを仮想的に作成するため、システムの実行中でも、それらのサイズ変更や移動、または新しいボリュームの作成を簡単に行うことができます。さらに、LVMは、最初にディスクをアンマウントせずに論理ボリュームのライブスナップショットを作成するなど、他の方法では存在しない機能を提供します。

LVMのボリュームグループは、基盤となる物理ディスクをグループ化する名前付きの仮想コンテナーです。これは、さまざまなサイズの論理ボリュームを作成できるプールとして機能します。論理ボリュームには実際のファイルシステムが含まれており、複数のディスクにまたがることができ、物理的に隣接している必要はありません。

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事
機能
  • パーティション名には通常、/dev/sda1のようなシステム指定があります 。 LVMボリュームには、homeのような通常の人間が理解できる名前が付いています またはmedia
  • パーティションの合計サイズは、基盤となる物理ディスクのサイズによって制限されます。 LVMでは、ボリュームは複数のディスクにまたがることができ、LVM内のすべての物理ディスクの合計サイズによってのみ制限されます。
  • パーティションは通常、ディスクが使用されておらず、マウントが解除されている場合にのみ、サイズ変更、移動、または削除できます。 LVMボリュームは、システムの実行中に操作できます。
  • パーティションは、パーティションに隣接する空き領域を割り当てることによってのみ拡張できます。 LVMボリュームは、どこからでも空き領域を確保できます。
  • パーティションを拡張するには、データを移動して空き領域を確保する必要があります。これには時間がかかり、停電時にデータが失われる可能性があります。 LVMボリュームは、別のディスク上であっても、ボリュームグループ内のどこからでも空き領域を確保できます。
  • LVMでボリュームを作成するのは非常に簡単なので、機能をテストしたり、さまざまなオペレーティングシステムを試したりするために個別のボリュームを作成するなど、さまざまなボリュームを作成することをお勧めします。パーティションを使用すると、このプロセスに時間がかかり、エラーが発生しやすくなります。
  • スナップショットはLVMでのみ作成できます。これにより、システムの実行中でも、現在の論理ボリュームのポイントインタイムイメージを作成できます。これはバックアップに最適です。
テストセットアップ

デモンストレーションとして、システムに次のドライブ構成があると想定します。

 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT 
xvda 202:0 0 8G 0 disk
`-xvda1 202:1 0 8G 0 part /
xvdb 202:16 0 1G disk
xvdc 202:32 0 1G 0 disk
xvdd 202:48 0 2G 0 disk
xvde 202:64 0 5G 0 disk
xvdf 202:80 0 8G / pre> ステップ1.LVMで使用するディスクを初期化します

pvcreate /dev/xvdb /dev/xvdc /dev/xvdd /dev/xvde /dev/xvdfを実行します 。出力は次のようになります:

物理ボリューム"/dev/xvdb"が正常に作成されました
物理ボリューム"/dev/xvdc"が正常に作成されました
物理ボリューム"/dev/xvdd"が正常に作成されました
物理ボリューム"/dev /xvde"が正常に作成されました
物理ボリューム"/dev/xvdf"が正常に作成されました

pvsを使用して結果を確認する またはpvdisplay

 "/ dev/xvde"は"5.00GiB"の新しい物理ボリュームです
---新しい物理ボリューム---
PV名/dev/ xvde
VG名
PVサイズ5.00ジブ

割付けNO PEサイズ0
合計PE 0
無料PE 0
割り当てられたPE 0
PV UUID 728JtI-ffZD- h2dZ-JKnV-8IOf-YKdS-8srJtn

"/ dev/xvdb"は"1.00GiB"の新しい物理ボリュームです
---新しい物理ボリューム---
PV名/dev/ xvdb
VG名
PVサイズ1.00GiB
割り当て可能NO
PEサイズPEサイズ0
>割り当てられたPE0
PV UUID zk1phS-7uXc-PjBP-5Pv9-dtAV-zKe6-8OCRkZ

"/ dev/xvdd"は"2.00GiB"の新しい物理ボリュームです
---新しい物理ボリューム---
PV名/dev/ xvdd
VG名
PVサイズ2.00GiB
割り当て可能いいえ
PES ize 0
合計PE0
無料PE0
割り当てられたPE 「/dev/xvdc」は「1.00GiB」の新しい物理ボリュームです
---新しい物理ボリューム---
PV名/dev/ xvdc
VG名
PVサイズ1.00ジブ
割付けNO
PEサイズ0
合計PE 0
無料PE 0
割り当てPE 0
PV UUID FDzcVS-sq22-2b13-cYRj -dXHf-QLjS-22Meae

"/ dev/xvdf"は"8.00GiB"の新しい物理ボリュームです
---新しい物理ボリューム---
PV名/ dev / xvdf
VG名
PVサイズ8.00GiB
割り当て可能NO
PEサイズPE0
合計PE 0
PV UUID TRVSH9-Bo5D-JHHb-g0NX-8IoS-GG6T-YV4d0p
ステップ2.ボリュームグループを作成します

vgcreate myvg /dev/xvdb /dev/xvdc /dev/xvdd /dev/xvde /dev/xvdfを実行します 。 vgsで結果を確認する またはvgdisplay

---ボリュームグループ---
VG名myvg
システムID
形式lvm2
メタデータ領域5
メタデータシーケンス番号1
VGアクセスは読み取り/書き込み
VGステータスサイズ変更可能
MAX LV 0
たCur LV 0
オープンLV 0
最大PV 0
たCur PV 5
Act PV 5
VGサイズ16.98GiB
PEサイズ4.00MiB
合計PE347/サイズ4347
Alloc PE / Alloc PE / br /> VG UUID ewrrWp-Tonj-LeFa-4Ogi-BIJJ-vztN-yrepkh

ステップ3:論理ボリュームを作成する

次のコマンドを実行します:

 lvcreate myvg --name media --size 4G 
lvcreate myvg --name home --size 4G

lvsを使用して結果を確認します またはlvdisplay

---論理ボリューム---
LVパス/dev/ myvg / media
LV名メディア
VG名-mABH-xsdF-3VBXFT
LV書き込みアクセス読み取り/書き込み
LV作成ホスト、時間ip-10-0-5-236、2017-02-03 05:29:15 +0000
LVステータス利用可能
#open 0
LVサイズ4.00GiB
現在のLE -現在256に設定されています
ブロックデバイス252:0

---論理ボリューム---
LVパス/dev/ myvg / home
LV名ホーム
VG名myvg
LV UUID Hc06sl-vtss-DuS0-jfqj-oNce-qKf6-e5qHhK
LV書き込みアクセス
LV書き込みアクセス
LV書き込みアクセス5-236、2017-02-03 05:29:40 +0000
LVステータス利用可能
#open 0
LVサイズ4.00GiB
現在のLE1024
セグメント1
割り当て現在256に設定
先読みセクターデバイス252:1

ステップ4:ファイルシステムを作成する

次を使用してファイルシステムを作成します:

 mkfs.ext3 / dev / myvg / media 
mkfs.ext3 / dev / myvg / home

マウントする:

 mount / dev / myvg / media / media 
mount / dev / myvg / home / home

lsblkを使用して完全な設定を確認する :

 NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT 
xvda 202:0 0 8G 0 disk
`-xvda1 202:1 0 8G 0 part /
xvdb disk
xvdc 202:32 0 1G 0 disk
xvdd 202:48 0 2G 0 disk
xvde 202:64 0 5G 0 disk
`-myvg 4G 0 lvm / media
xvdf 202:80 0 8G 0 disk
`-myvg-home 252:1 0 4G 0 lvm / home

ステップ5:LVMの拡張

/dev/xvdgに新しいディスクを追加します 。 homeを拡張するには ボリューム、次のコマンドを実行します:

 pvcreate / dev / xvdg 
vgextend myvg / dev / xvdg
lvextend -l 100%FREE / dev / myvg / home
resize2fs / dev / myvg / home

df -hを実行します 新しいサイズが反映されているはずです。

以上です!

LVMを使用すると、ストレージの構成方法に非常に柔軟に対応できます。試してみて、LVMを楽しんでください!


この記事は、もともと著者の個人ブログで公開されており、許可を得て改作されています。


Linux
  1. Ubuntu12.10でGlusterFS3.2.xを使用してNFSのようなスタンドアロンストレージサーバーを作成する

  2. Linuxサーバーでのブロックストレージの構成

  3. WindowsServerでのブロックストレージの構成

  1. Stratisを使用したLinuxでのローカルストレージの構成

  2. CentOS / RHEL :pvmove コマンドを使用してストレージ (LVM) を移行する方法

  3. LVM を使用して EXT4 ボリュームをオンラインで縮小することはできますか?

  1. LvmとDm-cryptでトリミングしますか?

  2. CentOS / RHEL :LVM のボリューム グループ (VG) に物理ボリューム (PV) を追加する方法

  3. lvremove コマンドがエラー「LVM – 開いている論理ボリュームを削除できません」で失敗する