Swap メモリを設定する / AlmaLinux9.4 on さくらのVPS

アフィリエイト広告を利用しています

このページの内容が役に立ったら X (旧twitter) でフォローして頂けると励みになります
挨拶や報告は無しで大丈夫です

AlmaLinux9.4 にSwapメモリを設定します。

なお本番環境で利用される場合はここにある内容だけを鵜呑みにせずセキュリティ専門家に相談されることをお勧めします。

環境

実施日2024-06-18
サーバさくらのVPS 2G
OSAlmaLinux9.4
cat /etc/redhat-release
AlmaLinux release 9.4 (Seafoam Ocelot)

Swapメモリはデフォルトで設定されていない

最近、メモリ不足が原因のトラブルを目にする機会が多くなってきました。

アプリがインストールできない、WEBサイトが原因不明で不定期に落ちる、CPU負荷が異常などなど

原因としては「メモリが足りないから」なのですが、その原因というのが「Swapメモリが設定されていないから」となります。

AlmaLinuxにしてもRocky LinuxにしてもCentOS Stream 9にしてもOSをインストールしただけのデフォルトではSwapが設定されていないようです。

CentOS Stream 8 ではこの問題は経験していないので、Stream 9 あたりの時期が怪しいです。

最近は物理メモリも巨大になってきているのでSwapはむしろボトルネックになる、という考えなのかもしれません。

ということで、少なめなメモリを搭載している場合はSwapメモリの設定をしておきましょう。

Swapが未設定であることを確認

free でメモリを見てみましょう

free -m

▼ さくらのVPS 4GB プラン

▼ さくらのVPS 500MB プラン

Swap 0 0 0

スワップが設定されていないことが確認できます。

Swap メモリを設定する

ということで、swap メモリを設定すると良さそうです。

よく言われるのは「実メモリと同程度」

今回は 500MB のメモリなので、スワップメモリも 500MB で設定してきます。

free -m
# スワップファイルを作成
fallocate -l 500M /swapfile

# 権限を設定
chmod 600 /swapfile

# スワップファイルをスワップ領域として設定
mkswap /swapfile

# スワップファイルを有効にする
swapon /swapfile

# 有効になったことを確認
swapon --show

スワップファイルを永続化する
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

確認

free -m

無事、Swapメモリが作成できました。