Open11
AWS Lambdaを学ぶ
最終目標
- SATySFiでコンパイルするワーカーfunctionを
- 継続的にアップデート&デプロイできる形で
- 安全に
- 作成する
データの流れ
- 入力
- SATySFiコード
- (config)
- 出力(S3にput)
- stdout/stderr
最終形の方針
- Docker image
- SATySFiバイナリを動かしたい
- Bulit with Nix
- ビルドの再現性 + composability
- Dockerfileは使わない
まずは普通にチュートリアル
なんも知らんのでね
まずは遊ぶ用のIAM?を作る。
-
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/introduction.html を読む
-
https://www.aws.training/Details/Video?id=16448 を見る
- なんかAmazon.co.jpのアカウント要求されるし(課金要素ありそう)ポップアップ許可しなきゃならん。つら
- 英語字幕無いのでつらい
- グループ作るのがいいらしい
- Federated user面白いね
-
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/getting-started_create-admin-group.html に従ってAdminグループ/ユーザを作成、ログアウト
- AWSの数字ID覚えられる気がしないのだが…?
-
https://www.aws.training/Details/Video?id=16448 を見る
- 遊ぶ用のグループを作成
- AWSLambda_FullAccess
- AWSLambdaFullAccessを改定してこれって闇でしょ
- AmazonS3FullAccess
- iam:CreateRoleが足らなかった
- AWSLambda_FullAccess
- 遊ぶ用のグループにIAMユーザを追加・シークレットキーをダウンロードしたところでおしまい
Container imageのところでCLIが出てきたので読む: https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-welcome.html
- Nixのパッケージ名が
awscli2
なの紛らわしすぎる
AWS Lambda レイヤーというのがあるらしい。が、Nixが一番!
AWS SAMというのがあるらしい
ポリシーがいまいちよくわからない
Lambdaからのインターネットアクセスを遮断するにはVPCにだけ繋げれば良さそう?
デフォルトでは、Lambda は、AWS のサービスおよびインターネットへのアクセス権を持つ関数をセキュアな VPC 内で実行します。この VPC は、Lambda が所有し、アカウントのデフォルト VPC とは接続されていません。アカウントの VPC に関数を接続すると、VPC からアクセス権が付与されない限り、関数はインターネットにアクセスできません。