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
110
Aurora Cloneで QA環境をつくってみた
toridori
January 09, 2025
Tweet
Share
More Decks by toridori
See All by toridori
Locustでmacから開発環境に負荷試験をしてみた
toridori_dev
0
79
N + 1 問題の概要と Railsにおける解決方法
toridori_dev
0
73
ニューモーフィズムってどうなの
toridori_dev
0
200
toridori base webをv0で爆速で作った話
toridori_dev
0
130
ハイパーパラメータチューニングって何をしているの
toridori_dev
0
230
KoT APIでプチ業務改善を試してみた
toridori_dev
0
200
MUI DataGridProコンポーネントの紹介
toridori_dev
0
420
あの日行ったマージの仕組みを僕達はまだ知らない。
toridori_dev
0
220
DBマイグレーションとORMについて
toridori_dev
0
190
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
31
2.1k
Gamification - CAS2011
davidbonilla
80
5.1k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
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) → 抗えない。 懸念事項を質問タイムで聞きたい わるいところ
ご清聴ありがとうございました