본문 바로가기
ITPE metacog/Cloud metacog

AWS SAP : Lambda함수 이슈 해소

by 잘 배우고, 잘 익히기 2021. 3. 19.

클라우드 마이그레이션 시 Lambda 함수 동작 이슈 해소

 Req) EC2인스턴스의 애플리케이션API를 서버리스로 마이그레이션 필요

          -   신규 애플리케이션 위한 환경 준비 : API Gateway/Lambda, DyanamoDB

          -  Lambda의 역할 : SaaS로부터 데이터 획득

          -  Lambda에 연결 : 기존 EC2와 동일한 VPC에 연결

          -  사용자 테스트 시 새로 마이그레이션된 기능을 사용할 수 없는 상황 발생(API GW에서 5XX에러)

             SaaS공급자로의 요청 인입이 전혀 없었음이 모니터링됨, CloudWatch Logs는 람다함수가 생성

           - 동일 기능이 기존 EC2에서는 동작되고 있는 것으로 확인되며, 발생 이슈의 가능성 있는 원인은 무엇일까?

 

  Sol) AP Gateway와 Lambda서비스를 이용하는 상황으로 람다서비스를 Invoke하기 위한 Permission을 획득했는지 확인 필요

원인 확인 : API 로그의 확인 실행 로그에서 람다 함수의 잘못된 권한과 유사한 메시지 확인
해결 방법 : 필요한 권한 추가  Lambda addd-permission 명령으로 추가 

aws.amazon.com/ko/premiumsupport/knowledge-center/api-gateway-lambda-stage-variable-500/

 

API Gateway Lambda 통합에서 스테이지 변수를 사용할 때 "내부 서버 오류" 해결

스테이지 변수를 사용하여 AWS Lambda 함수를 호출하도록 Amazon API Gateway API를 설정했습니다. API 메서드를 호출하면 API가 "내부 서버 오류"와 500 상태 코드를 반환합니다. 이 문제를 해결하려면 어떻

aws.amazon.com

서버리스 아키텍처 디자인 패턴

Req) 아래 요구사항의 글로벌 고객사의 서버리스 아키텍처 디자인 패턴을 사용한 웹사이트 구축 

- 반응성, 최소 지연, 고가용성, 소셜ID인증, 스파이크 트래픽 대비 디도스 보호 

 

Sol) CloudFront와 S3정적 웹, Cognito서비스 이용, API Gateway와 Lambda서비스 이용 

반응성, 최소 지연 CloudFront와 S3정적 웹
고가용성 Lambda
소셜ID 인증 Cognito for web federation authentication
디도스 보호  CloudFront for shield protection

Lambda로 코드 작성 뒤 API Gateway에서 실행하도록 연결 가능

   - 람다는 코드가 실행되지 않을 때, 과금되지 않습니다.