GCEのスワップ領域の確保

Google Compute Engineでは、f1.micro インスタンスが一定の条件下で無料で使用できる。

ただしスペックは弱く、特にメモリが600MBなので、がっつり計算させたりビルドなどの用途には向かない。

とはいえ、ソフトウェアやカーネルのアップグレード時など、しないわけにはいかない処理でも意図せずビルドや重たい処理が走ることがある。 特にそんなときにメモリ不足で止まるのは、マシンの整合性が壊れる可能性があり、危ない。

そこで、ストレージをスワップ領域として使うよう確保しておく方法がある。(処理時間はかかるが)

幸い、ストレージは30GBまで無料枠なので、多少、スワップに回す余裕はある。

環境

  • Ubuntu 18.04

方法

ほとんどコピペ。

事前確認。Swapが0になっている。

$ free -m
              total        used        free      shared  buff/cache   available
Mem:            xxx         xxx         xxx         xxx         xxx         xxx
Swap:             0           0           0

スワップファイルの作成(とりあえず1GB)

$ sudo dd if=/dev/zero of=/swapfile bs=1M count=1024

権限設定と、スワップとしての登録・有効化

$ sudo chmod 600 /swapfile
$ sudo mkswap /swapfile
$ sudo swapon /swapfile

確認

$ free -m

マシン再起動時にも自動的に割り当てられるよう登録

$ sudo vim /etc/fstab

↓1行追加

/swapfile none swap defaults 0 0

無効化

$ sudo swapoff /swapfile
$ sudo rm /swapfile
$ sudo vim /etc/fstab
追加した1行を削除
programming/web_development/server/google_compute_engine/swapfile.txt · 最終更新: 2020/06/05 by ikatakos
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0