AWS 람다 SAM 배포 75GB 용량 이슈

반응형

이슈가 생겼습니다...

서버리스 프레임워크를 계속 사용하여 람다 컨테이너들에 대한 형상 관리를 하다보니,

이력이 계속 쌓였는지 75GB 용량 초과 알림이 떠서 커스텀으로 만들 수 없더군요..

조금 더 파악해보고 오겠습니다..

 

클라우드 개발자 앙몬드입니다.

인프라 CA분에게서 요청이 왔던 AWS 리전들의 Public IP 변경에 대하여, 알림 및 SG 자동업데이트에 대한 람다 개발을 자동화하는 것이었죠.

해당 건에 대해서는, 굳이 형상관리를 할 필요없다고 판단하였습니다. 이슈가 생긴다면, AWS SES/SNS 알림을 받고, 그것을 그때 고치면 되는 것이었죠. (물론 그 사이 서비스가 장애가 났다 하면 앙몬드 책임)

    - SNS + Lambda Fan-Out 패턴을 통한 AWS Region 간 Public IP 자동화 이슈링크 : devloper-angmond.tistory.com/category/IT/AWS%20%EB%A6%AC%EC%86%8C%EC%8A%A4%20%EA%B0%84%EB%9E%B5%EC%A0%95%EB%A6%AC%20%26%20%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%EA%B0%9C%EB%B0%9C%20%ED%8A%B8%EB%9F%AC%EB%B8%94%EC%8A%88%ED%8C%85

 

'IT/AWS 리소스 간략정리 & 클라우드개발 트러블슈팅' 카테고리의 글 목록

기억력이 약해져가며 적는, 작은 기술들 :)

devloper-angmond.tistory.com

 

콘솔에서, 스크립트를 생성하려는데 문제가 생깁니다.

AWS Lambda 의 경우 제한에 대해서는 저 또한, 컨테이너 하나당 용량 50MB & 동시실행 1000개만 숙지하고 있었죠.

75GB 에 대한 이슈의 AWS 화이트페이퍼는 하기와 같이 설명합니다.

docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html

 

AWS Lambda limits - AWS Lambda

AWS Lambda limits AWS Lambda limits the amount of compute and storage resources that you can use to run and store functions. The following limits apply per-region and can be increased. To request an increase, use the Support Center console. Resource Defaul

docs.aws.amazon.com

AWS 함수/레이어 총 용량은, 리전당 75GB이다.

이상한것은, 제 람다 함수 어플리케이션 용량 총합이 1GB도 되지 않는데 어째써 75기가로 인식을 하였을까?

해당 용량 공식은 다음과 같습니다.

AWS Lambda Function & Layer Storage's Total Limit = Lambda Fuctions's ALL Versions + ALL Layers

예를 들면, A람다 함수 50메가짜리의 버전이, 1000개 관리되고 있고, 레이어는 쓰지 않는다면,

람다 용량 = A람다 50MB * 1000 = 50GB

그리고 75GB 를 초과하여 배포 시에는, 다음과 같은 에러를 뱉습니다.

CodeStorageExceededException

앙몬드가 찾은 방법은 다음과 같습니다.

1. AWS 서포트를 받아, 용량을 늘린다. -> 당연히 비용 증가 예상 가능

2. 구 람다 버전들을 형상관리하지 않고, git 으로만 관리하며, 구버전들 전부를 없앤다.

앙몬드는 당연히 2번을 선택하였구요.

 

어렵지 않게 파이썬 코드를 찾아 해결할 수 있었습니다.

물론 약간의 한계가 있고, 모든 이슈가 해결된 것은 아니지만, 약 99퍼 정도는 위 이슈는 해결 가능하였습니다.

이후, 이에 대한 조금 더 고도화는 되어야겠죠.

오늘은 간단하게, 이에 대한 이슈잉과 어느정도의 해결책 람다 코드만을 만들어서 배포를 하도록 하고 종료하도록 하죠!

(앙몬드는 맥주를 먹으러 갈꺼댜)

지금 이 코드의 레퍼런스를 까먹었습니댜.. 어떤 인도아저씨가 올린듯 했는데, 죄송합니다 꼭 찾아서 업데이트할게요..! ㅠㅠ

 

반응형

설정

트랙백

댓글