1. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
AWS Protonを使ってみた
虎の穴ラボ株式会社 西志村友基
2. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
自己紹介
西志村 友基
● 所属:虎の穴ラボ株式会社
● 担当:Fantiaなど
● 入社理由:
○ BtoCサービスに関わりたい
○ 一生に一度はオタク業界に関わりたい
● 趣味:アニメ鑑賞、ゲーム
競馬 ← New
2
3. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
話すこと
● サーバーレスアプリ開発で思うこと(Lambda)
● AWS Protonとは
● AWS Protonの特徴
● 使い方
● まとめ
4. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
サーバーレスアプリ開発で思うこと(Lambda)
ソースコードをどうやって管理してますか?
コンソールで直接実装し
たり
フレームワークで実装したり
Githubで管理したい!
できればCI/CDも構築したい!
5. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
サーバーレスアプリ開発で思うこと(Lambda)
学習コスト大きすぎ
Lambda DynamoDB
フレームワーク
API Gateway
CodePipeline
API作りたいだけなのに...
6. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
実体験として...
AWS SAM(AWSが提供するサーバーレスのフレームワーク)で開発
インフラの設定(yaml) : 処理の実装 = 9 : 1
ロジックの実装に集中したい!
7. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
そんなお悩みの方に...
AWS Protonをご紹介したい
8. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
AWS Protonとは?
● サーバーレスやコンテナベースのアプリケーションのデプロイ、
インフラの構築を簡単に行えるフルマネージドサービス
● プラットフォームチームと開発チームが別れた組織を想定
→プラットフォーム(インフラ)チーム向けのサービス
9. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
AWS Protonの特徴 - 概要
「サービス」と「環境」という2グループに分かれた構築
10. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
AWS Protonの特徴 - 想定する運用
プラットフォームチーム(インフラ)
開発者
● ロジックの実装
● テンプレートを選んでサービスを作成
● サービスのデプロイ
● 環境テンプレートを作成
● テンプレートを選択して環境を作成
● サービステンプレートを作成
11. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
AWS Protonの特徴 - テンプレート
● AWSのサンプルを利用することができる(独自に作成するこ
とも可能)
● サンプルはGithubで確認できる
● FargateとLambdaの2種類が用意されている
12. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - サンプルを使った開発
サンプルをつかって簡単にタスク管理
APIを作れます
13. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - 環境テンプレート作成
FargateかLambdaを選択可能
14. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - 環境テンプレート作成
● サンプルはGitHubで公開されています
https://github.com/aws-samples/aws-proton-sample-templates/tree/main/lambda-
multi-svc
● 1から書くのは気が遠くなりそうでもサンプルあると心強い
● サンプルを元に独自に書くこともできる
→AWSのベストプラクティスに従った開発が可能
15. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - サービステンプレート作成
環境テンプレートと基本的には同じ、互換性のある環境テンプレートを選ぶ
16. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - 環境作成
● 作成したテンプレートを選ぶだけ
● 数クリックで環境のデプロイが完了
17. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - サービス作成
● サービスのサンプルもAWSが用意してくれています
https://github.com/aws-samples/aws-proton-sample-lambda-crud-service
18. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
使ってみる - サービス作成
GitHubのリポジトリを設定
19. Copyright (C) 2021 Toranoana Inc. All Rights Reserved.
まとめ
● サンプルがGitHubで公開されている親切設計
● yamlの書き方に悩んだりする時間が削減できる
● CI/CD含めて簡単に構築できるのがありがたい
● インフラ寄りのサービスというが初学者にもオススメ