github actions를 돌리는 과정에서 서버가 다운되는 문제를 식별했다.
CPU Credit 문제일까 점검해보니 되려 차고 넘쳤다.
EBS도 30GiB이기 때문에 디스크 문제도 아니므로, 가능한건 메모리 (OOM)이라고 판단했다.
인스턴스 스냅샷을 사용할 수 없는 상황이고, 서버 자체가 다운되서 그런가 직렬 콘솔로도 접근이 안되서 난감한 상황이었다. 그래서 htop 명령을 통해 직접 하드웨어 자원이 Github Actions 흐름에 따라 어떻게 반응하는지를 직접 모니터링 했다.
name: Deploy via SSH (docker compose pull & up) 이 단계에서 서버가 팅겨버리는걸 직접 발견했다. 이때 CPU Usage는 매우 낮았고 Mem이 반응을 보이다가 튕겨버리는 것을 보고, 메모리 문제가 가능성이 가장 높다고 판단했다.
Reference : https://yoon001.tistory.com/39
Swap 메모리를 사용하면 문제가 해결된다는 글들이 많았다. 당장 내 맥북만 해도 무거운 작업 돌리면 Swap Memory가 요동을 치는걸 보면, 필수일 수 있겠다라는 판단이 들었다.
그래서 다음과 같이 Swap Memory를 4GiB 로 설정했다.