Webアプリ + APIGateway
APIGatewayのAPIエンドポイントを経由して他のWebアプリからAWSにデータを送信することが可能になります。
- 例:Kintone(website) ⇒ (Webhook経由) ⇒ APIGateway ⇒ その他のAWS(Lambdaなど)
APIGateway + Lambda
- APIGatewayのリソース➡POST➡総合リクエストからLambdaの指定ができます。
- APIGatewayでのAPIのデプロイ時には、ステージ変数を設定することができます。ステージ変数を使用することで、APIのエンドポイントURLにステージ名を含めることができます。
Lambda + S3
- S3に配置されたオブジェクトに対してLambdaを実行する場合、IAMロールを作成してS3へのアクセス権限を与える必要があります。
- S3ファイルがアップロード、削除、更新された際、Lambdaを自動実行させることができます。
Lambda関数➡設定➡トリガー➡トリガー追加でイベントタイプ、S3のバケット、プレフィックスを指定できます。 - トリガー経由せずにLambdaからでも、S3ファイルの作成、削除、情報を取得することができます。
Stepfuncions + Lambda
- Step Functionsは、AWSサービスを実行する手順を定義することができるサービスであります。
- State Machineと呼ばれるフローチャートのようなもので処理を定義します。
- Lambdaとの連携が容易であり、Lambdaの処理をワークフローで定義することができます。
例:
{
"StartAt":"Lambda",
"States":{
"Lambda":{
"Type":"Task",
"Resource":"arn:aws:lambda:us-east-1:123456789012:function:(Lambda関数名) "
}
}
}
EventBridge + Lambda
- EventBridgeは、様々なAWSサービスからのイベントを受信し、Lambdaなどのターゲットに送信することができるサービスであります。
- ルールを設定することで、特定のイベントに対してターゲットを指定したり、決めた値を渡したりすることができます。更に実行時間の指定することで、予約機能として使用されることも可能です。
- 例:
①毎日朝7時にLambda関数を実行する
②10分ごとにLambda関数を実行する
Stepfuncions + Redshift
- Step FunctionsからRedshiftに対して、クエリを実行することができます。
- クエリの実行結果をS3に出力することもできます。
- また、Step Functionsによって、Redshiftのクラスターの起動や停止を行うこともできます。