:::: MENU ::::

C.a.T!

CATch a TAIL!

Japanese sub culture and tech.

  • 2015/01/14
  • 0
develop

LVM+xfsな構成にディスクを追加する

20150114

foltiaサーバにディスク2台載っけていたのだけど、運用が落ち着くまでと放置していた4Tのディスクを組み込みました。その時、録画領域のLVMに追加するのだけど、xfsを拡張させるのって始めてだった。

LVMの拡張は何度もしたことあるんだけど、xfsってほとんど使ったことなかったので、拡張の仕方分からないかった。とりあえず、LVMにディスク追加するのをおさらいしておくと。

[[email protected] ~]$ sudo parted
GNU Parted 2.1
/dev/sda を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) select /dev/sdb
/dev/sdb を使用
(parted) mklabel gpt
警告: いま存在している /dev/sdb のディスクラベルは破壊され、このディスクの全データが失われます。続行しますか?
はい(Y)/Yes/いいえ(N)/No? Y
(parted) print
モデル: ATA WDC WD40EZRX-00S (scsi)
ディスク /dev/sdb: 4001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始  終了  サイズ  ファイルシステム  名前  フラグ

(parted) mkpart primary 0% 100%
(parted) print
モデル: ATA WDC WD40EZRX-00S (scsi)
ディスク /dev/sdb: 4001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    1049kB  4001GB  4001GB  ext4              primary

(parted) set 1 lvm on
(parted) print
モデル: ATA WDC WD40EZRX-00S (scsi)
ディスク /dev/sdb: 4001GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    1049kB  4001GB  4001GB  ext4              primary  lvm

(parted) q
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。

[[email protected] ~]$ sudo pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created
[[email protected] ~]$ sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda4
  VG Name               tank
  PV Size               1.81 TiB / not usable 2.20 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              473594
  Free PE               0
  Allocated PE          473594
  PV UUID               Il2iw4-5TGB-vdqd-6Qep-xU7Y-UjOI-j1LUZ0

  "/dev/sdb1" is a new physical volume of "3.64 TiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name
  PV Size               3.64 TiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               eR5bfA-sKiZ-FVnG-aEs3-5w3k-APU8-cxwe91

[[email protected] ~]$ sudo vgextend  tank /dev/sdb1
  Volume group "tank" successfully extended
[[email protected] ~]$ sudo vgdisplay
  --- Volume group ---
  VG Name               tank
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               5.45 TiB
  PE Size               4.00 MiB
  Total PE              1427455
  Alloc PE / Size       473594 / 1.81 TiB
  Free  PE / Size       953861 / 3.64 TiB
  VG UUID               ve2CWJ-AfQU-0C52-FzDO-1oo8-J8W9-EECt1J

[[email protected] ~]$ sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda4
  VG Name               tank
  PV Size               1.81 TiB / not usable 2.20 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              473594
  Free PE               0
  Allocated PE          473594
  PV UUID               Il2iw4-5TGB-vdqd-6Qep-xU7Y-UjOI-j1LUZ0

  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               tank
  PV Size               3.64 TiB / not usable 2.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              953861
  Free PE               953861
  Allocated PE          0
  PV UUID               eR5bfA-sKiZ-FVnG-aEs3-5w3k-APU8-cxwe91

[[email protected] ~]$ sudo lvextend -l +100%FREE /dev/tank/tv
  Size of logical volume tank/tv changed from 1.81 TiB (473594 extents) to 5.45 TiB (1427455 extents).
  Logical volume tv successfully resized

[[email protected] ~]$ sudo lvdisplay
  --- Logical volume ---
  LV Path                /dev/tank/tv
  LV Name                tv
  VG Name                tank
  LV UUID                2KmNew-eBN4-8dQW-fuHW-eVUt-W6ea-b7cmDf
  LV Write Access        read/write
  LV Creation host, time foltiainstall.local, 2014-12-28 18:11:57 +0900
  LV Status              available
  # open                 0
  LV Size                5.45 TiB
  Current LE             1427455
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0

と、こんなかんじでディスクをLVMに追加。で、肝心のxfsファイルシステムの拡張ですが、以下のコマンド一発で一瞬でした。

[[email protected] ~]$ sudo xfs_growfs /home/foltia/php/tv
meta-data=/dev/mapper/tank-tv    isize=256    agcount=32, agsize=15155008 blks
         =                       sectsz=4096  attr=2, projid32bit=0
data     =                       bsize=4096   blocks=484960256, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=236797, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 484960256 to 1461713920

マウントしたまま拡張できるというのがなんともキモいのですが、なんかすごい簡単。時間もかからず。これで、無事6T近くの録画領域が確保出来ました。


Leave a comment