要件
元々20GB
だったTargetHostサーバに、新しいHDD30GB
を追加したい。
手順メモ
HDDの追加
今回はESXi上の仮想マシンだったため、Vsphereで新しいHDDを論理的に追加しました。
物理サーバーだったら、内蔵ディスクを増設したり、外付けHDDを追加接続するイメージです。
HDDがOSからどう認識されているか確認
[root@TargetHost dev]# fdisk -l
ディスク /dev/sda: 21.5 GB, 21474836480 バイト
ヘッド 64, セクタ 32, シリンダ 20480
Units = シリンダ数 of 2048 * 512 = 1048576 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x000c12df
デバイス ブート 始点 終点 ブロック Id システム
/dev/sda1 * 2 501 512000 83 Linux
パーティション 1 は、シリンダ境界で終わっていません。
/dev/sda2 502 20480 20458496 8e Linux LVM
パーティション 2 は、シリンダ境界で終わっていません。
ディスク /dev/mapper/vg_centos6target-lv_root: 18.8 GB, 18798870528 バイト
ヘッド 255, セクタ 63, シリンダ 2285
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x00000000
ディスク /dev/mapper/vg_centos6target-lv_swap: 2147 MB, 2147483648 バイト
ヘッド 255, セクタ 63, シリンダ 261
Units = シリンダ数 of 16065 * 512 = 8225280 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x00000000
ディスク /dev/sdb: 32.2 GB, 32212254720 バイト
ヘッド 64, セクタ 32, シリンダ 30720
Units = シリンダ数 of 2048 * 512 = 1048576 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O size (minimum/optimal): 512 bytes / 512 bytes
ディスク識別子: 0x00000000
新しく追加したHDDが、sdb
として認識されていることがわかります。
新しいHDD上にPVを作成
[root@TargetHost dev]# pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created
拡張したいLVが含まれるVGに新しいPVを追加
以下は既存のVG vg_targethostserver
にPV /dev/sdb
を追加する場合の実行例。
既存VGの確認は、もう一つ下の手順参照。
[root@TargetHost ~]# vgextend vg_targethostserver /dev/sdb
Volume group "vg_targethostserver" successfully extended
VGの確認
vgdisplay を実行し実行結果の--- Physical volumes ---
の部分を見ることで、新しいPVが追加されたことを確認できます。
[root@TargetHost ~]# vgdisplay -v
Finding all volume groups
Finding volume group "vg_targethostserver"
--- Volume group ---
VG Name vg_targethostserver
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 49.50 GiB
PE Size 4.00 MiB
Total PE 12673
Alloc PE / Size 4994 / 19.51 GiB
Free PE / Size 7679 / 30.00 GiB
VG UUID uwLcTX-A3qe-u6As-kB1r-GniV-maUj-sLydnk
--- Logical volume ---
LV Path /dev/vg_targethostserver/lv_root
LV Name lv_root
VG Name vg_targethostserver
LV UUID 3MPIJd-2MHJ-hH1N-U0e2-b2Jh-6AlV-hAsRQO
LV Write Access read/write
LV Creation host, time centos6target, 2014-05-09 04:52:58 +0900
LV Status available
# open 1
LV Size 17.51 GiB
Current LE 4482
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/vg_targethostserver/lv_swap
LV Name lv_swap
VG Name vg_targethostserver
LV UUID he2HLI-lCSO-XgZL-yM0u-prON-CvxS-ngmqYP
LV Write Access read/write
LV Creation host, time centos6target, 2014-05-09 04:53:06 +0900
LV Status available
# open 1
LV Size 2.00 GiB
Current LE 512
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
--- Physical volumes ---
PV Name /dev/sda2
PV UUID nQnUoY-pxQV-sOL2-Wf1D-vDbg-cAAb-W5hYUH
PV Status allocatable
Total PE / Free PE 4994 / 0
PV Name /dev/sdb
PV UUID HoxWHo-urf3-Djea-dhUB-Y3Ht-cdqe-7BsAsT
PV Status allocatable
Total PE / Free PE 7679 / 7679
LVの拡張
lvextend
を実行することで、拡張されたVGの未使用領域をLVに追加できます。
以下はVG上の未使用領域のすべてをLVに追加する場合の実行例となります。
[root@TargetHost ~]# lvextend -l +100%FREE /dev/vg_targethostserver/lv_root
Extending logical volume lv_root to 47.50 GiB
Logical volume lv_root successfully resized
ファイルシステムの拡張
LVを拡張してもファイルシステムは以前の大きさのままなので、最後にファイルシステムの拡張も行う必要があります。
ext3/ext4
の場合はresize2fs
を実行します。
xfs
の場合はxfs_growfs
を実行します。CentOS7系だと基本的にはxfs
だと思います。
なおこの処理は数分かかる場合もあります。
[root@TargetHost ~]# resize2fs /dev/vg_targethostserver/lv_root
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/vg_targethostserver/lv_root is mounted on /; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 3
Performing an on-line resize of /dev/vg_targethostserver/lv_root to 12452864 (4k) blocks.
The filesystem on /dev/vg_targethostserver/lv_root is now 12452864 blocks long.
処理完了後、dfコマンドでファイルシステムが拡張されたことを確認します。
[root@TargetHost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_targethostserver-lv_root
47G 1.5G 43G 4% /
tmpfs 939M 0 939M 0% /dev/shm
/dev/sda1 485M 75M 385M 17% /boot
以上です!