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
Aurora Cloneで QA環境をつくってみた
Search
toridori
January 09, 2025
0
130
Aurora Cloneで QA環境をつくってみた
toridori
January 09, 2025
Tweet
Share
More Decks by toridori
See All by toridori
Locustでmacから開発環境に負荷試験をしてみた
toridori_dev
0
93
N + 1 問題の概要と Railsにおける解決方法
toridori_dev
0
86
ニューモーフィズムってどうなの
toridori_dev
0
210
toridori base webをv0で爆速で作った話
toridori_dev
0
140
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
250
KoT APIでプチ業務改善を試してみた
toridori_dev
0
220
MUI DataGridProコンポーネントの紹介
toridori_dev
0
450
あの日行ったマージの仕組みを僕達はまだ知らない。
toridori_dev
0
230
DBマイグレーションとORMについて
toridori_dev
0
190
Featured
See All Featured
Optimizing for Happiness
mojombo
377
70k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
270
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
13
1k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Writing Fast Ruby
sferik
628
61k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
The Invisible Side of Design
smashingmag
299
50k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
134
33k
KATA
mclloyd
29
14k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
Aurora Cloneで QA環境をつくってみた CTO室 寺田 20241220
自己紹介 入社エントリみてください! https://note.com/toridori_inc/n /n045d275596e4
本番リリースまでの流れ toridoriのインフラ環境 ローカル Code,Build Test 開発 機能テスト ステージング or QA
動作テスト 本番 リリース AWS
ステージングはAWS本番環境にある toridoriのインフラ環境 ローカル 開発 ステージング or QA 本番 AWS AWS開発
AWS本番
ステージングはAWS本番環境にある toridoriのインフラ環境 ステージング or QA 本番 AWS AWS本番 • 限りなく本番に近い環境
◦ デプロイテスト ◦ 動作検証 ◦ システム検証 • 開発環境は事業部側も利用する • STGは開発者の利用がメイン
• 1つのデータベースをPRODとSTGで利用 ◦ STGで検証したいけど、本番にまで影響がある ◦ Aurora RDSは高いのでなるべく増やしたくない… • 開発環境でなんとかしたらいいじゃん ◦
データ量が違う ◦ ネットワークや環境変数(NODE_ENVとか)が違う toridoriのインフラ環境 課題
簡単に作れて、簡単に消せるデータベースのQA環境をつくろう! AWSで公開しているサンプルから https://github.com/aws-samples/aws-stepfunctions-aurora-clone • EventBridge • StepFunction • Lambda •
Aurora Clone QA環境 を簡単に作れる方法を試してみた!
簡単にいうと、 ある地点からクローンを作成するけど、変更があるまでは同じファイルを参照する仕組み Auroraクローンって? Amazon Aurora DB クラスターのボリュームのクローン作成 https://docs.aws.amazon.com/ja_jpAmazonRDS/latest/AuroraUserGuide/Aurora.Managing.Clone.html
AWS account (toridori-sandbox) CDK Step Functions workflow AWS構成図 EC2 Aurora
Step Functions Lambda (Check) EventBridge Lambda (Clone) Lambda (Delete) SSM Portforwarding
StepFunction 処理内容 aurora_check_status.py aurora_clear_target.py aurora_clone.py
パラメータ VPC ID SecurityGroup ID
Clone DBに書き込んでも 元のDBへ変更がないことを確認 実際にAurora Cloneの安全性を試してみる。
・toridoriではAuroraを採用している ・AWS RDS機能で安全に・簡単に複製可能! ・本番影響がないので多少雑にあつかっても怖くない その他 sandbox環境がめっちゃ便利。 いいところ
• 現状のCDKだと1つのクローンしかできない → StepFunctionの量産で複数環境可能 Lambdaは使いまわし • Cluster Endpointがクローンするたびに変わる → SSMParameterでEndpoint名を格納で解決?
• クローンにちょっと時間がかかる。(15-20min) → 抗えない。 懸念事項を質問タイムで聞きたい わるいところ
ご清聴ありがとうございました