- 1. NATインスタンス を用いて、VPC内でLambdaを実行
- 2. 【AWS lambda】Terraformでlambda関数を作成してみよう【Terraform】
- 3. Svelte から AWS Lambda を API Gateway をトリガーに呼び出す
- 4. AWSのチュートリアルでハマった話
- 5. AWS Lambda (Node.js) 上で discord.js を使おうとしてつまずいた
- 6. AWSサービスを使って Lambda関数 の CI/CD を実現する方法を調査してみた
- 7. 【AWS】Lambdaの各種設定項目
- 8. AWS SQS+lambda連携 batchsize, batchwindowについて図解する
- 9. Amazon SESを使うことで通常のGmailで独自ドメインを利用する -転送編-
- 10. DynamoDBトリガーLambdaの「障害時の送信先 (SQS/SNS) 」における出力内容
- 11. Goで書かれたLambdaのpanic時、CloudWatchLogsにスタックトレースが出ない
- 12. cloudwatchのアラームをslackに通知
- 13. [AWS_33]Lambdaについて
- 14. Github ActionsによるAWS lambdaへのzipデプロイ
- 15. firecracker-containerdを試してみた
- 16. 初めてのlambda
- 17. 面倒な議事録をAWS Transcribeを利用した自動文字起こしの構築
- 18. firecrackerが1.0になったので試してみた
- 19. API GatewayでWebSocketを利用したルームチャットの作成
- 20. LambdaとSESによるドメインでのメール送信
NATインスタンス を用いて、VPC内でLambdaを実行
# はじめに
APIサービスを利用するにあたり固定のIPにする必要があったため、Lambda + 固定IPのNATインスタンスを構築しましたので、まとめます。
NATゲートウェイの方が、運用は楽ですが、サービスが小規模かつ、コスト面でNATインスタンスの方が安いため、こちらを利用しました。##コスト
NATゲートウェイ:稼働時間料金で46 USD/月、+ データ処理および転送料金
NATインスタンス:稼働時間料金で10 USD/月(t3.micro)、+ 転送料金# 完成図
![スクリーンショット 2022-02-14 22.44.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/988747/89af707f-3fea-37c7-cec8-fbdd81886d49.png)
# 事前構築
VPCやサブネットは以下のように作成しましょう。![スクリーンショット 2022-02-14 22.41.56.png](https://qiita-image-store.s3.ap-nort
【AWS lambda】Terraformでlambda関数を作成してみよう【Terraform】
# Terraform で AWS Lambda Function を作成してみよう
Terraform で AWS Lambda 関数(Hello,Lambda!)を 一番簡単な構成で作成してみます
## バージョン
試してみたバージョンは以下の通りです
| Name | Version |
| ——— | ——- |
| terraform | 1.1.5 |
| aws | 4.0 |## 構築リソース
– lambda function
– IAM roleIAMロールはlambdaがAWSリソースに変更を与えるために必要になります
今回はHello,Lambdaを表示するだけなのでほぼ何も権限を付与してません## 手順
### 1. IAMロールを定義
IAMロール作成は`Module`を使います
IAMロールをterraformで作成するには、
`aws_iam_role`, `aws_iam_policy`, `aws_iam_role_policy_attachment`
の3つを定義する
Svelte から AWS Lambda を API Gateway をトリガーに呼び出す
Svelte で書かれた、氏名とメールアドレスを入力する欄があるだけのシンプルなフォームの Submit ボタンが押されたとき、AWS Lambda 関数を呼び出す場合を考えます。
## Svelte プロジェクト作成
以下のコマンドを実行して、プロジェクトを作成し、バリデーションの[felte](https://felte.dev/)をインストールします。`
`は、任意の名前です。 “`bash
$ npx degit sveltejs/template$ cd $ npm install
$ npm install –save felte yup @felte/validator-yup
“`ちなみに`npm install`は`npm i`に、`npm –save`は`npm -S`に置き換えられます。
`src`直下にある`App.svelte`を以下に書き換えます。felte を読み込んでいます。
“`svelte:App.svelte