インフラエンジニアbacchiのわかったことまとめ

bacchi.me

LVMで論理ボリュームの作成する

VMwareを使っていて、新たに追加したディクスにLVMを設定した時のメモです。

RHEL 6, 7 で動作確認済み。

パッケージのインストール

# yum install -y lvm2
# lvm version
  LVM version:     2.02.143(2)-RHEL6 (2016-08-15)
  Library version: 1.02.117-RHEL6 (2016-08-15)
  Driver version:  4.33.1

論理ボリュームの作成

新たに追加したデバイス名は/dev/sdb となりました。

こんな感じ。

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       5.7G  2.3G  3.2G  42% /
tmpfs           499M     0  499M   0% /dev/shm
/dev/sda1        93M   53M   36M  60% /boot

# LANG=C fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001aea3

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          13      102400   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2              13         274     2097152   82  Linux swap / Solaris
Partition 2 does not end on cylinder boundary.
/dev/sda3             274        1045     6188032   83  Linux

Disk /dev/sdb: 53.7 GB, 53687091200 bytes
255 heads, 63 sectors/track, 6527 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

この上に論理ボリュームを作っていきます。

フィジカルボリューム(PV)の作成

pvcreate コマンドでフィジカルボリュームを作成する。

# pvscan 
  No matching physical volumes found

# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created

# pvscan 
  PV /dev/sdb                      lvm2 [50.00 GiB]
  Total: 1 [50.00 GiB] / in use: 0 [0   ] / in no VG: 1 [50.00 GiB]

ボリュームグループ(VG)の作成

vgcreate コマンドでボリュームグループを作成する。

# vgcreate -s 32m gvol0 /dev/sdb
  Volume group "gvol0" successfully created

※VG には 32MB * 64K = 2TB までPVを追加できる

※デフォルトは4MB * 64K = 256GB
※ gvol0 はgvol名で任意。しかし省略はできない。

# vgs -v
    Using volume group(s) on command line.
  VG    Attr   Ext    #PV #LV #SN VSize  VFree  VG UUID                                VProfile
  gvol0 wz--n- 32.00m   1   0   0 49.97g 49.97g AzKKxT-WwWp-mJRZ-D2WC-YIwk-eT6h-EBexp6

ロジカルボリューム(LV)の作成

lvcreate コマンドでロジカルヴォリュームを作成する。

# lvcreate -l 100%FREE gvol0
  Logical volume "lvol0" created.

※上記の例は全てのgvol領域をlvolに割り当てる。

※サイズを指定する場合は、-lの替りに 大文字「-L +100GB」など指定

※ オプション -n LVNAME とすれば任意のlvol名が付けれる。ここでは無指定(デフォルト)のlvol0とした。

# lvscan 
  ACTIVE            '/dev/gvol0/lvol0' [49.97 GiB] inherit

ファイルシステムの作成

ロジカルヴォリュームの作成が済んだら、ファイルシステムの作成を行う。

ext4の場合

# mkfs.ext4 /dev/gvol0/lvol

xfsの場合

# yum install kmod-xfs xfsprogs xfsprogs-devel
# mkfs.xfs /dev/gvol0/lvol0

マウント

ファイルシステムを作ったら、fstab設定を追加して、ファイルシステムをマウントする。

※fstabのオプションは適当なので、本番利用の際は要注意

# mkdir /XXX
# vim /etc/fstab
---
/dev/gvol0/lvol0 /XXX                       xfs     defaults        0 0
---
# mount -a
# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda3       5.7G  2.3G  3.2G  42% /
tmpfs           499M     0  499M   0% /dev/shm
/dev/sda1        93M   53M   36M  60% /boot
/dev/gvol0/lvol0 50G     0   50G   0% /XXX
  • B!