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
Terraformで作る分析用Aurora Readerインスタンス/Aurora Reade...
Search
Tocyuki
September 30, 2022
0
290
Terraformで作る分析用Aurora Readerインスタンス/Aurora Reader instance for analysis made with Terraform
Tocyuki
September 30, 2022
Tweet
Share
More Decks by Tocyuki
See All by Tocyuki
HashiCorp製品導入の背景と今後の展望/Background of HashiCorp product introduction and future prospects
tocyuki
0
41
AEON TECH HUBで目指すもの/What we aim for with AEON TECH HUB
tocyuki
0
26
マイクロサービス導入により生まれた組織課題に対するソリューションとしてのTiDB/Developers Summit 2024 TiDB Sponsor Session
tocyuki
0
23
イオンがKubernetesを採用してどうなった/What happened when AEON adopted Kubernetes
tocyuki
0
27
FutureStack_Tokyo_NRUG_2周年特別版
tocyuki
0
12
ecspresso愛を語る/I Love ecspresso
tocyuki
0
2.8k
DevOps実装初期フェーズの組織がTerraformとecspressoで求めるAmazon ECS CICDの最適解/AWS ECS CICD with Terraform and ecspresso
tocyuki
11
4.3k
さいつよのEC2オートスケーリング環境CICDパイプライン2022オータム/Strongest EC2 Autoscaling Environment CI/CD Pipeline 2022 Autumn
tocyuki
5
3.1k
Devに力を授けたいSREのあゆみ / SRE that wants to empower developers
tocyuki
4
1.1k
Featured
See All Featured
Six Lessons from altMBA
skipperchong
26
3.5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
3
370
Agile that works and the tools we love
rasmusluckow
327
21k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
167
49k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Documentation Writing (for coders)
carmenintech
65
4.4k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Bash Introduction
62gerente
608
210k
Transcript
2022/09/30 JAWS-UG SRE支部 高負荷対策祭り Terraformで作る 分析用Aurora Readerインスタンス
自己紹介 名前:Tocyuki(としゆき) 所属:株式会社トラストバンク CTO室 SRE 趣味:ギター、柔術(紫帯) SNS:@Tocyuki 2
会社紹介
会社概要 4 資本金 122,243,816円 親会社 株式会社チェンジ(東京証券取引所第一部) 100%連結子会社 子会社 株式会社Orb 決算期 3月 主な事業・サービス ふるさと納税ポータルサイト「ふるさとチョイス」 パブリテック事業 「LoGoシリーズ」 エネルギー事業 ふるさとエネルギーチョイス「えねちょ」
地域通貨事業 「chiica(チーカ)」
Vision 5 目指すは「自立した持続可能な地域をつくる」こと。 トラストバンクが目指す地域共創で実現する経済循環図
6 ふるさと納税事業 パブリテック事業 エネルギー事業 地域通貨事業 主な事業・サービス
SECTION 7 00 Terraformで作る 分析用Aurora Readerインスタンス
8 こんな経験ありませんか?
9 問い合わせ調査のために本 番のリードレプリカにクエリ 投げるぞー! 分析基盤から本番のリード レプリカに集計用のクエリ投 げるぞー!
10 SELECT * FROM kusodeka_table;
11 5分後
12 おや?アラートが上がってきたぞ? Internal Server Error???
13 オワタ
この時のシステム構成 14 Writer Reader Server Server LB User 見える、見えるぞ! Replication
Dev Bastion 分析基盤 (ゴクリ・・・)
Replication この時のシステム構成 15 Writer Reader Server Server LB User Dev
SELECT * FROM kusodeka_table; Bastion 分析基盤 サービストラフィックが流れているDBに重いクエ リを流すとサービス影響が出てしまうので極力 やりたくない は?サイト落ちてる? クレームいれたろ。 SELECT * FROM kusodeka_table;
16 オワタ
17 高負荷対策祭り開始じゃあ(?) \ ド ン コ ド ン コ ド
ン コ ド ン コ /
Analysisインスタンスの追加 18 • Readerインスタンスの一台のみサービストラフィックを流さな いようにする • 集計、分析専用のReaderインスタンスとしてカスタムエンドポ イントを付与する • 集計、分析用の重いクエリはこのAnalysisインスタンスにの
みクエリが投げられる状態にする
Replication こんなかんじにしたい 19 Writer Reader Server Server LB User Dev
SELECT * FROM kusodeka_table; Bastion 分析基盤 見える、見えるぞ! Analysis サービストラフィックは流 れていないので重いク エリが流れてもサービス に影響が出ないように SELECT * FROM kusodeka_table;
20 Terraformでどのように実装するか?
Aurora Clusterの作成 21
Aurora Writerインスタンスの作成 22
Aurora Readerインスタンスの作成 23
Aurora Analysisインスタンスの作成 24 フェイルオーバー時にAnalysisインスタ ンスがWriterに昇格しないように重み付 けしておく
Analysisカスタムエンドポイントの作成 25 Endpoint Typeは「READER」を 指定する Analysisインスタンスのみを指定する
Readerカスタムエンドポイントの作成 26 以前はカスタムエンドポイントの設定変更 進行中は、そのカスタムエンドポイントを 名前解決してもメンバーのインスタンス情 報が返ってこなくなる状態が数分間続くと いう問題があったが、現在はその問題も 解消されている様子なのでAutoScaling 対応のためReadレプリカにもカスタムエ ンドポイントを付与する
Analysisインスタンスのみを除外する
AutoScaling Replication 通信イメージ 27 Writer Reader Server Analysis Reader用カスタムエンドポイント Analysis用カスタムエンドポイント
RDSクラスターエンドポイント Reader Reader 分析基盤
まとめ 28 • 集計、分析用のDBを用意したい場合、Analysisインスタンス を用意してカスタムエンドポイントを付与しよう • 集計、調査用の重いクエリはAnalysis用カスタムエンドポイン トへ投げよう • Terraformでかんたんに実装可能なので試してみよう
10/8(土) JAWS DAYS 2022 登壇します 29 さいつよのEC2オートスケーリング環境 CI/CDパイプライン2022オータム Track D:
14:20 - 15:00
None