メインコンテンツに移動

LVM

なんかさっぱりわからんので学習する。学習するには歳をとりすぎているが、学習しろとサーバーが言うので、仕方がない。老骨に鞭打って学んでみよう。Google神よ、われに知識を与えよちちんぷいぷい

そもそも論

LVMとMDは混ぜて使うので,混乱しがちである.

  • MD: いわゆるsoftwareRAID. 複数ディスクを用いて,冗長性のある一つの「仮想物理ディスク」を作成する.
    • いくら対故障性があっても,softwareRAIDであるので,設定ファイルはOSと一緒に書いてあるので,OSを交換する際にはデータは消失する.
    • OS交換でも耐えられる「可能性」があるのはhardwareRAIDだけである.とjはいえ.OSが交換になるには5〜10年かかるので,その間に「こげな古いデバイスは知らん」となることが多い.
    • つまり解決策など存在しない.適当に頑張るのだ.
  • LVM: 複数の「物理ディスク」を結合して, サイズが伸長可能な「ボリュームグループ」という「仮想物理ディスク」を作成する.
    • ボリュームグループ上に,仮想パーティション「論理ボリューム」を作成する.

  • mdデバイスにすると,耐故障性がある物理ボリュームができる.
  • mdデバイス上にボリュームグループを,通常ひとつ作成する.ボリュームグループのサイズが足りなくなったら,後から別のmdデバイスを混ぜて容量を増やすことができる.
  • ボリュームグループに, 必要なだけのパーティション(論理ボリューム)を作成し, OSを入れたり,データを入れたりする.

LVMを使うには、以下の手順を踏めクソども

 

ディスクをマシンに接続しやがれ

いや、つなぐんちゃいますの、ぷちっと

RAIDを組みやがれ

まあこんな感じか?

# mdadm --create --verbose --assume-clean --raid-devices=8 --level=raid10 /dev/md16 /dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdg /dev/sdh /dev/sdi

mdadmで作れるのは raid5, raid10 くらいか.raid10だとディスクは偶数本である.だが,再起動すると /dev/sdXX って変わる場合があるので,これだけでは再起動に耐えられない.Redhatも

  • コマンドによる変更は現行セッションにのみ適用され、システムの再起動は維持されません

それじゃこまるので.

# mdadm --detail --scan > /etc/mdadm.conf

 ファイルの中身は

ARRAY /dev/md16 metadata=1.2 UUID=a6bb52b0:60407f86:8b8d46a5:6c4851f4

こんなかんじ.

物理ボリュームを作成しろボケ

だれがいつ作成するのか知らない。え?俺が作るのか?まじ?

例えばあなたが3TBのディスクを12個持っていたとしましょう。今時、3TBのディスクなんて、クソの役にも立ちません。そこで、3TBのディスクを12個並べて36TBのディスクにすると、まあ使い道も出てきます。で、それを1個の物理ボリュームとして認識するわけです。

物理ボリュームを表示

あんたが保有するPVはpvdisplayで表示できますよタコ:

# pvdisplay
PV Nome /dev/md127
PV Size 874GB

ボリュームグループを作れタコ

これは作ったかもしれない。論理ボリュームを束ねた「フォルダー」みたいなものであろう。

ボリュームグループを表示

お前のVGはvgdisplayで表示できるぞクソ野郎:

# vgdisplay
VG Name cs-raid0
Format lvm2
Current LV  3

論理ボリュームだぞカス野郎

論理ボリューム(Lonri Volume)とは、従来のディスクにそうとうするやつね。

論理ボリュームを表示

 LVを表示するのは

# lvdisplay
---Logical Volume---
LV Path      /dev/cs-raid0/local_disk1
LV Name    local_disk1
VG Name   cs-raid0
LV Status   NOT Available

論理ボリュームを有効にする

VGに含まれている全てのLVを有効化するには

# vgchange -a y

である。

既存の論理ボリュームを破毀

腐ったLVなど、既存のLVを消去するには

# lvremove  LV_Path   ←パスを指定する。/dev/cs-raid7/ld1257A とか、そんな感じね

である。

既存の論理ボリュームを増量

論理ボリュームサイズを増加させることができる。

# lvextend --size +100G /dev/cs-raid0/root   ←LV_Path /dev/cs-raid0/root のサイズを100GB増量

論理ボリュームが増量されても、その上にフォーマットして作ったファイルシステムが増量することはない。つまり、役には立たない。フォーマット時に指定したファイルシステムがXFSであれば増量させることができる:

# xfs_growfs  /local/disk32マウントポイントを指定すると、限界まで増える。

新規の論理ボリュームを生成

論理ボリュームを作ることができる。

# lvcreate --extents 100%FREE --name local_disk1 /dev/cs-raid0 ← VG_Path に指定した名前で残量100%で作成

おぬしもわるよのう

論理ボリュームをフォーマット

論理ボリュームディスクは、使う前に「フォーマット」します。これは、CentOSのディスクマネージャを使った方が早いっすね。

論理ボリュームはマウント

できるんすよね、たしか. Macとかだとほれ、Finderで「取り出しボタン」とかが出る、あれっす。これもCentOSのディスクマネージャを使った方が早いっすね。

File attachments
添付 サイズ
LVM.odg_.zip 35.02 KB