2010年 12月 16

Linux のswap領域の謎

OSをインストール際に悩むのがパーティションの容量設定。物理メモリが大量に搭載される昨今、通例の「メモリの2倍」をswapに適用すると8Gメモリなら16Gものディスクを消費してしまう。

物理マシンならまだしも、(それでもSCSIやSASなどのディスクを消費するのはどうかと思うが)仮想環境で仮想ディスクを使う場合、swap領域の確保の為にイメージディスクのサイズを大きくしなくてはならない。

サーバ用途として利用する場合、swapを使うような状態になるとほぼ運用できないくらいのパフォーマンスになってしまう。最低限のswap領域を確保しておけばいいのか調べてみる。

最低500M?それとも物理メモリと同程度?

その1

swap領域を最低500M確保しておけばいいという記事を見かけた。
スワップ区画のサイズはどのぐらいに設定すべきでしょうか – Linux Q&A:ITpro

もっとも物理メモリー量そのままのサイズがスワップ区画に必要なわけではありません。/sys/power/image_sizeに設定されるサイズ(標準では500Mバイト)までメモリー・イメージをシュリンクしてからスワップ区画に書き出します。そのため,500Mバイトあれば十分です。

その2

linux DBサーバのswapの容量について(ORACLE)

Oracle Databaseの場合だが、このような記事も
Oracle Databaseのインストール前の要件

RAM スワップ領域
1024MB~2048MB RAMのサイズの1.5倍
2049MB~8192MB RAMのサイズと同じ
8192MB超 RAMのサイズの0.75倍

それでも実メモリと同等程度のswap領域を確保する必要がありそう。

その3

Linux での swap の容量について – @nifty教えて広場

Linux ではそんなことはなく、メモリが多ければ swap なしでも問題なく動くとつい先ほどまで信じていたんですが、「Linux教科書 LIPCレベル1 (ISBN4-7981-0292-X)」という本を買って、swap に関する説明を見たら「スワップ領域は塔載メモリと同程度を確保します。」と書いてありました。

このQ&Aでの回答に

OSの使用量+同時稼動させるアプリの使用量の総和が実メモリ以下ならswapは要りません。ただ、そんな計算は事前にちゃんと出来ないでしょうから、最初はswapを作らないで、メモリ不足が出てから作るか、ある程度(2倍は要らないでしょうが)作っておいて使用量をモニタして不要そうなら削るか、どっちでもいいと思います。

と、まぁ不足してから作るか、ちょっとだけ用意しておけばいいんじゃね?的な回答が。
Linuxの場合、物理メモリが多ければswapは必要ないのだろうか? .. continue reading ..


Filed under: LINUX

Trackback Uri