0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Aurora Serverless v2をRDS Proxyと併用するときのコストの落とし穴

Posted at

開発環境用のAuroraインスタンスでdb.t3.mediumを使っていたのですが、CPUUtilization(CPU使用率)が10 %前後とリソースをかなり持て余していました。

各インスタンスの料金を比べてみたところ、ACU(Aurora Capacity Unit)が最小容量(0.5)近くで運用されていれば、Serveless v2の方が安くなりそうだということがわかり、インスタンスを変更してみました。

インスタンス料金(Aurora Standard, Tokyo)

  • db.t3.medium: 0.125 USD/hour
  • Severless v2: 0.15 USD/ACU

なんかコストが上がった..

インスタンス変更後、ACUの使用状況を確認するためにServerlessDatabaseCapacityメトリクスを確認したところ、変更直後は2 ACU近くまで上昇しましたが、その後は安定して0.5 ACU付近で稼働していました。

ServerlessDatabaseCapacityのグラフ

おっしゃ!想定通りコスト下がった!と思い、Cost Explorerを確認してみたところ、なぜか7 USD/dayくらいコストが上がっていました..

Cost Explorerのグラフ

コスト増の原因

Cost Explorerで「使用タイプ」ごとにグループ化して料金の内訳を確認したところ、APN1-RDS:Proxy-ASv2-Usageが約10 USD/dayものコストを占めていることがわかりました。

Proxyコストの内訳

そもそもインスタンス変更前はAPN1-RDS:ProxyUsageという表示だったのに、Serverless v2に変更後は APN1-RDS:Proxy-ASv2-Usageという異なる項目になっていました。

公式ドキュメントでRDS Proxyの料金を確認してみたところ、Aurora Serverless v2では「最低8 ACU分の料金が発生する」という記載を発見しました。

RDS Proxy料金のスクリーンショット

実は、「Lambda + RDS Proxy + Aurora」構成から「ECS + Aurora」構成へ移行する過渡期だったため、RDS Proxy をそのまま残して運用していました。これがコスト増加の原因でした..

コスト比較

  • APN1-InstanceUsage:db.t3.medium: 約3.00 USD/day
  • APN1-Aurora:ServerlessV2Usage: 約2.21 USD/day
  • APN1-RDS:Proxy-ASv2-Usage: 約10 USD/day

インスタンスコストだけで比較するとServerless v2の方が約1 USD安くなっていました。RDS Proxyを削除し、Aurora Serverless v2単体で運用することで、コストを最適化することができました。

補足: Auroraバージョンによるさらなるコスト最適化

今回使用したAurora MySQLのバージョンは3.07.0でした。このバージョンではACUの最小容量が0.5ですが、3.08.0以降では最小ACUが0に設定可能とのことです。

これにより、アイドル時にはさらにコストを削減できそうです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?