概要
筆者が用いているAWS Lightsail。自動起動サービスやWebサービスの追加のためメモリが心許なくなりました。
インスタンスの底上げを図る前にいったんSwap領域を確保して、メモリの枯渇に備えます。
環境
- Ubuntu 20.04
- 2GBメモリ/60GBディスクのインスタンスを利用
実施した手順
さっくりとした手順
- 現在のメモリとディスク容量を確認します。
- Swap領域を確保します。
- 確保したSwap領域を有効化します。
- Swap領域が増えたことを確認します。
- fstabを修正します。
- fstab修正後にシステムを再起動し、Swap領域有効化を確認します。
作業の前に
ディスク起動時のオプションなど、特に重要なシステム領域の設定ファイルを修正する作業です。
失敗時に復旧できるようシステム全体のバックアップを取ることを強く推奨します。
現在のメモリ情報を確認
free -h
# -hオプションは(human readableの略だそうです)
- ○実行結果
total used free shared buff/cache available
Mem: 1.9Gi 1.6Gi 114Mi 58Mi 209Mi 109Mi
Swap: 0B 0B 0B
Swapが全く作成されていません。
現在のディスク容量の確認
df -h
- ○実行結果
Filesystem Size Used Avail Use% Mounted on
/dev/root 59G 7.6G 51G 13% /
(後略)
まだ容量的に問題なさそうなので、2GBのディスク領域をSwapとして割り当てます。
Swap領域の確保
sudo fallocate -l 2G /swap
ls -ldh /swap
# 指定ディレクトリに2GBのファイルがあることを確認します
Swapの有効化
- ★/swapのパーミッション変更
sudo chmod 600 /swap
ls -ldh /swap
# rootのみが読み書き可能なことを確認します
- ★/swapの設定
sudo mkswap /swap
- ○実行結果
スワップ空間バージョン 1 を設定します。サイズ = 2 GiB (2147479552 バイト)
ラベルはありません, UUID=f6d01f7d-6a48-45e9-a483-5757ec47cd8e
- ★/swapの有効化
sudo swapon /swap
Swap有効化確認
free -h
- ○実行結果
total used free shared buff/cache available
Mem: 1.9Gi 1.2Gi 430Mi 58Mi 283Mi 499Mi
Swap: 2.0Gi 0B 2.0Gi
2GBのSwap領域が確保されました。まずは一安心です。
fstab設定
- ★/etc/fstabのバックアップ
sudo cp -pi /etc/fstab /path/to/backup/directory/fstab.$(date +%Y%m%d)
diff -u /etc/fstab /path/to/backup/directory/fstab.$(date +%Y%m%d)
# 差分が無いことでバックアップが取れていることを確認します。
- ★/etc/fstab追記
cat <<- __EOF__ | sudo tee -a /etc/fstab
/swap none swap sw 0 0
__EOF__
- ○差分確認
diff -u /path/to/backup/directory/fstab.$(date +%Y%m%d) /etc/fstab
- ●差分
+/swap none swap sw 0 0
再起動後の修正確認
- ★システム再起動
sudo reboot
- ★再起動後の確認
以下が確認できれば作業完了です。
- サーバにログインできること
- Webサービスなど既存システムが設定前と同様に稼働すること
- free -h を実行し、Swap領域が確保されていること