0
0

custom-resource-apigw-cw-roleがnode16.xランタイムでデプロイされる件

Last updated at Posted at 2024-04-22

いきさつ

ある日AWSからnode16のサポート終了のお知らせが届きました。

...
LambdaでのNode.js 16のサポートは2024年6月12日に終了します
...

自分のLambdaを眺めていると、xxx-custom-resource-apigw-cw-rolenode16ランタイムがいました。
これはServerless frameworkでデプロイしたときに自動生成されるもので、API GatewayのCloudWatch Logsのロールを作成するために使用されるらしい。
slsのバージョンを上げればいけそうだな〜と思い現在のバージョンを確認すると3.38.0。これは記事執筆時点での最新バージョンです。えぇ...。

調べてみると以下のやりとりが:
https://github.com/serverless/serverless/issues/12307

ざっくり、こんな流れでした:

  • サーバーレスフレームワークを介して作成されたcustom-resource-apigw-cw-role lambdaのランタイムを変更するにはどうすればよいですか?
  • lib/plugins/aws/custom-resources/index.jsにハードコードされてるからどうしようもないかも...
  • SLS v4で対応する予定よ(2024/2/17)
    • 来週にはベータ版がリリースされる(予定)
  • (3/5)まだすかね...
  • node16サポート終了せまってるんだけど...
  • そのうち解決されるはずだが、もう間に合わないのでなんらかの代替策を考えるしかないかな...(4/23)

という感じらしい

どうする?

6/12までに対応がされない場合、新規にSLSでデプロイをすることはできなくなります。
すでにデプロイされているものについては、sls deployコマンドで更新をすることができます。

もしも、6/12までに対応されなかった場合や、終了予定が決まっているnode16ランタイムが存在することが気になる場合、こちらの通りserverless.ymlの以下を書き換えて、xxx-custom-resource-apigw-cw-roleを生成しないようにする方法が考えられます。

  logs:
+    restApi: false
      # accessLogging: true
      ...

これで対象のLambdaは無くなります。
ただしAPI gateway周りのログがcloudwatchに記録されなくなるので、運用方針が合っているか検討する必要はあると思います。

2024/05/23更新

serverless v4がリリースされました。
これで解決するのかも(未確認)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0