Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
スタートアップのFeature環境 #AWSStartup #AWSStartup_Kansai
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yusuke WADA
November 19, 2024
Technology
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
スタートアップのFeature環境 #AWSStartup #AWSStartup_Kansai
AWS Startup Meetup 大阪 Vol.3 LT by @fillz_noh
Yusuke WADA
November 19, 2024
More Decks by Yusuke WADA
See All by Yusuke WADA
AWS 怖い話 WAF編 @fillz_noh #AWSStartup #AWSStartup_Kansai
fillznoh
0
380
Other Decks in Technology
See All in Technology
Kiro Meetup #8 Kiro アップデート (2026/3/21〜2026/9/24)
katzueno
1
270
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
380
Oracle Cloud Infrastructure(OCI):Onboarding Session(はじめてのOCI/Oracle Supportご利⽤ガイド)
oracle4engineer
PRO
3
21k
AI臭い文章とは何なのか
nasuvitz
1
130
Harness Engineering on Rails
joelq
0
610
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
800
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
670
3人で1000GPU超を統合運用する?マルチクラウド&オンプレを跨ぐ、構築と運用のリアル!
kazukun0716
2
490
サーバーレスをどこまで使う? WebRTC対戦ゲームで選んだVPSとの共存設計
kaidouji85
0
460
あけおめLINE 傾向とその対策
nasa9084
0
340
特殊変数大全
dak2
0
140
その Lambda、8分で 管理者権限まで奪われます
k1nakayama
7
3.8k
Featured
See All Featured
Heart Work Chapter 1 - Part 1
lfama
PRO
10
36k
Automating Front-end Workflow
addyosmani
1369
210k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.1k
Unsuck your backbone
ammeep
672
58k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
So, you think you're a good person
axbom
PRO
2
2.2k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.7k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
530
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
The Limits of Empathy - UXLibs8
cassininazir
1
690
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.1k
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
一緒にやりたい方、サービスにご興味ある方 お待ちしております! スマートラウンド 採用