Lambda ランタイム - AWS Lambda

Lambda ランタイム

Lambda は、ランタイムの使用により複数の言語をサポートします。コンテナーイメージとして定義された関数の場合は、そのコンテナーイメージを作成する際に、ランタイムと Linux ディストリビューションを選択します。ランタイムを変更するには、新しいコンテナーイメージを作成します。

プログラミング言語のメジャーリリースにはそれぞれ別個のランタイムがあり、固有のランタイム識別子 (python3.9 または nodejs18.x など) を持っています。新しいメジャー言語バージョンを使用するように関数を変更するには、ランタイム識別子を変更する必要があります。AWS Lambda はメジャーバージョン間の下位互換性を保証できないため、これはお客様が主導権を持つ操作です。

デプロイ用のパッケージに .zip ファイルアーカイブを使用する場合は、関数の作成時にランタイムを選択します。このランタイムは、関数の設定を更新することで変更できます。ランタイムは、Amazon Linux ディストリビューションの 1 つとペアを構成しています。基盤となる実行環境は、関数コードからアクセスできる追加のライブラリと環境変数を提供します。

Amazon Linux 2
  • イメージ – カスタム

  • Linux カーネル – 4.14

Amazon Linux

Lambda は、実行環境で関数を呼び出します。実行環境では、関数の実行に必要なリソースを管理するセキュアで分離されたランタイム環境が提供されます。Lambda は以前の呼び出し (使用可能な場合) から実行環境を再利用しますが、新しい実行環境を作成することもできます。

Lambda で他の言語を使用するには、カスタムランタイムを実装します。Lambda 実行環境には、呼び出しイベントの取得とレスポンスの送信を行うためのランタイムインターフェイスが搭載されています。カスタムランタイムは関数コードと一緒に、またはレイヤーでデプロイできます。

注記

新しいリージョンでは、Lambda は今後 6 か月以内に廃止される予定のランタイムをサポートしません。

ランタイムのサポート
名前 識別子 SDK オペレーティングシステム アーキテクチャ 非推奨化 (フェーズ 1)

Node.js 18

nodejs18.x

3.188.0

Amazon Linux 2

x86_64、arm64

Node.js 16

nodejs16.x

2.1083.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

2023 年 3 月 31 日

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

Java 11

java11

Amazon Linux 2

x86_64、arm64

Java 8

java8.al2

Amazon Linux 2

x86_64、arm64

Java 8

java8

Amazon Linux

x86_64

.NET Core 3.1

dotnetcore3.1

Amazon Linux 2

x86_64、arm64

2023 年 4 月 3 日

.NET 6

dotnet6

Amazon Linux 2

x86_64、arm64

.NET 5

dotnet5.0

Amazon Linux 2

x86_64

Go 1.x

go1.x

Amazon Linux

x86_64

Ruby 2.7

ruby2.7

3.1.0

Amazon Linux 2

x86_64、arm64

カスタムランタイム

provided.al2

Amazon Linux 2

x86_64、arm64

カスタムランタイム

provided

Amazon Linux

x86_64

Lambda は、パッチとマイナーバージョンリリースのサポートを使用して、マネージドランタイムを最新の状態に保ちます。詳細については、「Lambda ランタイムの更新」を参照してください。

ランタイムの非推奨化に関するポリシー

Lambda ランタイム .zip ファイルアーカイブは、メンテナンスとセキュリティの更新の対象となるオペレーティングシステム、プログラミング言語、およびソフトウェアライブラリの組み合わせを中心に構築されています。ランタイムのコンポーネントに対してセキュリティ更新プログラムが使用できなくなった場合、Lambda はランタイムを廃止にします。

ランタイムの非推奨 (サポート終了) は 2 つのフェーズで発生します。

フェーズ 1 – Lambda は、ランタイムに対するセキュリティパッチやその他の更新の適用を停止します。ランタイムを使用する関数を作成することはできなくなりますが、既存の関数を更新し続けることはできます。これには、ランタイムの更新、および以前のランタイムバージョンへのロールバックが含まれます。非推奨となったランタイムを使用する関数は、テクニカルサポートの対象ではなくなります。

フェーズ 2 – ランタイムを使用する関数を作成または更新できなくなります。関数を更新するには、その関数をサポートされているランタイムに移行する必要があります。サポートされているランタイムに関数を移行した後は、関数を以前のランタイムにロールバックできなくなります。フェーズ 2 が開始されるのは、フェーズ 1 の開始から少なくとも 30 日が経過した後です。

Lambda は、廃止されたランタイムを使用する関数の呼び出しをブロックしません。関数の呼び出しは、ランタイムのサポートが終了した後も、無期限で継続されます。ただし、AWS は、引き続きセキュリティパッチを受け取り、テクニカルサポートの利用資格を維持するためにも、サポートされているランタイムへの関数の移行を強くお勧めします。

各フェーズは、以下の表において指定された日付の深夜 (太平洋標準時) にスタートします。次のランタイムは、サポート終了に達しています。

非推奨のランタイム
名前 識別子 オペレーティングシステム 非推奨化フェーズ 1 非推奨化フェーズ 2

Python 3.6

python3.6

Amazon Linux

2022 年 7 月 18 日

2022 年 8 月 29 日

Python 2.7

python2.7

Amazon Linux

2021 年 7 月 15 日

2022 年 5 月 30 日

.NET Core 2.1

dotnetcore2.1

Amazon Linux

2022 年 1 月 5 日

2022 年 4 月 13 日

Ruby 2.5

ruby2.5

Amazon Linux

2021 年 7 月 30 日

2022 年 3 月 31 日

Node.js 10

nodejs10.x

Amazon Linux 2

2021 年 7 月 30 日

2022 年 2 月 14 日

Node.js 8.10

nodejs8.10

Amazon Linux

2020 年 3 月 6 日

Node.js 4.3

nodejs4.3

Amazon Linux

2020 年 3 月 5 日

Node.js 6.10

nodejs6.10

Amazon Linux

2019 年 8 月 12 日

.NET Core 1.0

dotnetcore1.0

Amazon Linux

2019 年 7 月 30 日

.NET Core 2.0

dotnetcore2.0

Amazon Linux

2019 年 5 月 30 日

Node.js 4.3 Edge

nodejs4.3-edge

Amazon Linux

2019 年 4 月 30 日

Node.js 0.10

nodejs

Amazon Linux

2016 年 10 月 31 日

ほとんどの場合、言語バージョンまたはオペレーティングシステムのサポート終了日は事前に通知されます。以下のリンク先には、Lambda がマネージドランタイムとしてサポートする各言語のサポート終了スケジュールが記載されています。さらに、Trusted Advisor には、次回の Lambda ランタイムサポート終了の 120 日前に通知を行うチェックが含まれています。また、60 日以内にサポートの終了がスケジュールされているランタイムを使用する関数がある場合は、Lambda が E メールで通知します。

言語およびフレームワークのサポートポリシー

トピック