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
App Runner Night 202305
Search
Kazuki Maeda
May 17, 2023
Technology
690
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
App Runner Night 202305
Kazuki Maeda
May 17, 2023
More Decks by Kazuki Maeda
See All by Kazuki Maeda
「答えを出す」より「わかる」をつくる
kzkmaeda
1
200
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
780
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
3
2.4k
日本の教育の未来 を考える テクノロジーは教育をどのように変えるのか
kzkmaeda
1
370
モノリスの認知負荷に立ち向かう、コードの所有者という思想と現実
kzkmaeda
0
290
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
9
8k
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
7.7k
生成AIを用いた 新しい学びの体験を 提供するまでの道のり
kzkmaeda
0
490
生成AIによって変わる世界 -可能性とリスクについて考える-
kzkmaeda
2
440
Other Decks in Technology
See All in Technology
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
190
きのこカンファレンス2026_肩書きを外したとき私は誰か
yamasatimi
1
130
アラート調査向けAIエージェントの本番導入とその後/AI Agents for Alert Investigation: Production Deployment and After
taddy_919
1
320
グローバルチームと挑むプロダクト開発
sansantech
PRO
1
150
初めてのDatabricks勉強会
taka_aki
2
230
そこにあるから地図ができる~位置を示す"モノ"を愉しむ~ - Interface 2026年6月号GPS特集オフ会 / interface_202606_GPS_offline
sakaik
1
190
『AIに負けない』より『AIと遊ぶ』」〜ワクワクが最強のテスト・QA学習戦略_公開用
odan611
1
370
5分でわかる Amazon Connect_20260608
hwangbyeonghun
0
170
HookでSAST、CIでSAST、SCAでどうにかしている話 / layered-security-for-ai-written-code-with-sast-and-sca
yamaguchitk333
0
100
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
240
Hatena Engineer Seminar 37 jj1uzh
jj1uzh
0
420
AIに障害切り分けを全部やってもらった。 。 。 。
estie
0
340
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
67k
Building the Perfect Custom Keyboard
takai
2
810
Prompt Engineering for Job Search
mfonobong
0
360
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
240
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
380
Amusing Abliteration
ianozsvald
1
220
Side Projects
sachag
455
43k
It's Worth the Effort
3n
188
29k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Code Reviewing Like a Champion
maltzj
528
40k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
340
Joys of Absence: A Defence of Solitary Play
codingconduct
1
410
Transcript
Docker Image 既にあるから デプロイしたら動くんでしょ? 2023/5/17 App Runner Night @kzk_maeda
Kazuki Maeda @kzk_maeda SRE @atama plus AWS Community Builders AWS
Startup Community Core Member 7+ years of experience of AWS Like: Lambda / Step Functions / Glue / MWAA / Athena 最近はLlamaIndexとmomentoを触ってる 自己紹介
AppRunnerとの出会い
None
AppRunner App Runnerとの出会い
App Runner 始めました • PaaSで運用していたサブシステムをAWSに移行することに(先月) ◦ Docker deployを用いていた • 既存のContainer
Imageが活用できることに加え、Outbound IP固定化などのいく つかの要件があり、App Runnerが満たしていそうだったので利用開始
Docker Image 既にあるから デプロイしたら動くんでしょ?
甘い
初回構築 IaC CI/CD
初回構築 IaC CI/CD 二度と触れない文鎮Service 予測できないLog Group 諦めた自動デプロイ
ちゃんと作る
初回構築 IaC CI/CD それぞれでの注意点を紹介します
初回構築 IaC CI/CD 二度と触れない文鎮Service 予測できないLog Group 諦めた自動デプロイ
二度と触れない文鎮Service • 初回のdeployでhealth checkに失敗すると、文鎮Serviceが完成! 初回構築 IaC CI/CD
【なぜ?】二度と触れない文鎮Service • App RunnerはB/Gデプロイが裏側で実行される • 一度でもhealthyになったServiceであれば、その後のデプロイで失敗しても 一つ前の状態に自動で戻してくれる • が、初回デプロイだと戻し先がなくて困っちゃったのカナ 初回構築
IaC CI/CD https://docs.aws.amazon.com/apprunner/latest/dg/architecture.html
【どうする?】二度と触れない文鎮Service • 無理です、作り直しましょう 初回構築 IaC CI/CD
初回構築 IaC CI/CD 二度と触れない文鎮Service 予測できないLog Group 諦めた自動デプロイ
予測できないLog Group • App Runnerはデプロイすると自動でLog Groupを作成してくれる • が、作成されるLog Groupにservice-idが含まれていて事前予測不可 ◦
/aws/apprunner/service-name/service-id/service • そして保持期間が無制限 • そのためIaCで保持期間を設定したLog Groupが作成できない 初回構築 IaC CI/CD
【なぜ?】予測できないLog Group • 仕様です • コンソールからアプリケーションログ等を参照する機能が提供されており、 一意性担保のために service-id が必要になったんだと思われる 初回構築
IaC CI/CD https://docs.aws.amazon.com/ja_jp/apprunner/latest/dg/monitor-cwl.html
【どうする?】予測できないLog Group • (Terraformの場合) • App Runner Serviceに依存する形でLog Groupを定義 •
ログエントリが発生すると先に作成されるので、その場合は対象Resourceをimport して保持期間を修正 初回構築 IaC CI/CD
初回構築 IaC CI/CD 二度と触れない文鎮Service 予測できないLog Group 諦めた自動デプロイ
諦めた自動デプロイ • ECRにpushしたら自動でApp Runnerにデプロイ!べんりぃ! • ⇨ RepositoryとWorkloadを別のAWSアカウントにしていると 自動デプロイができない! 初回構築 IaC
CI/CD
【なぜ?】諦めた自動デプロイ • 仕様です • なんとなく、いろいろ難しそうだなというのはわかります • ECRのCross Account Replicationでもダメでした (pushが動いてるわけではなさそうなのでそれはそう)
初回構築 IaC CI/CD
【どうする?】諦めた自動デプロイ • ① 別のCI/CDサービスを使って頑張る ◦ これにより、デプロイプロセスの中で container targetのhealth checkを実行できる ◦
のでApp Runnerにデプロイする際に health checkで落ちてrollbackすることや文鎮になることを防 止できるので逆にアリかもしれない ◦ github actionsのサンプルはあるけど test phaseがない • ②ECRをApp Runnerと同じアカウントに構築する 初回構築 IaC CI/CD CircleCIの例
まとめ
色々あったけど、App Runnerの抽象レベルは好きなので これからもよろしくね!