2019年11月25日月曜日

PhotonOS Disk expansion

PhotonOSでいくつかAI系のコンテナを試しているのですが、PhotonOSのディスクはデフォルトで15GBしかないので、必要なパッケージをダウンロードしているとすぐにディスクがいっぱいになってしまいます。。。

なので、PhotonOSのディスク拡張を行いました。


まずは、vSphere ClientでPhotonOSのディスクサイズを大きくします。
PhotonOSに設定されているディスクを15GBから必要なサイズに拡張します。
私の環境ではとりあえず40GBに変更しました。


変更後はPhotonOSにSSHして次の流れで操作します。

1. 再起動なしでDisk変更を認識できるように設定変更
2. partedコマンドのインストール
3. partedでディスク拡張
4. ファイルシステム拡張



まずは、1の再起動無しでディスクの境界(この場合は元々のSectorと拡張したSectorの境界)を認識できるようにします。

# echo 1 > /sys/class/block/sda/device/rescan



次に、PhotonOSにはデフォルトではディスク操作のコマンドがインストールされていないので、partedコマンドをインストールします。

tdnf install parted

Installing:
parted                   x86_64       3.2-7.ph3        photon         1.11M 1159755

Total installed size:   1.11M 1159755
Is this ok [y/N]:y

Downloading:
Testing transaction
Running transaction
Installing/Updating: parted-3.2-7.ph3.x86_64

Complete!


partedのインストールが完了したらディスクの拡張です。

# parted /dev/sda
GNU Parted 3.2
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.

(parted) print  ※拡張対象のパーティション番号を確認
print
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  9437kB  8389kB                     bios_grub
 2      9437kB  17.2GB  17.2GB  ext4  ※データ領域の2を拡張します。

(parted) resizepart 2 100% ※パーティション2を100%使う


(parted)print ※拡張されたことを確認
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 42.9GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  9437kB  8389kB                     bios_grub

 2      9437kB  42.9GB  42.9GB  ext4


(parted) quit ※partedを終了



partedでディスク拡張後に、ファイルシステムを拡張します。


# resize2fs /dev/sda2 ※ファイルシステムを拡張
resize2fs 1.44.3 (10-July-2018)
Filesystem at /dev/sda2 is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 3
The filesystem on /dev/sda2 is now 10483451 (4k) blocks long.


# df -h  ※ファイルシステムが拡張されたことを確認
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        40G  438M   38G   2% /
devtmpfs        998M     0  998M   0% /dev
tmpfs          1000M     0 1000M   0% /dev/shm
tmpfs          1000M  524K  999M   1% /run
tmpfs          1000M     0 1000M   0% /sys/fs/cgroup
tmpfs          1000M     0 1000M   0% /tmp
tmpfs           200M     0  200M   0% /run/user/0



詳細はPhotonOSのマニュアルに記載があるのでそちらを参照してください。