Amazon EC2 t1.micro インスタンスでswapを使用する
m1.small 以上のインスタンスにはswap用のデバイスが存在し、デフォルトでswapとしてマウントされるようですが、残念ながらt1.microインスタンスにはそれがありません。
t1.microインスタンスでの free
コマンド実行結果例
$ free total used free shared buffers cached Mem: 626524 550784 75740 0 113388 208792 -/+ buffers/cache: 228604 397920 Swap: 0 0 0
上記のようにSwap:
0
0
0
と、星のカービィ スーパーデラックスを想起させる絶望的な数字が出力されます。
Swap領域を自分で作成する
ただでさえRAMが少ないt1.microでswapが無いとなると不安で夜も眠れなくなるので、
自分で用意するのが吉です。
デバイスを追加することはできないのでスワップファイルを作成します。
$ sudo dd if=/dev/zero of=/swapfile bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 32.6191 s, 32.9 MB/s $ sudo mkswap /swapfile mkswap: /swapfile: warning: don't erase bootbits sectors on whole disk. Use -f to force. Setting up swapspace version 1, size = 1048572 KiB no label, UUID=10f13846-fce7-419a-b9e8-8dfd47d29371 $ sudo swapon /swapfile
dd
コマンドで指定サイズの空のファイルを作成(ここでは1024MB)mkswap
コマンドで、作成したファイルをスワップ領域として使用できるようにするswapon
コマンドでスワップ領域を有効にする
以上でスワップが有効になります
$ free total used free shared buffers cached Mem: 626524 452876 173648 0 55068 128240 -/+ buffers/cache: 269568 356956 Swap: 1048568 1932 1046636
起動時に自動でスワップを有効にする
起動時に自動でマウントされるよう/etc/fstab
に追記をします。
$ sudo vi /etc/fstab --- # 下記を追加 /swapfile none swap sw 0 0