HDD拡張に対応のVPSインスタンスへのswap設定

VPSのインスタンスにswapが無いケースへの対応

AWSやクラウドなどで提供のVPSのインスタンスに、swapの設定がないケースがあります。またインスタンスのスペックが変更(HDDの拡張など)対応の仕様などでは、パーティションも1個のみでswap パーティションが無いこともあります。

スワップが無いとマシンのメモリを使いきるとフリーズしますので、負荷のかかるサーバーではスワップは必要です

 

swapの追加方法

awsの場合には、ephemeral をスワップに利用する方法もありますが、今回はfstabを変更せずに、起動時にrc.local などでswap file を有効にする方法を使います。

/etc/rc.local の記載例

# chmod  +x  /etc/rc.d/rc.local
# cat  /etc/rc.local

#!/bin/bash
# — add swapfile —

SWAPFILE=/swapfile

if [ -e $SWAPFILE ] ; then
swapon $SWAPFILE

else
dd if=/dev/zero of=$SWAPFILE bs=1024K count=1024
chmod 600 $SWAPFILE
mkswap $SWAPFILE
swapon $SWAPFILE
fi

# free
total   used   free   shared  buff/cache  available
Mem: 1883984  139512  436544  16820  1307928   1558556
Swap: 1048572    0   1048572

1GBのスワップが追加されています

# cat  /etc/fstab

UUID=9a09b91e-f444-4e4b  /  xfs  defaults,usrquota,grpquota  0  0