docker-machineのswap領域を一時的に増やす(docker toolbox のホストOSのswapを増やす)

メモリを沢山使うツールを実行している時に、「Killed]というメッセージを残してOMM-Killerに殺されてしまう現象が発生した。
一時的にでも使えるメモリが増えればよかったので、swap領域を拡張してみることにしました。

### 現状の確認 ###

$ free -m
total used free shared buff/cache available
Mem: 1997 193 1756 22 46 1752
Swap: 1423 756 666

### ファイル作成 ###

最初は、dd コマンドでファイル作成していたが、追加したswap領域を使い始めたとたんにフリーズする現象が発生していた。fallocateコマンドでファイル作成するようにしたところ、追加したswap領域を使ってもフリーズしなくなった。
ddコマンドとfallocateコマンドの違いを調べてみましたが、fallocateは即時に実領域を確保しないということらしいですが、詳細わかりません。

$ sudo fallocate -l 500M /var/swap.img
$ sudo mkswap /var/swap.img
$ sudo chmod 600 /var/swap.img

### ループバックデバイスへの割り当て ###

$ sudo losetup -f /var/swap.img
$ sudo losetup -l
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE DIO
/dev/loop0 0 0 0 0 /var/swap.img 0

### swap 開始 ###

$ sudo swapon /dev/loop0

### 確認 ###

$ free -m
total used free shared buff/cache available
Mem: 1997 194 1241 536 561 1236
Swap: 1935 754 1181

## 参考 ##

– サービスを止めずにSWAP領域を拡張する。

– losetupコマンドの使い方

コメントする

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。