글 개요
이번 포스팅은 aws -labmda 서비스에 특정 라이브러리를 올리는 방법을 알아보겠습니다.
글 본문
가장 먼저해야할 일은 aws에서 람다함수를 만들어줘야 합니다. 저는 함수이름을 lambdatest python버전은 3.6으로 만들었습니다.
현재 제가 만든 람다함수에는 pandas 라이브러리가 없는것을 확인할 수 있습니다.
lambda 함수의 제한
하나의 lambda함수내에는 5개 layer를 올릴 수 있습니다.
하나의 lambda함수와 layer의 합하여 250MB를 초과할 수 없습니다. 하지만 docker를 활용하여 배포한다면 자유롭게 배포할 수 있습니다. 추후에는 docker를 활용하여 배포하는 방법도 올려보겠습니다.
pandas lambda layer 만들기
일단 저는 lambda함수의 python 버전이 3.6이니 anaconda로 python 3.6으로 환경을 만든다음에 pandas 라이브러리를 설치하여 zip파일로 만든다음 lambda함수에 올려보겠습니다.
mkdir aws_test_pandas
pandas 함수를 zip할 폴더를 하나 만듭니다. 모든작업은 aws_test_pandas에서 작업합니다.
aws_test_pandas폴더을 이동 후 python폴더를 하나 더 만들어줍니다.
mkdir python
aws_test_pandas라는 폴더에 pandas 라이브러리를 설치해줍니다.
pip install pandas -t .
aws_test_pandas폴더에 만들어진 pandas 라이브러리들을 이전에 만들었던 python 폴더에 다 넣어줍니다.
이제 aws_test_pandas폴더를 압축하고 layer에 올리면 끝입니다.
압축이 끝났다면 다시 aws lambda로 돌아와서 왼쪽 bar에 계층을 클릭합니다.
맨오른쪽 상단에 계층생성 버튼이 있습니다 계층생성 버튼을 클릭합니다.
아까 압축했던 aws_test_pandas.zip파일을 업로드해주고 호환런타임을 python3.6으로 설정해줍니다.
람다 함수로 돌아와서 맨밑에 계층에 Add a layer를 클릭합니다.
사용자 지정 계층을 클릭하고 아까 만들었던 pandas를 클릭해주고 추가를 해줍니다.
다시 deploy하고 test를 해주면 pandas 라이브러리가 제대로 오류없이 실행되는걸 볼 수 있습니다.
'AWS' 카테고리의 다른 글
AWS-IAM 이해하기-실습-3 (0) | 2021.09.13 |
---|---|
AWS- IAM 이해하기-실습-2 (0) | 2021.09.09 |
AWS- IAM 이해하기-실습-1 (0) | 2021.09.09 |
AWS - IAM 이해하기-2 (0) | 2021.09.09 |
AWS - IAM 이해하기-1 (0) | 2021.09.09 |
댓글