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
スタートアップのFeature環境 #AWSStartup #AWSStartup_Kansai
Search
Yusuke WADA
November 19, 2024
Technology
0
140
スタートアップのFeature環境 #AWSStartup #AWSStartup_Kansai
AWS Startup Meetup 大阪 Vol.3 LT by @fillz_noh
Yusuke WADA
November 19, 2024
Tweet
Share
More Decks by Yusuke WADA
See All by Yusuke WADA
AWS 怖い話 WAF編 @fillz_noh #AWSStartup #AWSStartup_Kansai
fillznoh
0
160
Other Decks in Technology
See All in Technology
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
190
帳票構造化タスクにおけるLLMファインチューニングの性能評価
yosukeyoshida
1
120
自分がLinc’wellで提供しているプロダクトを理解するためにやったこと
murabayashi
1
170
増え続ける脆弱性に立ち向かう: 事前対策と優先度づけによる 持続可能な脆弱性管理 / Confronting the Rise of Vulnerabilities: Sustainable Management Through Proactive Measures and Prioritization
nttcom
1
220
Snowflake のアーキテクチャは本当に筋がよかったのか / Data Engineering Study #30
indigo13love
0
290
解消したはずが…技術と人間のエラーが交錯する恐怖体験
lamaglama39
0
140
完璧を目指さない小さく始める信頼性向上
kakehashi
PRO
0
120
メモ整理が苦手な者による頑張らないObsidian活用術
optim
0
150
経理出身PdMがAIプロダクト開発を_ハンズオンで学んだ話.pdf
shunsukenarita
1
240
VLMサービスを用いた請求書データ化検証 / SaaSxML_Session_1
sansan_randd
0
130
AI工学特論: MLOps・継続的評価
asei
10
2k
alecthomas/kong はいいぞ
fujiwara3
6
1.1k
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.7k
Fireside Chat
paigeccino
37
3.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Unsuck your backbone
ammeep
671
58k
The World Runs on Bad Software
bkeepers
PRO
70
11k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Code Reviewing Like a Champion
maltzj
524
40k
Done Done
chrislema
184
16k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Gamification - CAS2011
davidbonilla
81
5.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
Transcript
2024-11-19 AWS Startup Meetup 大阪 Vol.3 スタートアップの Feature 環境
01 自己紹介 02 Feature環境の自動生成 03 コスト抑えたい 04 今後やりたいこと
目次
3 自己紹介 01
4 • 株式会社スマートラウンド • 2人目SRE • 大阪在住、フルリモート ◦ 月1東京 •
好きなAWSサービス ◦ AWS WAF • 最近のお気に入り ◦ Bedrockで翻訳ファイル生成 01 自己紹介 こんにちは! 和田 友助(WADA Yusuke)
01 自己紹介 smartroundとは 5 • ミッション ◦ スタートアップが可能性を最大限に発揮で きる世界をつくる
• プロダクト ◦ スタートアップ・投資家間のデータ作成・共 有プラットフォーム
01 こんな動きも 自己紹介 6
7 Feature環境の自動生成 02
• ECS on Fargateで運用 • ステージング環境 : developブランチ(メインブランチ) ◦ リリース前のテスト・動作確認がメイン
◦ 特定ブランチの確認をしたい時、Slackで宣言して使い終わったらdevelopブランチに戻す • ローカル環境では確認難しい開発する時に動作確認が不便 ◦ 外部連携でローカル専用のクレデンシャルが用意出来ない時など… ◦ 静止点の環境が欲しい… • 特定ブランチの確認をじっくり行いたい 02 ステージング環境あるあるの課題 Feature環境の自動生成 8 → ブランチ( PR)単位ごとの専用環境 Feature環境の誕生 https://pr番号.example.com
02 Github Actionsで作成 Feature環境の自動生成 Githubプルリクエストにて create envとコメント トリガー ALBのリスナー、リスナールール
ターゲットグループ、 Route53 DNSレ コード等のリソースを作成 Terraform ecspressoでデプロイ デプロイ Github Actions上でビルドして ECRへプッシュ イメージ Build &Push 9
• ARMへの変更確認 • データベース関連の変更の確認 ◦ DBのHOST指定をコメントで出来るようにアップデートしてかなり便利になった 02 SREでもドッグフーディングしていて便利 Feature環境の自動生成
10
11 コスト抑えたい 03
• 期間が長くなるとその間起動しっぱなしはつらい ◦ ほぼ1人のための環境が24時間稼働ではコストがかさむ • 夜間・土日祝は停止させてコストを抑えたい 03 とはいえ コスト抑えたい
12
• Lambda? • EventBridge? • EventBridge スケジューラ? 03 ECSタスクの自動終了、自動起動といえば
コスト抑えたい 13
• 指定時刻にMax/Minのキャパシティを変更出来る ◦ 止めたい時間に0/0 と変更するとdesired キャパシティも0になってタスク0になる 03 Application Auto Scaling
コスト抑えたい 14 スケジュールスケーリングどうでしょう? $ aws application-autoscaling put-scheduled-action \ --service-namespace ecs \ --scalable-dimension ecs:service:DesiredCount \ --resource-id service/*****-app \ --scheduled-action-name off-hours-scale-in \ --schedule "cron(0 13 * * ? *)" \ --scalable-target-action MinCapacity=0,MaxCapacity=0 毎日22時に実 行
• 月〜金の朝6時にECSタスク1にする 03 Application Auto Scaling コスト抑えたい 15 朝に起動させる場合
$ aws application-autoscaling put-scheduled-action \ --service-namespace ecs \ --scalable-dimension ecs:service:DesiredCount \ --resource-id service/*****-app \ --scheduled-action-name on-hours-startup \ --schedule "cron(0 21 ? * SUN-THU *)" \ --scalable-target-action MinCapacity=1,MaxCapacity=1 平日朝6時に 実行
03 Terraformでも可能 コスト抑えたい 16
• スケジュールアクションの作成は必要です が、LambdaやEventBridgeの作成は必要 ではなく、比較的シンプルに出来るのかなー と思っています。 • 難点 ◦ マネジメントコンソールからは設定・確
認が出来ない ▪ イベントログから実行履歴は確 認出来ます。 03 比較的大掛かりにならなくて良い コスト抑えたい 17
18 今後やりたいこと 04
• マージ/ブランチ削除のタイミングで環境を自動削除 • DBマイグレーションを組み込む 04 ToDo 今後やりたいこと 19
一緒にやりたい方、サービスにご興味ある方 お待ちしております! スマートラウンド 採用