Lambda 만들기
Writer: 김관호

AWS Lambda

AWS API Gateway

AWS IAM

AWS CloudWatch

1.Lambda

1) AWS 리전 변경

Region

AWS 사이트 상단에서 자기와 가까운 리전을 설정합니다.

2) Lambda 함수 생성

LambdaSite

함수 만들기를 선택합니다.

LambdaMakeFunc

함수이름을 입력하고 함수 생성을 합니다.

LambdaMakeFuncComplete

Lambda 함수 만들기 성공했습니다 🎉🎉🎉

2.API Gateway

1) API Gateway 만들기

ApiGatewaySite

API Gateway를 시작합니다.

ApiGatewayMake

새 API생성에서 새 API 를 선택하고
API 이름을 입력합니다.
그리고 API 생성을 합니다.

ApiGatewayMakeComplete

API Gateway 만들기 성공했습니다 🎉🎉🎉

2) API Gateway Method 만들기

ApiGatewayWorkMethod

메서드 생성 을 합니다.

ApiGatewayWorkMethodType

여러가지 HTTP Method가 나오게 되는데 저는 POST를 해보겠습니다.

ApiGatewayMethodPost

POST를 선택한 다음 체크를 선택합니다.

ApiGatewayLambda

Lambda함수를 입력을 하고 저장을 해줍니다.

ApiGatewayLambdaConnect

Lambda 함수에 API Gateway 권한부여를 확인을 합니다.

ApiGatewayMethodMakeComplete

API Gateway POST 메서드를 만들었습니다 🎉🎉🎉

3.배포, 테스트

1) 배포

UploadWork

작업을 눌러서 API 배포 를 선택합니다.

UploadSelect

배포 스테이지 를 선택합니다.

UploadComplete

[새 스테이지] 를 선택하고 스테이지 이름을 입력을 한 뒤 배포를 합니다.

UploadSiteComplete

이제 URL까지 나왔습니다 🎉🎉🎉

2) 통신 테스트

RequestTest

URL로 통신 끝 🎉🎉🎉

4.HEAD추가, CORS추가

1) HEAD

특정 사이트에서는 HTTP Method 중 head가 필요할수 있습니다.

LambdaHead

Lambda - Lambda 함수 생성 에서 POST를 만드는것과 비슷하게 HEAD를 만듭니다.
코드는 간단히 200을 리턴하게 하였습니다.

ApiGatewayHead

API_Gateway - API Gateway Method 만들기 에서 HEAD 메서드를 만듭니다.

배포, 테스트 - 배포 다시 배포를 합니다.

TestHead

HEAD 테스트 완료 🎉🎉🎉

1) CORS

WorkCors

작업 에서 CORS 활성화를 선택합니다.

CorsCheck

CORS 활성화 및 기존의 CORS 헤더 대체 를 선택 합니다.

CorsConfirm

예, 기존 값을 대체하겠습니다. 를 선택합니다.

CorsComplete

OPTIONS 메서드도 생겼습니다.
CORS 배포, 테스트 - 배포 배포를 합니다.
CORS 추가 완료 🎉🎉🎉

5.로그 IAM 추가

1) Role 추가

IamRole

IAM에 들어가서 역활 을 누르고 역활 만들기 를 누릅니다.

IamRoleAPIGateway

API Gateway 를 누르고 다음:권한 을 누릅니다.

IamFilter

다음:태그 를 누릅니다.

IamTag

다음:검토 를 누릅니다.

IamCheck

역활 이름을 입력하고 다음:만들기 를 누릅니다.

IamComplete

IAM 추가 완료 🎉🎉🎉
역활 ARN 을 복사해놓습니다.

2) API Gateway에 IAM 추가

IamGateway

API Gateway에서 설정 에 들어간 다음 ARN을 적고 저장 을 눌러줍니다.

LogMethod

API Gateway에서 스테이지 를 누르고 배포스테이지에 들어간 다음 로그/추적 에서 CloudWatch 로그 활성화 를 해줍니다.
로그 수준을 INFO 해주고 필요한 사항을 체크한 뒤 변경 사항 저장 을 합니다.

3) Test

LambdaLog

Lambda 코드에 Console.log를 적어주고 저장합니다.
다시 통신 테스트 배포, 테스트 - 테스트 를 합니다.

3) Log 확인

CloudWatchLog

CloudWatch에서 로그 를 들어갑니다.

CloudWatchLogList

아까 만든 로그 그룹을 들어갑니다.

CloudWatchLogComplete

로그 완료 🎉🎉🎉