仮想通貨サービス BitCapitalZ の日記

仮想通貨関連のブログです Ripple, Ethereum 仮想通貨2.0に注目しています

Amazon EC2 でメモリが足りない時の対処について

Amazon EC2インスタンスには micro というとってもしょぼいものが用意されています。

ろくにメモリ積んでいないためソースコードからビルドしている最中に以下のようなエラーがでてビルドできないことがあります

virtual memory exhausted: Cannot allocate memory
make: *** [obj/bitcoinrpc.o] Error 1

monacoind は残念ながらできませんでした。


https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-12-04
上記のブログを参考に以下のステップでメモリのスワップ領域をファイルシステム上に用意することで、この問題を解消できました。


$sudo dd if=/dev/zero of=/swapfile bs=1024 count=256k
$sudo mkswap /swapfile
$sudo swapon /swapfile
$sudo vim /etc/fstab 
以下を追記
 /swapfile       none    swap    sw      0       0 
 
$echo 10 | sudo tee /proc/sys/vm/swappiness
$echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf
 
$sudo chown root:root /swapfile 
$sudo chmod 0600 /swapfile
これでビルドが通るようになります。