実はスナップショットがあると既存ディスクのサイズ拡張ができなかったので、新しくディスクを作成してパーティションサイズを拡張した。
内容は、上記の「サイズ拡張した領域にパーティション作成して拡張」が「新しく追加したディスクにパーティション作成して拡張」になったので、手順は同じ。
環境は、ESXiは6.5、VMのOSはCent OS 7
VMにディスクを追加
ESXiでディスクを新規作成して追加する。(通常の手順)
VMを起動
[zaki@manager-dev ~]$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 12M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-root 16G 9.6G 6.0G 62% / /dev/sda1 1014M 292M 723M 29% /boot tmpfs 378M 0 378M 0% /run/user/1000
デバイス確認
[zaki@manager-dev ~]$ sudo fdisk -l Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x0009f820 デバイス ブート 始点 終点 ブロック Id システム /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 41943039 19921920 8e Linux LVM Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
パーティションが何もない/dev/sdb
が新しいディスク。
パーティション作成
[zaki@manager-dev ~]$ sudo fdisk /dev/sdb Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0x804cc948. コマンド (m でヘルプ): p Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x804cc948 デバイス ブート 始点 終点 ブロック Id システム コマンド (m でヘルプ): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p パーティション番号 (1-4, default 1): 最初 sector (2048-41943039, 初期値 2048): 初期値 2048 を使います Last sector, +sectors or +size{K,M,G} (2048-41943039, 初期値 41943039): 初期値 41943039 を使います Partition 1 of type Linux and of size 20 GiB is set コマンド (m でヘルプ): p Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x804cc948 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 2048 41943039 20970496 83 Linux コマンド (m でヘルプ):
typeをLinux LVMに
コマンド (m でヘルプ): t Selected partition 1 Hex code (type L to list all codes): L 0 空 24 NEC DOS 81 Minix / 古い Li bf Solaris 1 FAT12 27 Hidden NTFS Win 82 Linux スワップ c1 DRDOS/sec (FAT- 2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 3c PartitionMagic 84 OS/2 隠し C: ド c6 DRDOS/sec (FAT- 4 FAT16 <32M 40 Venix 80286 85 Linux 拡張領域 c7 Syrinx 5 拡張領域 41 PPC PReP Boot 86 NTFS ボリューム da 非 FS データ 6 FAT16 42 SFS 87 NTFS ボリューム db CP/M / CTOS / . 7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux プレーン de Dell ユーティリ 8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt 9 AIX ブート可能 4f QNX4.x 3rd part 93 Amoeba e1 DOS access a OS/2 ブートマネ 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad ハ eb BeOS fs e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD ee GPT f W95 拡張領域 (L 54 OnTrackDM6 a6 OpenBSD ef EFI (FAT-12/16/ 10 OPUS 55 EZ-Drive a7 NeXTSTEP f0 Linux/PA-RISC 11 隠し FAT12 56 Golden Bow a8 Darwin UFS f1 SpeedStor 12 Compaq 診断 5c Priam Edisk a9 NetBSD f4 SpeedStor 14 隠し FAT16 <32M 61 SpeedStor ab Darwin ブート f2 DOS セカンダリ 16 隠し FAT16 63 GNU HURD または af HFS / HFS+ fb VMware VMFS 17 隠し HPFS/NTFS 64 Novell Netware b7 BSDI fs fc VMware VMKCORE 18 AST SmartSleep 65 Novell Netware b8 BSDI スワップ fd Linux raid 自動 1b 隠し W95 FAT32 70 DiskSecure Mult bb 隠し Boot Wizar fe LANstep 1c 隠し W95 FAT32 75 PC/IX be Solaris ブート ff BBT 1e 隠し W95 FAT16 80 古い Minix Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' コマンド (m でヘルプ): p Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト Disk label type: dos ディスク識別子: 0x804cc948 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 2048 41943039 20970496 8e Linux LVM コマンド (m でヘルプ):
コマンド (m でヘルプ): w パーティションテーブルは変更されました! ioctl() を呼び出してパーティションテーブルを再読込みします。 ディスクを同期しています。 [zaki@manager-dev ~]$
PV作成
[zaki@manager-dev ~]$ sudo pvcreate /dev/sdb1 Physical volume "/dev/sdb1" successfully created. [zaki@manager-dev ~]$ sudo pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size <19.00 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 4863 Free PE 0 Allocated PE 4863 PV UUID b4agB4-x8BO-5S1d-TBqO-eAy5-j1Oh-esCLH0 "/dev/sdb1" is a new physical volume of "<20.00 GiB" --- NEW Physical volume --- PV Name /dev/sdb1 VG Name PV Size <20.00 GiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID HZOcQv-sADc-9hGs-a82C-sCBF-iV8y-4fCzbQ [zaki@manager-dev ~]$
/dev/sdb1
が作成された。
VGに割り当て
既存のVG Name: centos
に割り当てる。
[zaki@manager-dev ~]$ sudo vgextend centos /dev/sdb1 Volume group "centos" successfully extended [zaki@manager-dev ~]$ [zaki@manager-dev ~]$ [zaki@manager-dev ~]$ sudo pvdisplay --- Physical volume --- PV Name /dev/sda2 VG Name centos PV Size <19.00 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 4863 Free PE 0 Allocated PE 4863 PV UUID b4agB4-x8BO-5S1d-TBqO-eAy5-j1Oh-esCLH0 --- Physical volume --- PV Name /dev/sdb1 VG Name centos PV Size <20.00 GiB / not usable 3.00 MiB Allocatable yes PE Size 4.00 MiB Total PE 5119 Free PE 5119 Allocated PE 0 PV UUID HZOcQv-sADc-9hGs-a82C-sCBF-iV8y-4fCzbQ
LVに割り当て
[zaki@manager-dev ~]$ sudo lvdisplay --- Logical volume --- LV Path /dev/centos/swap LV Name swap VG Name centos LV UUID Hjx34Z-CG7J-cKUz-C1xw-0UGo-TzWU-kD1OIG LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-01-18 20:23:50 +0900 LV Status available # open 2 LV Size 3.50 GiB Current LE 896 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:1 --- Logical volume --- LV Path /dev/centos/root LV Name root VG Name centos LV UUID 8RekUb-5l0N-3doV-hhNJ-6Tdw-kaTU-VDcYnS LV Write Access read/write LV Creation host, time localhost.localdomain, 2020-01-18 20:23:50 +0900 LV Status available # open 1 LV Size <15.50 GiB Current LE 3967 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:0 [zaki@manager-dev ~]$
LV Path: /dev/centos/root
を拡張する
[zaki@manager-dev ~]$ sudo lvextend -l +100%FREE /dev/centos/root Size of logical volume centos/root changed from <15.50 GiB (3967 extents) to 35.49 GiB (9086 extents). Logical volume centos/root successfully resized.
パーティションを拡張
[zaki@manager-dev ~]$ [zaki@manager-dev ~]$ sudo xfs_growfs /dev/centos/root meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=1015552 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=4062208, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 4062208 to 9304064 [zaki@manager-dev ~]$ [zaki@manager-dev ~]$ [zaki@manager-dev ~]$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 12M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-root 36G 9.6G 26G 27% / /dev/sda1 1014M 292M 723M 29% /boot tmpfs 378M 0 378M 0% /run/user/1000
これで20GBのディスク2つで、一つの40GBのパーティションとなった。
たぶんこっちの方が正しいやり方なんだろうな。。
参考サイト
前回と同じく、CentOS7 LVM を使ってディスクを拡張する | りんか ネット さんより。
(参考)ディスクサイズ拡張失敗の内容
ちなみに、スナップショットがある(正確には不明。調査した限りでの切り分けポイントがスナップショットの有無だった)と、以下のエラーでディスクサイズの変更(拡張)に失敗するけど詳細がよくわからなかった。
Reconfig VM
項目 | 値 |
---|---|
キー | haTask-106-vim.VirtualMachine.reconfigure-170623095 |
説明 | この仮想マシンを再設定します。 |
仮想マシン | cloud-dev |
状態 | 失敗 - デバイス「2」では無効な操作です。 |
エラー |