Linuxサーバを構築するときswap領域の容量をどれくらい確保すればよいかいつも忘れてしまうので備忘。利用用途によって変わってくるのであくまでもベースの値の目安にしている。

swap とは
Linux におけるswap とは物理メモリが不足すると利用される領域を指す。これにより、システムがクラッシュするのを防ぎ、安定した動作を維持することができる。利用する領域は内臓のHDDなりSSDに領域を確保するのでメモリ(RAM)よりアクセス速度が遅くなるので当然 I/O 性能はRAMに比べると低くなる。つまりは、頻繁にSwap領域が使われる事態になるとパフォーマンス低下につながる。
swap 領域の目安
基本的に搭載メモリに応じて、推奨値は下記にようになる。スワップサイズは使用目的やメモリ容量によって異なるが、一般的には、RAMが少ない場合はスワップを多めに設定し、RAMが16GB以上ある場合は最小限でも問題ないことが多い。特にサーバー用途や仮想環境では、スワップの有無が安定性に影響するため、慎重な設定が求められる。そもそもメモリが枯渇してswap領域が頻繁に使用される場合は物理メモリを増やした方がよい。
メモリ | swap領域容量 |
2GB以下 | メモリの2倍 |
2GB ~ 8GB | メモリと同値 |
8GB ~ 64GB | メモリの 1/2 |
64GB 以上 | 用途によってカスタム |
SSD の注意点
最近のLinuxサーバ環境ではSSDを使用するケースが増えている。SSDは書き込み回数に制限があるため、スワップの頻繁な使用は寿命を縮める可能性がある。そのため、swappinessの値を調整して、スワップの使用頻度を抑える設定が推奨される。
コメント