Lambda

    [Lambda + S3] 람다로 S3 버킷내에 파일 다른 버킷으로 옮기기!

    참고자료 : http://jeonghwan-kim.github.io/node/2017/08/12/node-stream-you-need-to-know-3.html 개발을 하는 기능중 S3 버킷의 파일을 다른 버킷으로 이동시키는 기능을 개발 했었다. 기존의 소스의 경우 getobject 를 해서 파일을 메모리에 buffer로 가지고 있다가 putobject로 옮길 버킷에 업로드 하고. deleteObject로 기존 버킷의 파일을 삭제한다 get,put,delete object static async getObject(type, fileKey) { try { const config = await utils.getEnvConfig(type); const result = await s3 .getObject({ B..

    [Lambda + RDS] connect ETIMEDOUT ERROR 해결법

    람다 함수를 개발해서 RDS에 접근한뒤 데이터를 가져오는 코드를 작성했는데 동작을 안하는거다. 그래서 클라우드와치(cloudwatch) 를 확인해보니 아래와 같이 Error: connect ERIMEDOUT 에러가 발생한것이다. 물론 RDS를 사용하기 위해서 설정해야 하는 VPC설정은 해놨었다. 이유는 AWSLambdaVPCAccessExecutionRole – Permission to manage elastic network interfaces to connect your function to a VPC. 즉, 람다가 VPC엑서스 권한이 없다는 메세지였다. 따라서 람다가 사용하는 권한의 role에 VPCAccess 를 추가해줬다. 이제 람다가 VPC에 접근이 완료되고, 같은 VPC 내부에 있는 RDS에..

    [Lambda + AWS SDK S3] 람다로 S3 접근가능 url 가져오는법

    AWS S3는 기본적으로 퍼블릭 권한이 차단되어있다 즉, 개발하고 있는 서비스에서 S3에 저장되어있는 리소스를 일반 유저들에게 제공을 해야 하는 상황에서 단순하게 S3의 있는 파일의 링크를 주려고 해봤자 AccessDenied 가 나올뿐이다. 이럴때 사용하기 위해서 있는것이 Pre-signed url이다. S3에서는 미리 인증이 되어있는 url을 제공해 줄 수 있는데 방문자등에게 S3에 있는 리소스를 제공할때는 이와 같은 방법을 사용하면 된다. AWS-SDK S3 getSignedUrl documentation link → https://docs.aws.amazon.com/ko_kr/AWSJavaScriptSDK/latest/AWS/S3.html#getSignedUrl-property documentat..

    [ AWS + Serverless.js ] 3.소스 코딩 1

    이전글들 [ AWS + Serverless.js ] AWS람다 + 서버리스 로 배포하기! 1. serverless 설치 및 AWS연결 https://burning-camp.tistory.com/38 2. 환경설정 https://burning-camp.tistory.com/39 테스트 코드 작성 test/utils/db 디렉토리에 dbmanager.test.js 파일을 만든다. const dbClient = require('serverless-mysql')({ config: { host: 'localhost', user: 'mj', password: 'asdf12', port: 3306, database: 'testdb', }, }) test('DB Connection', () => { expect(typ..