0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

40 代おっさんLambdaを使ってS3と連携

Last updated at Posted at 2022-03-08

本記事ついて

本記事は プログラミング初学者の私が学習していく中でわからない単語や概要をなるべくわかりやすい様にまとめたものです。
もし誤りなどありましたらコメントにてお知らせいただけるとありがたいです。

構成図

lambdaS3.png

Lambda関数を作る

LambdaのGUIコンソールを開く

関数の作成をクリック

一からの作成をチェックを入れて

関数名を入れて

ランタイムにpython3.7を入れる(今回はpython使用するため)

アクセス権限は
基本的なLambdaアクセス権限で新しいロールを作成にチェック

できたら関数の作成をクリックしてください。

コードを確認

'statusCode': 200
が return するようになっていると思います。
上にprint(event)を追加

import json

def lambda_handler(event, context):
    # TODO implement
    print(event)
    return {
        'statusCode': 200,
        'body': json.dumps('Hello from Lambda!')
    }

Deployを押す

Testで動かす
イベント名を入れて
作成をクリック

正常に保存されましたと上に出ていると思います。
テスト結果も問題ないものとなっていると思います。

最期に設定のアクセス権限がCloudWatchLogsのみになっていることを確認してください(あとで違いを見ます)

s3バケットの作成

s3のGUIコンソールを開く

バケットを作成をクリック

バケット名を入力
バケット名は被らないものにする必要があるので注意

リージョンはLambdaと同じ場所で

このバケットのブロックパブリックアクセス設定は
パブリックアクセスをすべて ブロックにチェックを入れてください。
(そのほうが安全です)

あとはそのままで
バケットを作成をクリック

出来ましたら、自分の作ったs3を確認してください

lambdaと連携させる

自分の作ったs3をクリックしてプロパティを見て下さい
色々な情報がありますが
イベント通知でイベント通知を作成

イベント名を入れる(わかるものであれば自由で)

プレフィックス・サフィックスで発動条件を絞ることができる

イベントタイプ
今回はすべてのオブジェクト作成イベントで

送信先(ここが重要)

lambda関数にチェックがあることを確認

lambda4関数から選択するにチェックがあることを確認

lambda関数のところに先ほど作った関数を入れてください

lambdaを確認

lambdaのGUIコンソールに行き、自分の作ったlambdaを確認すると
S3のトリガーあることが確認できると思います

アクセス権限を確認するとリソースベースのポリシーがあることが確認できると思います
こちらをクリックすると詳細な情報が見れると思います

s3画面からアップロードをしてlambdaが動いたか確認する

s3画面に戻りアップロードをクリックしてください

そうしたら適当なファイルと追加してアップロードをしてください
成功したと思います

lambdaの実行状態を確認するため
lambdaのコンソール画面に画面遷移してください

モニタリングに行って
CloudWatchのログを表示をクリック

ログが二つあると思いますが古い方はテストイベントになります
も一つのほうを確認すると色々な情報が見れると思います。
これでs3と連携ができたことが確認できました。

最後に

またこの記事は AWS 初学者を導く体系的な動画学習サービス「AWS CloudTech」の課題カリキュラムで作成しました。
https://kws-cloud-tech.com/

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?