Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CDK❤SAM at CDK Conference JAPAN 2022
Search
maki
April 09, 2022
Technology
1.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CDK❤SAM at CDK Conference JAPAN 2022
https://jawsug.connpass.com/event/240422/
maki
April 09, 2022
More Decks by maki
See All by maki
CDKで書くECSのベストプラクティス、 改めて考え直す2026 #cdkconf2026
makies
0
160
クラウド二刀流エンジニアを目指す 私の認定資格取得のモチベーション
makies
1
130
2024春 注目のWeb系 OSS & SaaS 3選
makies
0
790
AWS認定 Specialtyレベルで満点取った時の勉強法
makies
2
1.1k
「AWS PDK」聞いたことありますか?
makies
1
870
HomeAssistant.pdf
makies
0
270
PagesとFunctionつかってGraphQLをSSRするサイトをNext.jsで作りたい
makies
2
350
変なスタンプMeetUp
makies
0
380
Hokkaido LT#1
makies
0
1.3k
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
640
LLMやAIエージェントをソフトウェアに組み込むプラクティス
shibuiwilliam
1
370
世界、断片、モデル。そして理解
ardbeg1958
1
110
LLM/Agent評価:トップ営業の発言を「正解」にする 〜暗黙的正解による評価を営業資産に変える〜
takkuhiro
1
220
ADDF - ループエンジニアリングするフレームワークを作ったら/I Didn't Set Out to Build Loop Engineering, But ADDF Did
fruitriin
0
120
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
13
2k
Kaggleで成長するために意識したこと
prgckwb
2
340
SRE本の知られざる名シーン / The Hidden Gems of Google SRE Book
nari_ex
1
380
DMM.com 購入改善推進チーム におけるCodeRabbitを用いた レビューフロー改善の一例
ysknsid25
2
630
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
AIと共生する開発者プラットフォーム:バクラクのモノレポ×マイクロサービス基盤
sakajunquality
2
3.5k
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
260
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Producing Creativity
orderedlist
PRO
348
40k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
220
Fireside Chat
paigeccino
42
4k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
230
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
Java REST API Framework Comparison - PWX 2021
mraible
34
9.5k
Agile that works and the tools we love
rasmusluckow
331
22k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
320
Transcript
CDK ♥SAM なかよし 藤原⿇希(フジワラマキ)|
⾃⼰紹介 • マキ @makies • 北海道札幌市 • 株式会社ゆめみ • サーバーサイドエンジニア
– PHP TechLead – お⼿製 docker on EC2 → ECS Fargate に移⾏ @練⾺ 北海道札幌市
With CDK Tools AWS Cloud Development Kit (AWS CDK)
想定視聴者 CDK で synth して deploy の流れを理解した CDK => CloudFormation
Template API Gateway + Lambda で APIを作ったことがある Node.js(& npm)や TypeScript を使ったことがある
AWS SAM LocalStack AWS Amplify AWS Cloud Development Kit (AWS
CDK)
AW S A m p l i f y 設定を
override Export リソース追加 AWS Amplify https://aws.amazon.com/jp/blogs/news/ extend-amplify-backend-with-custom-aws-resource-using-aws-cdk-or-cloudformation/
AWS SAM LocalStack AWS Amplify AWS Cloud Development Kit (AWS
CDK)
AWS Cloud Development Kit (AWS CDK) https://www.terraform.io/cdktf
AWS SAM LocalStack AWS Amplify AWS Cloud Development Kit (AWS
CDK)
• ローカル開発・テスト⽤ • Serverless系サービス、DB • Feature Coverage • ★ ★〜
★ ★ ★中⼼ • Proライセンス • WebUI Dashboard • 対応サービス数 約2倍 • Dockerコンテナ • AWS公式ではない https://localstack.cloud/
AWS SAM LocalStack AWS Amplify AWS Cloud Development Kit (AWS
CDK)
AWS SAM Serverless application model • CloudFormation ベース • サーバーレス構成でよく使われるサービスを
Cloud Formation より簡単に書ける – API Gateway, Lambda, DynamoDB Step Functions, Event Bridge – 上記以外は Cloud Formation 形式で記述 $ sam build $ cdk synth Cloud Formation template.yaml
AWS SAM CLI brew tap aws/tap brew install aws-sam-cli //
インストール sam init // 初期ファイル生成 cd sam-app && sam build // YAMLをCloudFormationテンプレートに変換 // Functionのビルド https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/ serverless-getting-started-hello-world.html
AWS SAM CLI sam local invoke –e event.json MyFunction //
LambdaFunctionをlocalで実⾏ sam local generate-event // Lambdaのevent.jsonを⽣成 sam local start-api –p 3000 // localでHTTPサーバーを⽴てる alexa-skills-kit / alexa-smart- home / apigateway / batch / cloudformation / cloudfront / cloudwatch / codecommit / codepipeline / cognito / config / dynamodb / kinesis / lex / recognition / s3 / ses / sns / sqs / stepfunctions サービス名 https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/ developerguide/sam-cli-command-reference-sam-local-generate-event.html
CDKアプリ作成・デプロイフロー cdk bootstrap cdk init app --language typescript npm run
build cdk synth (中略) cdk deploy ここで発⽣する Lambda関数の開発
SAM CLI with CDK sam local invoke –e event.json –t
./cdk.out/HelloCdkStack.template.json MyFunction // LambdaFunctionをlocalで実⾏ sam local start-api -t ./cdk.out/CdkSamExampleStack.template.json // localでHTTPサーバーを⽴てる https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-cdk-testing.html
• Public な http/https URLを発⾏ • Private なIPしか持てない環境 に転送可能 •
⼿元のコードが動く AWS Lambda AWS Cloud HTTP sam local start-api Amazon API Gateway https://ngrok.com/
SAM or CDK • 単⼀YAML • サーバーレスアーキテクチャメイン • ⼩規模 •
ポリシーテンプレート • TypeScript, Python, Go … • CDKの対応サービスは多い • サーバーレスはもちろん ネットワークやEC2、ストレージ etc • 中〜⼤規模向け AWS CDK Local開発 / デバッグ
CDK ♥ SAM