aws free tier를 사용하고 있는데, 과금이 되었다~ 왜 그런지 알아보았다.
아직까지는 모니터링을 더 해봐야 알겠지만~ 현재까지 알아낸 것을 포스팅 해본다
현재 AWS free tier를 사용하고 있다.
아마존 홈페이지를 들어가면 이렇게 나온다
처음 AWS에 가입한 날부터 12개월 동안 사용 가능
무료로 1년 동안 하나의 인스턴트 서버를 만들어서 사용할 수가 있고 RDS인 데이터 베이스도 만들어서 무료로 사용가능하고, 스토리지인 S3도 맘껏(?) 사용을 할 수가 있다~
혼자 프로젝트를 만들거나, 프로그래밍 연습을 하고 적용하기에는 정말 최고인 듯하다. 위 그림에서 나왔 듯이, 내 생각에는 왠만하면 저 수치를 넘을 수가 없다고 생각이 된다. 개인용으로 하기에는 충분한 양이라고 생각이 된다.
t2.micro 인스턴스 인데, CPU 1개에 RAM 1GB 이지만 덕분에 현재 블로그 프로젝트도 서버에 배포해서 잘 사용을 하고 있고, 구동하는 것도 빠르다~ 전혀 문제가 없다~ (단! 머신러닝 관련 프로젝트는 하면 안됨~ 서버 퍼짐)
하지만
몇 달 전 부터 부터 사실 적은 금액이기는 하나 과금이 되고 있었다~
월별 750시간인데, 24시간 X 31일은 해도 744시간
한개의 서버 (인스턴스)를 사용한다고 하면 750시간이 넘어갈 수가 없으므로 과금이 될 수 없다고 안심했지만
카드 청구가 계속 되고 있었다~
주변에서 결제가 되었다며, 회원 탈퇴를 한 사람도 있고~ 수 만원에서 수 십만원 과금 되었는 사람들도 있었고
프리티어 인데 왜 어디에서 정확히 왜 과금이 되었는지 잘 모르겠는다는 점이 문제다 나도 잘 모르겠더라~
맨 처음 과금 되었던 부분이다
EBS 즉 아마존의 Elastic Block Store 인데 SSD나 하드디스크 되어 있어서 free tier 인스턴스 서버가 여기에 설치되게 연결이 되어 있다
그런데 서버가 퍼진적이 있었는데, 위에서 살짝 언급한 오브젝트 디텍션 관련 프로젝트를 진행하다가 과부하가 걸려서 (학습을 시킨것은 아님, 예측만 시키는 것이였는데) 서버가 뻗어 버렸고 아예 오류가 발생해서 몇 시간 째 인스턴스를 중지했다가 재시작해도 아예 서버에 접속할 수가 없게 되었다.
그래서 그때에 스냅샷으로 복원하는 기능이 있다고 해서 복원을 시도했더니 서버에 있던 내용은 다 날라가고 처음 상태로 복구가 되었다~ 인스턴스 반납(terminate)를 하려다가 복구를 시킨건데~ 뭐 똑같은 결과여서 그냥 인스턴스 반납할껄 그랬나? 했지만 다행히 서버에 접속이 가능해져서 그렇게 넘어갔는데~ 이게 문제였던 것 같다
(나중에 확인을 해보니 EBS 스토리지가 2개가 되어 있었다)일단 EBS의 Volumes를 확인 한 후 중복이 되거나 추가로 만들어 진게 있다면 삭제를 해준다 프리티어 인스턴스와 연결이 되어 있는지 잘 확인 후 필요 없는 것은 삭제할 필요가 있다.
두 번째 또 과금이 되었다~ 불 필요한 EBS 스토리지를 삭제했는데도 이상했다~ 더 이상 과금 될 만한 곳이 없는데 😅
ssh로 서버에 원격 접속할 때에는 항상 체크를 한다
다행히 서버에 접속을 하면 안내 메세지가 나와서 용량을 어느 정도 사용하고 있는지 알 수 있다
또는 직접 용량 확인
$df -h
EBS 스토리지 때문에 그런 것인 줄 알았지만 조금 다른 문제 였다
"GB-month of General Purpos SSD (gp2) provisioned storage - Asia Pacific (Seoul)"
바로 이 부분이다. provisioned storage?
gp2는 RDS의 데이터베이스 스토리지를 말하는데 20GB 까지 무료이다
혼자 만드는 프로젝트에 1기가도 안될 꺼 같은데 정말 이상하다.
RDS의 데이터베이스를 이용해서 만든 프로젝트는 API-server 프로젝트인데
내가 설계한 방식에 따라서 요청이 오면 응답해주는 프로젝트인데 누가 요청을 하나? 솔직히 아무도 모르는데 아무도 요청을 안한단 말이다 ㅋㅋㅋ
그래서 알고 봤더니 provisioned storage는 프로비저닝이라고 불리는 것인데
aws에서는 빠른 처리속도 응답성을 높이고 낮은 지연율을 유지하기 위해서 스토리지 자동 조정이라는 기능을 있다는데
데이터 베이스 스토리지가 동적 조정이 된다고 한다
처음에 RDS 데이터베이스를 만들 때 몰랐었는데 다시 만드는 메뉴를 살펴보았더니
이런게 있었다. Storage autoscaling에 보면 Enable storage autuoscaling 부분이 체크가 되어 있다처음에는 그냥 넘어갔었는데 스토리지 자동 조정 활성화가 체크되어 있어서 최대 임계값을 넘으면 자동으로 스토리지가 늘어나서 과금이 되는 것이였다.
현재까지 알아본 바로는 이 provisioned storage가 문제가 되는거 같은데
이것도 사실 조금 이해가 안 된다.
왜냐하면 아래 1000Gib, 즉 1테라 가 넘어가면 오토 스케일링을 한다고 하는데 1테라를 넘을 일이 있단 말인가??
그래서 일단 RDS의 스토리지도 삭제를 해버렸다~
프로젝트 파일은 깃허브에 다 올라가 있고, 원하는 시점에 DB만 다시 생성해서 만들 생각으로 삭제를 했다
하지만 삭제를 할 때 스냅샷을 마지막으로 만들게 지정을 해줘야지만 삭제가 가능했고
(아니면 스냅샷을 만들었으니 그거를 토대로 바로 복구도 가능할 듯)
그리고 며칠이 지난 뒤에 확인해보니 현재까지는 예상 되는 금액은 없다.
단 스냅샷을 했다는 이유로 백업비를 0.01이 예상 된다고 나오는데 이것도 지켜봐야겠다
아 그리고 현재 RDS는 삭제했지만 추후 다시 만들 예정이어서 만들게 되면 위의 저 옵션 빼고 만든 후에 모니터링을 해봐야겠다
작은 금액이지만, 어디서 정확히 과금이 되는지 몰라서 이거 나중에 엄청 신경 안쓰고 있다가 마구 불어나서 과금 되는거 아냐? 하는 불안감이 있었다
사실 AWS에서 메일이 온다.
aws 콘솔에 잘 안들어가더라도 한 번씩 꼭 확인하자~