brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Jul 24. 2019

143. APIGW-S3이벤트를 Lambda처리

<1> 목표

S3 이벤트를 APIGW-Lambda로 처리하기



<2> 구성

WEB Event -----S3---------- APIGW -----Lambda --------- AWS Service

 

<3> 설정 순서


1. Lambda 생성하기

2. APIGW 생성

3. Lambda Code 

4. Lambda에서 데이터가  AWS 서비스에 입력되어야 하므로 기존 IAM role에   

  AWS 서비스 관한 정책을 만들어 추가한다.

5. S3버킷을 만들고,  S3로 입력 홈페이지를 만든다.

6.  CLI나 웹브라우저에서 S3 접속해 이벤트를 발생시킨다.

7. AWS Service 동작 확인

8. 사용한 AWS 리소스 반드시 삭제, 삭제 하지 않으면 50만원 나옴 - -




1. Lambda 생성하기

Lambda로 처리하고자 했으니 Lambda를 만들자.

Lambda 처리할  lambda ploicy와 role도  만든다.  

Node.js 8.10

기본 권한으로 만들기  Lambda@Edge 선택 

  


2. APIGW를 구성한다.

 API Endpoint를 확인한다.


Lambda > API  Gateway

Create a new API

Open



3.  APIGW로 이벤트가 들어오면  처리할 lambda소스 코드를 만든다.

    이벤트가 들어오면 어떻게 처리할지  코드를 만드는 곳이다.(소스코드)


 홈페이지 소스에  APIGW   endpoint도 적용한다. 

    홈페이지에서 데이터를 입력하면   APIGW로 가는 것이다.




4. Lambda에서 데이터가  AWS 서비스에 입력되어야 하므로 기존 IAM role에   

  AWS 서비스 관한 정책을 만들어 추가한다.

 IAM > 기존 role 선택 > Attach Policies에서 필요한 AWS 서비스 권한을 추가한다

  

뒷단 S3가  사용하는 aws서비스에 대한  정책 추가한다.  예)  s3 full access  



5. S3버킷을 만들고,  S3로 입력 홈페이지를 만든다.




6.  웹브라우저에서 S3 접속해 이벤트를 발생시킨다.

  APIGW  > 람다로 전달하여  AWS 서비스까지 전달된다.



7. AWS Service 동작 확인


8. 사용한 AWS 리소스 반드시 삭제, 삭제 하지 않으면 50만원 나옴 -


감사합니다.


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari