Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS Lambdaの更新で502エラーが起きた話 / How an AWS Lambda U...

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for mito mito
July 26, 2026

AWS Lambdaの更新で502エラーが起きた話 / How an AWS Lambda Update Caused 502 Errors

参考リンク
・Lambda関数の状態(Pending・Activeなどのステート遷移)に関する公式ドキュメントです。
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/functions-states.html

・Lambda SnapStart機能を利用した際のトラブルシューティングガイドです。
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/snapstart-troubleshooting.html

・AWS CodePipelineを利用したLambdaのトラフィックシフトデプロイに関するアップデート記事です(2025年5月)。
https://aws.amazon.com/jp/about-aws/whats-new/2025/05/aws-codepipeline-deploying-lambda-traffic-shifting/

Avatar for mito

mito

July 26, 2026

More Decks by mito

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 伊藤 雅⼈ @mito0358 役割: Cloud Infrastructure Engineer / SRE

    経歴: 現在は、⾃社サービスのインフラを担当しています。 以前は、組み込みソフトウェア開発、⾃動⾞業界の⽣産管理‧情シス、 NW運⽤⾃動化、Ansible‧Terraformの社外向け研修の講師、PdMなど。 趣味: 年数回のテニス(区営コートの予約倍率30~40倍!) 技術同⼈誌の執筆(サークル「AutoOps屋」、次回で3冊⽬) マガポケで続きを読みたい漫画にコメントする(推し:異世界辺境メシ)
  2. Lambda関数の起動 Lambdaのインフラ Lambdaのコンテナ Pending Inactive Active ColdStart (初期化) ColdStart(実⾏) WarmStart(実⾏)

    Lambdaのコンテナを動かすための、インフラの構築から始まります。 そのインフラがActive状態のときにコンテナが起動でき、Lambda関数がリクエストを 処理できます。
  3. Lambda関数の状態 エラー発⽣時は0.2秒間 Lambdaのインフラ Lambdaのコンテナ Pending Inactive Active ColdStart (初期化) ColdStart(実⾏)

    WarmStart(実⾏) Pending — Lambda は関数を作成した後、関数の状態を保留に設定します。 保留状態の場合、Lambda は関数のリソースの作成または設定を試みます。 Lambda は、保留状態の関数を呼び出しません。 関数に対する呼び出しやその他の API アクションは全て失敗します。
  4. Lambda関数の状態 14⽇間、Lambdaが起動しないと遷移する Lambdaのインフラ Lambdaのコンテナ Pending Inactive Active ColdStart (初期化) ColdStart(実⾏)

    WarmStart(実⾏) Inactive — Lambda ⽤に設定された外部リソースを再利⽤するのに ⼗分な時間アイドル状態を維持した関数は⾮アクティブになります。 14 ⽇間呼び出されなかったとき、または Lambda が実⾏環境を定期的に リサイクルしたときに Inactive になります。 ⾮アクティブな関数を呼び出そうとすると、呼び出しは失敗し、関数リソース が再作成されるまで、Lambda は関数を保留状態に設定します。 ほかのステータスとして、Failedがあります。 参考:https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/functions-states.html https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/snapstart-troubleshooting.html
  5. エラーが起きた状況 Cold Startは関係なかった!! コマンドでLambdaのアップデートを実⾏した後、即エイリアスを切り替えました。 結果、トラフィックが流れ、Pending中のLambdaを呼び出そうとして失敗しました。 1. aws lambda update-function-code 2.

    aws lambda update-alias 検証ログ 時刻 新規作成v51 Lambaのインフラ構築状況 [11:02:15] Config(v51): State: WAITING (v51 はまだ未作成) [11:02:17] Config(v51): State: WAITING (v51 はまだ未作成) [11:02:19] Config(v51): State: Pending LastUpdateStatus: None [11:02:20] Config(v51): State: Pending LastUpdateStatus: None [11:02:22] Config(v51): State: Active LastUpdateStatus: Successful [11:02:23] Config(v51): State: Active LastUpdateStatus: Successful エイリアスの向き先 Alias(dev) -> v50 Alias(dev) -> v50 Alias(dev) -> v50 Alias(dev) -> v51 Alias(dev) -> v51 Alias(dev) -> v51