【動画レポ】Case study: Saving over $4,000 per month with Aurora Serverless v2〜JAWS PANKRATION 2024 #jawspankration #jawspankration2024 #jawsug
今回は2024年8月25日(土)から26日(日)にかけて開催されたJAWS-UG(Japan AWS User Group)のイベント「JAWS PANKRATION 2024」のセッションアーカイブ動画からレポートします。
JAWS PANKRATIONとは世界中のAWSユーザーがタスキをつなぐように24時間連続してセッションを行うというイベントで2021年に開催されましたが、今年2024年に復活しました。
<JAWS PANKRATION 2021の記事はこちら>
はじめに
テーマ
Aurora Serverless V2を利用した月額4000ドル以上のコスト削減
スピーカー
Tsukasa Kawamuraさん
・NTTデータ 公共領域のクラウドマイグレーションのコンサル
本日のトピック
・Aurora Serverless V2のコスト削減事例
・Aurora Serverless V2のパフォーマンスとスケーリングについて
・Aurora Serverless V2を選定するための基準
Aurora Serverless V2とは?
オンデマンドでオートスケーリングが可能なリレーショナルデータベース
・高い可用性、拡張性、スケーラビリティ
・コスト効率は高いと言われているが・・・・
・サーバレスライプとプロビジョンドタイプを併用することも可能
キャパシティユニット(ACU)
・1ACUの対して2GBのメモリを備える
・これが増減(0.5〜128まで増減する)することによりスケーリングを実現
・コストは従量課金、1時間あたり0.2$/ACU(東京リージョ)
事例紹介
移行前のシステム要件
・一般的なWeb構成
・複雑な検索機能がある
・ユーザー数は50万人、1日あたり1000〜500,000のサインイン
・システム連携は1時間あたり50,000件のリクエスト
・すべてのレスポンスは3秒位内
・24H365Dの稼働
特徴(課題)
・平日9:00-17:00の利用が多い
・休日夜間でも突発的にリクエストがある
・需要の予測が難しい、日によってリクエストがバラバラ
・高い可用性、パフォーマンスが必要、ダウンすると他システムにも影響
・データベスは最大値に合わせて提供しないといけない
⇒そこをなんとかしたい
・24H稼働でシステム変更が難しい
移行後のシステム構成
・4ノード×2環境をAurora Servaerless V2に移行
コスト
一般的なコストの考え方
・最初に考えた構成は16コア128GBのインスタンス
8ノードで月額16,000$相当
同じようなServerless構成では74,000$相当にもなる(4.6倍)
どのくらいの使用率にしたらプロビジョンタイプより安くなるか?
・14ACU(8GB)の利用率になると同様の金額
平均で128GB以下の使用率にならなければ
プロビジョンインスタンスよりも高くなってしまう
運用コスト
コストはインスタンス料金だけではない
・人にかかるコストを意識する必要がある
変更のコスト、人件費、テスト、システムダウンのコスト
⇒Aurora Serverless V2を選定する際には意識することが必要
実際のコスト
・2ACU〜64ACUまでのスケーリング
・実測値として月額4000$〜8000$相当のコスト削減
なぜこのようなコスト削減が実現したか?
・使用率が大規模に変化する(低いときもあれば高いときもある)
・最大負荷に耐えないといけないが、その時はそれほど多くない
24時間かどうなので継続的な見直し、スケーリングが難しい
〜Aurora Serverless V2選定の理由
パフォーマンス
一般的なAurora ServerlessV2のパフォーマンスとスケーリング
MinimumACUとMaximamACU
MinimumACU:
・小さいほど良いが小さいとスケールアップのパフォーマンスに影響
スケールアップのスピードに留意
スケールアップとスケールダウン
・スケールアップは非常にクイックにACUが増加⇒心配ない
大きなインスタンスほどスケールアップが速い
・スケールダウンはより安全サイドに倒れた対応
負荷が下がっても段階的なスケールダウン
〜よりパフォーマンスに影響が出ないスケーリングがされる
実際のパフォーマンス
レイテンシーが非常に高まることもなくCPUの使用率にあわせてACUがクイックにスケーリングされている
・性能試験でも問題は起きなかった
選定ポリシー
Aurora Serverless V2をどのような場合に選定すべきか?
・パフォーマンスの要件に対して平均利用率が低い場合
・負荷の予測がつきにくい場合
・スケーリングの運用コストや運用タスクの負担が難しい場合
・変更によるダウンタイムが確保しにくい場合
・スケーリングによるコストを突き詰めたい場合
選定ロジック
フローをたどると3つのタイプの中から選定
・プロビジョニングインスタンス・オンデマンド
・プロビジョニングインスタンス・リザーブド
・Aurora Serverless V2
まとめ
Aurora Serverless V2は
・凄くフレキシブルなスケーリングを提供
・大規模なコスト削減も可能なサービス
・実際にコストが削減できるのかはケースバイケース
〜注意事項は意識する必要がある
コストパフォーマンスと需要に対するスケーリングのしやすさがトレードオフになる
スケーリングのパフォーマンスも試験をして負荷に耐えられるかを考える
事例からの教訓
・すべての選択肢はトレードオフ、全てにハマる選択肢はない
・サーバレスの利用料に対しては定期的な見直しをする
<資料>