スワップ領域の取り扱いがよくわからなくなってきた。以前は物理メモリの1〜2倍の領域が必要と言われていたようだが、最近の物理メモリを十分に積んだ環境では一体どの程度用意するのが適正なのか?
システム内の RAM の容量 | 推奨されるスワップ領域 | ハイバネーションを可能にする場合に推奨されるスワップ領域 |
2GB 以下の RAM | RAM 容量の 2 倍 | RAM 容量の 3 倍 |
2GB から 8GB の RAM | RAM 容量と同じ | RAM 容量の 2 倍 |
8GB から 64GB の RAM | RAM 容量の 0.5 倍 | RAM 容量の 1.5 倍 |
64GB 以上の RAM | 4GB のスワップ領域 | 追加の領域は不要 |
サーバでハイバネーションなんて使わないので、かなり少なくても良さそうな。OSによってはdump領域としても利用されると前は教えられたけど。Linuxではざっくりと物理メモリが4GB超えたぐらいからは物理メモリよりも少ない容量を確保するで問題無いと理解した。
swap割り当てルール、やっぱりRAMの2倍?
EC2環境では?と確認していたところ、「公式Linux AMIの初期構成にはswapパーティションが無い」との記事を発見(正確にはm1.small、c1.mediumを除く)。恥ずかしながら全く確認していなかった。。。
Amazon EC2(Linux)のswap領域ベストプラクティス
microインスタンスはEphemeralディスクが使えないけど、大きなインスタンスのProduction環境設計時には考慮が必要と覚えておく。