AWS 無料枠(t2.micro)で容量とメモリエラー

2020/07/25

メモリとボリューム容量不足

AWS の無料枠では t2.micro でメモリ 1G のため、Cloud9 で Laravel のインストールなどでエラーになってしまうことがあります。

また EC2 のボリューム EBS(Amazon EBS Elastic Volumes)もデフォルト 10G のためプロジェクト作成で不足がちになります。

メモリエラーが出た場合

clound9 などでメモリ不足が発生すると以下のようなエラーになります。


[ErrorException]                                   
proc_open(): fork failed - Cannot allocate memory 

この対処として Swap 領域を確保して対応すると良いでしょう。


$ sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
$ sudo /sbin/mkswap /var/swap.1
$ sudo /sbin/swapon /var/swap.1

容量不足になった場合

AWS Console にログインし、EC2 対象のインスタンスを選択して「アクション > ボリューム変更」を選択します。

サイズに容量(GB)を入力し【変更】をクリックします。
※無料枠は 合計 30GB が上限なので注意が必要です

ボリュームの変更確認画面で【はい】をクリックします。

ボリュームが変更されたら【閉じる】をクリックします。

ボリュームが変更されているのを確認しましょう。
EC2 インスタンスを再起動しなくてもボリュームは反映されているかと思います。