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
Amazon Aurora Serverless v2が意外と高かった話と、AWS Dat...
Search
Satoshi Kaneyasu
May 09, 2024
Programming
1
620
Amazon Aurora Serverless v2が意外と高かった話と、 AWS Database Migration Serviceの話
Satoshi Kaneyasu
May 09, 2024
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
GitHub Actionsのキャッシュと手を挙げることの大切さとそれに必要なこと
satoshi256kbyte
5
430
Amazon Neptuneで始めてみるグラフDB-OpenSearchによるグラフの全文検索-
satoshi256kbyte
4
390
【5分LT】フロントエンドとバックエンドを繋ぐ認証サービス Amazon Cognito
satoshi256kbyte
2
59
AWS認定資格を受験するにあたり、気づいたこと・実践していたことのまとめ
satoshi256kbyte
2
170
[LT]Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
340
おもにクラウドの話してます#3 OPスライド
satoshi256kbyte
1
31
AWS CodeCommitの次として考えた場合のAmazon CodeCatalyst
satoshi256kbyte
1
930
アプリケーションエンジニアがDistributed Load Testingで 負荷テストをしてみる〜Ver.B〜
satoshi256kbyte
2
63
アプリケーションエンジニアがDistributed Load Testingで負荷テストをしてみる〜Ver.A〜
satoshi256kbyte
2
120
Other Decks in Programming
See All in Programming
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.7k
シェーダーで魅せるMapLibreの動的ラスタータイル
satoshi7190
1
480
Ethereum_.pdf
nekomatu
0
460
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
ローコードSaaSのUXを向上させるためのTypeScript
taro28
1
610
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
Jakarta EE meets AI
ivargrimstad
0
130
Click-free releases & the making of a CLI app
oheyadam
2
110
.NET のための通信フレームワーク MagicOnion 入門 / Introduction to MagicOnion
mayuki
1
1.5k
初めてDefinitelyTypedにPRを出した話
syumai
0
400
タクシーアプリ『GO』のリアルタイムデータ分析基盤における機械学習サービスの活用
mot_techtalk
4
1.4k
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
How to train your dragon (web standard)
notwaldorf
88
5.7k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Agile that works and the tools we love
rasmusluckow
327
21k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
370
Mobile First: as difficult as doing things right
swwweet
222
8.9k
GraphQLとの向き合い方2022年版
quramy
43
13k
Site-Speed That Sticks
csswizardry
0
23
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Fireside Chat
paigeccino
34
3k
A Philosophy of Restraint
colly
203
16k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Transcript
Amazon Aurora Serverless v2が意外と ⾼かった話と、 AWS Database Migration Serviceの話 2024.05.09
SATOSHI KANEYASU
⾃⼰紹介 ⽒名︓兼安 聡 職種︓クラウドエンジニア 最近のお仕事︓DevOpsの推進 趣味︓サックス、筋トレ、CS ゲーム 資格︓ X(Twitter)︓@satoshi256kbyte
お伝えしたいこと • Amazon Aurora Serverless v2は意図せず⾼額になりうる。 • DBは後から種類の移⾏をカバーする 設定変更機能やAWS DMSというサービスが存在するというこ
と。
Amazon Aurora Serverless v2とは Aurora Serverless v2 は、Amazon Aurora ⽤のオンデマンドの
オートスケーリング設定です。Aurora Serverless v2 によって、 ワークロードをモニタリングし、データベースの容量を調整するプ ロセスを⾃動化しやすくなります。容量は、アプリケーションの需 要に応じて⾃動的に調整されます。DB クラスターが消費するリ ソースに対してのみ課⾦されます。 引⽤ https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/aurora- serverless-v2.html
Amazon Aurora Serverless v2は ACUという単位で性能が増減し、 それに応じて料⾦が増減します。 最⼩0.5ACU、最⼤128ACUのような設定ができま す。
構成図 AWS Lambda AWS App Runner Amazon Aurora Serverless v2
Amazon RDS Proxy (コネクションプーリング)
全然動かしてないのに結構⾼コスト 5⽉頭からGW前半時点
RDS Proxyの数字が気になる この2つは基本セットなのにACU-Hrに 開きがあるのはなぜ︖
公式サイトを確認 Amazon RDS Proxyの料⾦ https://aws.amazon.com/jp/rds/proxy/pricing/?nc=sn&loc=3 料⾦ 最低料⾦ Aurora Severless v2
0.025USD/ACU-時間 8 ACU プロビジョニングインスタンス 0.018US/vCPU-時間 2個の vCPU
公式サイトを確認 Amazon RDS Proxyの料⾦ https://aws.amazon.com/jp/rds/proxy/pricing/?nc=sn&loc=3 料⾦ 最低料⾦ Aurora Severless v2
0.025USD/ACU-時間 8 ACU プロビジョニングインスタンス 0.018US/vCPU-時間 2個の vCPU Aurora Serverless v2そのものはアクセスがなければACUは1とか0.5になるが、 RDS Proxyの料⾦は絶対に8 ACUかかる模様。 しかも停⽌という概念がないので、1ヶ⽉これぐらいは絶対にかかる。 0.025×8×24×30=144$>約21,600円(1$150円換算)
利⽤者が増えるまでは通常のAuroraの⽅が コスト効率は良いと思います Amazon Aurora Amazon Aurora Serverless v2 この変更はマネジメントコンソールで 設定を変更するだけの話
(ダウンタイムの考慮は必要)
ここで思い出す。 現実的には「Aurora⾃体が⾼い」と ⾔われることもあるので、RDSを使うことも ありそう。 開発時は特にそう。
本番はAuroraだけど開発の初期はRDSという 状況はあり得る Amazon Aurora Amazon Aurora Serverless v2 この場合、RDSからのAuroraへの変更は、 画⾯で設定変更だけとはいかない
Amazon RDS (MySQL)
RDSからAuroraの移⾏は 以前はエクスポート・インポートで やっていました。 でも今回は AWS Database Migration Servic(DMS) でやってみます
AWS DMSとは • データ移⾏サービスです。 • 本当はオンプレミスからAWSへの移⾏などに使われますが、 RDS→Auroraにも使えます。
AWS DMSの⼤まかな⼿順 • Auroraは先に作っておく • レプリケーションインスタンスの作成 • レプリケーションインスタンス=データ移⾏処理を実⾏するインスタンスです • ソースエンドポイントを作成(RDSを指定)
• ターゲットエンドポイントを作成(Auroraを指定) • データベース移⾏タスクを作成して実⾏
レプリケーションインスタンスと 2つのエンドポイントの経路 Virtual private cloud (VPC) Private subnet Private subnet
Security group Security group Security group Amazon RDS (MySQL) Amazon Aurora AWS DMS レプリケーション インスタンス ソースエンドポイント ターゲットエンドポイント DB側のセキュリティグループは、 レプリケーションインスタンスが 属すセキュリティグループの3306 の通信を許可 レプリケーションインスタンスは、 DBと通信可能なサブネットに配置 セキュリティグループも設定する
[参考]レプリケーションインスタンスの設定 この画⾯は新規作成後の編集画⾯です。 サブネットの設定は新規作成時にしかできません。
[参考]レプリケーションインスタンスのセキュ リティグループ 今回のケースの場合、 インバウンドは何もいらないです。
[参考]エンドポイントの設定 DBのエンドポイントのユーザ名・パスワードを設定して おきます。
[参考]データベース移⾏タスク ここまでで作ったインスタンスと各エンドポイントを指定してタスクを実⾏します。 移⾏対象はスキーマ単位・テーブル単位で絞ることができます。
まとめ • Amazon Aurora Serverless v2を使うと何もしなくても RDS Proxyにより⾼額になりうる。 • AWS
DMSや設定変更でカバーすることができるので、 状況に応じたDB選定しても⼤丈夫だということを覚えておいて ほしい。 • AWS DMSの落とし⽳があればまた共有します。
ありがとうございました。