Lambda 런타임 - AWS Lambda

Lambda 런타임

Lambda는 런타임을 사용하여 여러 언어를 지원합니다. 컨테이너 이미지로 정의된 함수의 경우 컨테이너 이미지를 생성할 때 런타임 및 Linux 배포판을 선택합니다. 런타임을 변경하려면 새 컨테이너 이미지를 생성합니다.

배포 패키지에 .zip 파일 아카이브를 사용하는 경우 함수를 생성할 때 런타임을 선택합니다. 런타임을 변경하거나 업그레이드하기 위해 함수의 구성을 업데이트할 수 있습니다. 런타임은 Amazon Linux 배포판 중 하나와 페어링됩니다. 기반 실행 환경은 함수 코드에서 액세스할 수 있는 추가 라이브러리와 환경 변수를 제공합니다.

Amazon Linux

Amazon Linux 2

  • 이미지 - 사용자 지정

  • Linux 커널 — 4.14

Lambda는 실행 환경에서 함수를 호출합니다. 실행 환경은 함수를 실행하는 데 필요한 리소스를 관리하는 안전하고 격리된 런타임 환경을 제공합니다. Lambda는 사용 가능한 경우 이전 호출에서 실행 환경을 다시 사용하거나 새 실행 환경을 만들 수 있습니다.

런타임은 단일 버전의 언어, 여러 버전의 언어 또는 여러 언어를 지원할 수 있습니다. 언어 또는 프레임워크 버전이 수명 종료되면 해당 버전의 런타임이 더 이상 사용되지 않습니다.

Node.js 런타임
이름 식별자 SDK for JavaScript 운영 체제 아키텍처

Node.js 16

nodejs16.x

2.1055.0

Amazon Linux 2

x86_64, arm64

Node.js 14

nodejs14.x

2.1055.0

Amazon Linux 2

x86_64, arm64

Node.js 12

nodejs12.x

2.1055.0

Amazon Linux 2

x86_64, arm64

참고

Node.js 10에 대한 지원 종료 정보는 런타임 사용 중단 정책 섹션을 참조하세요.

Python 런타임
이름 식별자 AWS SDK for Python 운영 체제 아키텍처

Python 3.9

python3.9

boto3-1.20.32 botocore-1.23.32

Amazon Linux 2

x86_64, arm64

Python 3.8

python3.8

boto3-1.20.32 botocore-1.23.32

Amazon Linux 2

x86_64, arm64

Python 3.7

python3.7

boto3-1.20.32 botocore-1.23.32

Amazon Linux

x86_64

Python 3.6

python3.6

boto3-1.20.32 botocore-1.23.32

Amazon Linux

x86_64

Ruby 런타임
이름 식별자 SDK for Ruby 운영 체제 아키텍처

Ruby 2.7

ruby2.7

3.0.1

Amazon Linux 2

x86_64, arm64

참고

Ruby 2.5에 대한 지원 종료 정보는 런타임 사용 중단 정책 섹션을 참조하세요.

Java 런타임
이름 식별자 JDK 운영 체제 아키텍처

Java 11

java11

amazon-corretto-11

Amazon Linux 2

x86_64, arm64

Java 8

java8.al2

amazon-corretto-8

Amazon Linux 2

x86_64, arm64

Java 8

java8

amazon-corretto-8

Amazon Linux

x86_64

Go 런타임
이름 식별자 운영 체제 아키텍처

Go 1.x

go1.x

Amazon Linux

x86_64

참고

Go 1.x와 같이 Amazon Linux 운영 체제를 사용하는 런타임은 arm64 아키텍처를 지원하지 않습니다. arm64 아키텍처를 사용하려면 제공된 .al2 런타임으로 Go를 실행할하면 됩니다.

.NET 런타임
이름 식별자 운영 체제 아키텍처

.NET 6

dotnet6

Amazon Linux 2

x86_64, arm64

.NET Core 3.1

dotnetcore3.1

Amazon Linux 2

x86_64, arm64

참고

.NET Core 2.1에 대한 지원 종료 정보는 런타임 사용 중단 정책 섹션을 참조하세요.

Lambda에서 다른 언어를 사용하기 위해 사용자 지정 런타임을 구현할 수 있습니다. Lambda 실행 환경은 호출 이벤트를 받고 응답을 보내기 위한 런타임 인터페이스를 제공합니다. 사용자 지정 런타임은 함수 코드와 함께 배포하거나 하나의 계층에서 배포할 수 있습니다.

사용자 지정 런타임
이름 식별자 운영 체제 아키텍처

사용자 지정 런타임

provided.al2

Amazon Linux 2

x86_64, arm64

사용자 지정 런타임

provided

Amazon Linux

x86_64

런타임 사용 중단 정책

Lambda 런타임.zip 파일 아카이브에 대한 은 유지 관리 및 보안 업데이트가 적용되는 운영 체제, 프로그래밍 언어 및 소프트웨어 라이브러리의 조합을 기반으로 구축됩니다. 런타임의 구성 요소에 대해 보안 업데이트를 더 이상 사용할 수 없는 경우 Lambda는 런타임을 사용 중지합니다.

런타임의 사용 중지(지원 종료)는 두 단계로 이루어집니다.

1단계 - Lambda가 더 이상 보안 패치 또는 기타 업데이트를 런타임에 적용하지 않습니다. 해당 런타임을 사용하는 함수를 더 이상 생성할 수 없지만 기존 함수는 계속 업데이트할 수 있습니다. 여기에는 런타임 버전 업데이트 및 이전 런타임 버전으로의 롤백이 포함됩니다. 사용되지 않는 런타임을 사용하는 함수에 대해서는 더 이상 기술 지원을 받을 수 없습니다.

2 단계 - 더 이상 해당 런타임을 사용하는 함수를 생성하거나 업데이트할 수 없습니다. 함수를 업데이트하려면 지원되는 런타임 버전으로 마이그레이션해야 합니다. 함수를 지원되는 런타임 버전으로 마이그레이션한 후에는 함수를 이전 런타임으로 롤백할 수 없습니다. 2단계는 1단계 시작 후 최소 30일 후에 시작됩니다.

Lambda는 더 이상 사용되지 않는 런타임 버전을 사용하는 함수의 호출을 차단하지 않습니다. 함수 호출은 런타임 버전이 지원이 종료된 후에도 무기한 계속됩니다. 그러나 AWS에서는 보안 패치를 계속 수신하고 기술 지원을 받을 수 있도록 함수를 지원되는 런타임 버전으로 마이그레이션하는 것을 권장합니다.

아래 표에서 각 단계는 지정된 날짜의 자정(태평양 표준시)부터 시작됩니다. 다음 런타임의 지원 종료 시점에 도달했거나 예정되어 있습니다.

런타임 지원 종료 날짜
이름 식별자 운영 체제 사용 중단 단계 1 사용 중단 단계 2

.NET Core 2.1

dotnetcore2.1

Amazon Linux

2022년 1월 5일

2022년 4월 13일

Python 3.6

python3.6

Amazon Linux

2022년 7월 18일

2022년 8월 17일

Python 2.7

python2.7

Amazon Linux

2021년 7월 15일

2022년 5월 30일

Ruby 2.5

ruby2.5

Amazon Linux

2021년 7월 30일

2022년 3월 31일

Node.js 10.x

nodejs10.x

Amazon Linux 2

2021년 7월 30일

2022년 2월 14일

Node.js 8.10

nodejs8.10

Amazon Linux

2020년 3월 6일

Node.js 6.10

nodejs6.10

Amazon Linux

2019년 8월 12일

Node.js 4.3 엣지

nodejs4.3-edge

Amazon Linux

2019년 4월 30일

Node.js 4.3

nodejs4.3

Amazon Linux

2020년 3월 6일

Node.js 0.10

nodejs

Amazon Linux

2016년 10월 31일

.NET Core 2.0

dotnetcore2.0

Amazon Linux

2019년 5월 30일

.NET Core 1.0

dotnetcore1.0

Amazon Linux

2019년 7월 30일

거의 모든 경우에 언어 버전 또는 운영 체제의 수명 종료는 미리 공개됩니다. Lambda는 향후 60일 내에 지원 종료가 예정된 런타임을 사용하는 함수가 있는 경우 이메일로 알려드립니다. 드문 경우이지만 지원 종료에 대한 사전 알림이 불가능할 수도 있습니다. 예를 들어 이전 버전과 호환되지 않는 업데이트가 필요한 보안 문제가 발생하거나, 장기 지원(LTS) 일정을 제공하지 않는 런타임 구성 요소가 있을 수 있습니다.

언어 및 프레임워크 지원 정책