のべラボ.blog

Tech Blog | AWS や サーバーレスやコンテナ などなど

Serverless

Node.js の AWS Lambda 関数におけるモジュールの扱いについて

2024 年 6 月15 日に、ふと AWS Lambda で Node.js の Lambda 関数について深掘りしてみたいなと思い、いくつかのドキュメントを参照してみると AWS Lambda のラインタイム Node.js 16 の Deprecation date が 2024 年 6 月 12 日 であると AWS Lambda の開…

AWS Step Functions から AWS Lambda 関数を呼び出す方法を整理してみた

前回記事に引き続き、AWS Step Functions がテーマです。 (2024 年 6 月に検証した内容に基づいています。) AWS Step Functions のステートマシンは、様々な AWS サービスと連携できます。 例えば、AWS Lambda 関数を呼び出したり、Amazon SNS のトピック…

Amazon API Gateway から AWS Step Functions のステートマシンを同期的に呼び出してみる

半年ぶりの記事となります。 たまたま、AWS Step Functions についていくつか調査する機会があったので久々に記事にまとめようと思い立ちました。 タイトルの処理を実装する手順をまとめていきますが、Amazon API Gateway から AWS Step Functions のステー…

AWS Compute Optimizer で Lambda 関数の推奨事項を提示させてみた!

本記事は「AWS LambdaとServerless Advent Calendar 2023」3 日目の記事です。 今回は、AWS Compute Optimizer を使って Lambda 関数のメモリ設定に関する推奨事項を確認してみます! 目次 目次 AWS Lambda 関数のメモリ設定の最適値導出について AWS Comput…

Amazon API Gateway のリクエスト本文検証時のエラーメッセージを変更してみる

Amazon API Gateway のリクエスト検証機能は広く知られているかもしれませんが、今回はリクエスト本文検証時のエラーメッセージを変更して詳細な情報を表示する方法を紹介します。 これは、数ヵ月前に私が登壇したトレーニングの受講者の質問から気づけた Ti…

今さらながら GitHub Actions をさわってみる: (AWS SAM のデプロイ編)

前回の記事では、GitHub Actions のワークフローから AWS アカウントへのアクセス方法を確認しました。 その方法を用いて、今回は AWS アカウントへサーバーレスアプリケーションのビルドとデプロイを行ってみます。 アプリケーションは、Amazon API Gateway…

AWS Step Functions の Distributed Map ステートを試してみる

これまで、AWS Step Functions の Map ステートを試してみる記事を 2 つ(下記)書いてきました。 nobelabo.hatenablog.com nobelabo.hatenablog.com 今回は、その続きとして 2022 年 12 月にアナウンスされた Distributed Map を試してみます。 aws.amazon.…

AWS Lambda の Provisioned Concurrency を設定した後、利用可能になるまでの状況を確認してみる

本記事は「AWS LambdaとServerless Advent Calendar 2022」11日目の記事です。 AWS Lambda では、「プロビジョニングされた同時実行数」を設定することができます。本記事においては便宜上、この設定を Provisioned Concurrency と呼称します。 この Provisi…

AWS Lambda の同時実行数に関連する設定の整理

今回は、AWS Lambda の同時実行数に関連する各設定の整理をしていきます。 まず、AWS Lambda には サービスの制限値として、その AWS アカウントで同時に実行環境を作成できる数がリージョン毎に決められています。 これは、AWS Service Quotas で Concurren…

AWS X-Ray における Amazon SQS × AWS Lambda の新しいトレースリンクの機能を試してみる

今回は、最近発表されたAWS X-Ray の次の新機能を試してみます。 aws.amazon.com 従来までどうだったか、この新機能により何ができるようになったか、というのを簡単に図にまとめてみました。 Amazon SQS にメッセージが送信され、その後 AWS Lambda 関数に…

AWS Step Functions の Map ステートに動的に生成した配列を渡してみる

前回の記事で AWS Step Functions の Map ステートの基本的な使い方を試してみました。 nobelabo.hatenablog.com 前回は、ステートマシン実行時のパラメータに配列を手入力して、その配列を Map ステートにそのまま渡していましたが、今回はステートマシンの…

AWS Step Functions の Map ステートを触ってみる

AWS Step Functions Map ステートで色々試したいことがあるのですが、その事前準備として今回は Map ステートの基本的な機能を確認してみます。 Map は、配列の要素数に応じて同じ処理を並列に実行してくれるステートです。 docs.aws.amazon.com 例えば Map …

AWS Parameters and Secrets Lambda Extension を試してみる

前回のブログ記事で、AWS Parameters and Secrets Lambda Extension のドキュメントの記載の注意点について説明しましたが、今回は AWS CLI を主体としてシンプルに試す手順を説明します。 なお、この記事の内容は 2022年 10月 23日時点のものになります。 …

AWS Parameters and Secrets Lambda Extension のドキュメントの記載に注意

AWS Parameters and Secrets Lambda Extension を触ってみたところ、ドキュメントで混乱を招く記載があったので、その点を記載していきます。 なお、この記事の内容は 2022年 10月 23日時点のものになります。 aws.amazon.com AWS Parameters and Secrets La…

AWS SAM connectors を試してみた

前回と同じく、今回も AWS SAM ネタです。 下記の AWS ブログの記事を読んだので、 AWS SAM connectors を試してみたいと思います。 aws.amazon.com AWS SAM connectors は、AWS SAM テンプレートで指定するリソースタイプの一種で、サーバーレスアプリケー…

AWS SAM における Lambda 関数のエイリアスとバージョンの重みづけについて

以前から、AWS SAM を使用して AWS Lambda 関数のエイリアスとバージョンの重みづけを設定したいなーと思ってました。 ただ、結論から言うと、AWS SAM 仕様では重みづけの設定する方法は無く、AWS CloudFormation のプロパティとして設定する必要があること…

AWS SAM を使用するための IAM ポリシー

AWS SAM (Serverless Application Model) を使用すると、AWS Lambda などを使用したサーバーレスアプリケーションのテストやデプロイで、様々な便利な機能を使用できます。 aws.amazon.com 今回は、この AWS SAM を使用するために必要な IAM ポリシーについ…

AWS Lambda関数の Init フェーズのタイムアウト

今回は、AWS Lambda関数の Init フェーズでタイムアウトが発生した場合の動作を検証してみます。 AWS Lambda関数の実行環境のライフサイクルについては、次のドキュメントで説明されています。 docs.aws.amazon.com このドキュメントにもあるように、Lambda…

/* -----codeの行番号----- */