Python Lambda 함수의 레이어 다루기
Python Lambda 함수의 레이어 다루기
Lambda 레이어를 사용하면 여러 함수에서 재사용하고 싶은 코드와 의존성을 패키징할 수 있어요. 레이어는 보통 라이브러리 의존성, 커스텀 런타임, 또는 설정 파일을 담습니다. 레이어를 만드는 과정은 크게 세 단계로 나뉘어요:
본문
- 레이어 콘텐츠를 패키징합니다. 즉, 함수에서 사용할 의존성을 담은 .zip 파일 아카이브를 만드는 거예요.
- Lambda에서 레이어를 생성합니다.
- 레이어를 함수에 추가합니다.
Topics
레이어 콘텐츠 패키징하기
레이어를 만들려면 다음 요구 사항을 충족하는 .zip 파일 아카이브에 패키지들을 묶어야 해요:
- Lambda 함수에 사용할 계획인 것과 동일한 Python 버전으로 레이어를 빌드합니다. 예를 들어 Python 3.14로 레이어를 빌드했다면 함수에도 Python 3.14 런타임을 사용하세요.
- .zip 파일에는 루트 레벨에
python디렉토리가 반드시 포함되어야 해요. - 레이어의 패키지는 Linux와 호환되어야 합니다. Lambda 함수는 Amazon Linux에서 실행됩니다.
레이어에는 pip로 설치한 서드파티 Python 라이브러리(예: requests, pandas)나 여러분이 직접 만든 Python 모듈과 패키지를 담을 수 있어요.
Lambda에서 레이어 생성하기
레이어는 AWS CLI나 Lambda 콘솔 중 원하는 방법으로 게시할 수 있어요.
함수에 레이어 추가하기
생성한 레이어를 함수에 추가해서 사용하는 방법을 살펴봅니다.
샘플 앱
Lambda 레이어 사용 예시를 더 보려면 AWS Lambda 개발자 안내서 GitHub 저장소의 layer-python 샘플 애플리케이션을 참고하세요. 이 애플리케이션에는 Python 라이브러리를 담은 레이어 두 개가 포함되어 있어요. 레이어를 만든 뒤 해당 함수를 배포하고 호출해 보면 레이어가 예상대로 동작하는지 확인할 수 있습니다.