起きたこと
EC2にSSHして作業していたら、急に応答が来なくなり、SSHが繋がらなくなった。
インスタンスを再起動するとまた接続できるようになるものの、しばらくするとやっぱり落ちる。
こんなことが頻発していて困っていたので原因を調べた。
原因と対応
LinuxではOOM Killerというのがメモリ不足になった際にプロセスをkillしてメモリを解放しようとするらしく、それで重要なプロセスが殺されていたという結論に至った。
対策として
- スワップ領域を確保した
- VSCodeのgit監視を止めた
以上をしたらSSH接続が切れることは無くなった。
EC2を無料枠で利用していたりすると特にメモリ不足が起きやすいと思うので、EC2の応答が急になくなる場合はこれを疑うのがよさそうです。