𝕏 f B! L
案件・求人数 12,345
案件を探す(準備中) エージェントを探す(準備中) お役立ち情報 ログイン
案件・求人数 12,345
AWS Aurora Serverless v2完全ガイド|SES案件で使える実践術

AWS Aurora Serverless v2完全ガイド|SES案件で使える実践術

AWSAuroraServerlessデータベースSES
目次

「Auroraは高性能だけど、常にインスタンスを稼働させるとコストが心配」「Serverless v1は制約が多かったけど、v2はどう変わったの?」——AWSのデータベースサービス選定で、こうした疑問を持つエンジニアは多いのではないでしょうか。

Aurora Serverless v2は、オートスケーリングによるコスト最適化と、Aurora Provisionedと同等の高パフォーマンスを両立する、AWSのマネージドデータベースサービスです。 SES案件でもAurora関連の需要は増加しており、Serverless v2の知識は案件獲得と単価アップに直結します。

この記事では、Aurora Serverless v2のアーキテクチャから、コスト最適化テクニック、SES案件での活用法、CDK/Terraformによるデプロイ手順まで実践的に解説します。

この記事を3秒でまとめると

  • Aurora Serverless v2はACU単位でオートスケールし、使った分だけ課金される
  • 最小0.5 ACUから最大256 ACUまで自動調整、マルチAZ対応で高可用性
  • SES案件でのDB設計・運用スキルとして高く評価される

Aurora Serverless v2とは? — 従来版との違い

Serverless v1 → v2の進化ポイント

Aurora Serverless v1は2018年にリリースされましたが、以下のような制約がありました。

項目Serverless v1Serverless v2
スケーリング段階的(ACU倍増)きめ細かい(0.5 ACU単位)
スケーリング速度30秒〜数分数秒
マルチAZ非対応対応
Global Database非対応対応
リードレプリカ非対応最大15台
RDS Proxy非対応対応
一時停止あり(0コスト)なし(最小ACUで課金)

v2は、v1の主要な制約をほぼすべて解消しています。きめ細かいスケーリングマルチAZ対応が最大の進化ポイントです。

RDS / Aurora Provisioned との使い分け

AWSのリレーショナルデータベースサービスは複数あり、ワークロードに応じた選択が重要です。

比較項目RDSAurora ProvisionedAurora Serverless v2
パフォーマンス★★★★★★★★★★★★★
コスト(安定負荷)$$$$$$$$(最小ACUが常時課金)
コスト(変動負荷)$$$(過剰プロビジョン)$$$$$$(使った分だけ)
運用負荷
スケーラビリティ手動手動+リードレプリカ自動

Aurora Serverless v2を選ぶべき場面:

  • トラフィックの変動が大きい(昼夜差、月末集中等)
  • 開発・ステージング環境で使い、夜間はスケールダウンしたい
  • 新規プロジェクトで将来のトラフィックが読めない

Aurora Provisionedを選ぶべき場面:

  • 24時間安定した高負荷が続く
  • 最大パフォーマンスを常に確保する必要がある
  • 予算が確定しており、予測可能なコストを求める

Aurora Serverless v2のアーキテクチャと課金モデル

Aurora Serverless v2のアーキテクチャと仕組み

ACU(Aurora Capacity Unit)によるオートスケーリング

ACUはAurora Serverless v2の課金単位であり、スケーリングの単位です。

  • 1 ACU = 約2GB RAM
  • 最小ACU: 0.5(約1GB RAM)
  • 最大ACU: 256(約512GB RAM)
  • スケーリング粒度: 0.5 ACU単位

スケーリングの動作:

  1. ワークロードの増加を検知(CPU使用率、接続数、メモリ使用量)
  2. 数秒以内にACUを自動増加
  3. ワークロード低下後、徐々にACUを減少
  4. 最小ACU設定値まで下がると、それ以下にはならない

このきめ細かいスケーリングにより、Provisionedのように「余裕を持って大きめのインスタンスを選ぶ」必要がなくなり、無駄なコストが発生しにくいのが大きなメリットです。

マルチAZ対応と可用性

Aurora Serverless v2は、Aurora Provisionedと同じくマルチAZでの高可用性を実現しています。

  • ライターインスタンス: 1つのAZで稼働
  • リーダーインスタンス: 別のAZに配置可能(最大15台)
  • フェイルオーバー: ライター障害時、リーダーが自動昇格(通常30秒以内)
  • ストレージ: 3つのAZに6コピーを自動レプリケーション

SES案件で「高可用性のDB設計」を求められる場面では、Aurora Serverless v2のマルチAZ構成が有力な選択肢になります。

コスト最適化の実践テクニック

最小ACU・最大ACUの設定戦略

コスト最適化の最重要ポイントは、最小ACU・最大ACUの適切な設定です。

本番環境:

最小ACU: 2.0(ベースラインのレスポンスを確保)
最大ACU: 32.0(ピーク時の対応余力)

ステージング環境:

最小ACU: 0.5(最小コスト)
最大ACU: 8.0(テスト時の負荷に対応)

開発環境:

最小ACU: 0.5
最大ACU: 2.0(開発には十分)

アイドル時のコスト vs Provisioned比較

Aurora Serverless v2はv1と異なり完全停止(0コスト)ができない点に注意が必要です。最小ACUでの課金が常に発生します。

構成アイドル時月額コスト(東京リージョン)
Serverless v2(最小0.5 ACU)約$45/月
Serverless v2(最小2.0 ACU)約$180/月
Provisioned(db.r6g.large)約$280/月
Provisioned(db.r6g.xlarge)約$560/月

変動負荷の場合、Serverless v2はProvisionedの50〜70%のコストで運用できるケースが多いです。

FinOps視点でのモニタリング設定

AWS Well-Architected Frameworkのコスト最適化の柱に基づき、以下のモニタリングを設定することを推奨します。

  • CloudWatchメトリクス: ServerlessDatabaseCapacity(現在のACU使用量)
  • ACU使用率アラーム: 最大ACUの80%に達したらアラート
  • コスト異常検出: AWS Cost Anomaly Detectionで日次監視
  • ACU推移のダッシュボード: 24時間・7日間の推移を可視化

SES案件で求められるAurora Serverless v2スキル

案件での頻出タスクと必要知識

SES案件でAurora Serverless v2に関連して求められるタスクは以下の通りです。

  1. 新規構築: VPC設計、サブネットグループ作成、パラメータグループ設定
  2. 移行: RDS/Aurora ProvisionedからServerless v2への移行
  3. パフォーマンスチューニング: ACU設定の最適化、クエリ最適化
  4. 監視設計: CloudWatchアラーム、Performance Insights設定
  5. セキュリティ設計: 暗号化、IAM認証、VPCエンドポイント
  6. DR設計: バックアップ戦略、ポイントインタイムリカバリ

面談でアピールすべきポイント

SES面談でAurora Serverless v2の経験をアピールする際のポイント:

  • 「なぜServerless v2を選んだか」を説明できる: RDS/Provisionedとの比較検討のプロセス
  • コスト最適化の実績: 「ACU設定の最適化で月額30%削減」のような具体的な数値
  • トラブルシューティング経験: スケーリングの遅延、接続数の上限問題等
  • IaCでの構築経験: CDK/Terraformでの再現可能なインフラ構築

構築ハンズオン — CDK/Terraformでのデプロイ

VPC + Aurora Serverless v2の構成例

AWS CDK(TypeScript):

import * as cdk from 'aws-cdk-lib';
import * as ec2 from 'aws-cdk-lib/aws-ec2';
import * as rds from 'aws-cdk-lib/aws-rds';

export class AuroraServerlessStack extends cdk.Stack {
  constructor(scope: cdk.App, id: string) {
    super(scope, id);

    const vpc = new ec2.Vpc(this, 'Vpc', {
      maxAzs: 3,
      natGateways: 1,
    });

    const cluster = new rds.DatabaseCluster(this, 'AuroraCluster', {
      engine: rds.DatabaseClusterEngine.auroraPostgres({
        version: rds.AuroraPostgresEngineVersion.VER_16_4,
      }),
      vpc,
      vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE_ISOLATED },
      serverlessV2MinCapacity: 0.5,
      serverlessV2MaxCapacity: 16,
      writer: rds.ClusterInstance.serverlessV2('writer'),
      readers: [
        rds.ClusterInstance.serverlessV2('reader', {
          scaleWithWriter: true,
        }),
      ],
      storageEncrypted: true,
      deletionProtection: true,
    });
  }
}

Terraform:

resource "aws_rds_cluster" "aurora_serverless" {
  cluster_identifier     = "my-aurora-serverless"
  engine                 = "aurora-postgresql"
  engine_mode            = "provisioned"
  engine_version         = "16.4"
  database_name          = "mydb"
  master_username        = "admin"
  manage_master_user_password = true
  storage_encrypted      = true
  deletion_protection    = true

  vpc_security_group_ids = [aws_security_group.aurora.id]
  db_subnet_group_name   = aws_db_subnet_group.aurora.name

  serverlessv2_scaling_configuration {
    min_capacity = 0.5
    max_capacity = 16.0
  }
}

resource "aws_rds_cluster_instance" "writer" {
  cluster_identifier = aws_rds_cluster.aurora_serverless.id
  instance_class     = "db.serverless"
  engine             = aws_rds_cluster.aurora_serverless.engine
  engine_version     = aws_rds_cluster.aurora_serverless.engine_version
}

トラブルシューティングと運用Tips

Aurora Serverless v2の運用で遭遇しやすい問題と対処法を紹介します。

問題1: スケーリングが追いつかない

  • 原因: 急激なトラフィック増加に対してACU増加が間に合わない
  • 対処: 最小ACUを上げてベースラインを確保する。予測可能なピーク前にはスケジュールでACUを事前に上げておく

問題2: 接続数エラー

  • 原因: ACUに対して接続数が多すぎる
  • 対処: RDS Proxyを導入して接続プーリングを行う。アプリ側のコネクションプール設定を見直す

問題3: コストが想定を超える

  • 原因: 最大ACUまでスケールアウトが頻繁に発生
  • 対処: Performance Insightsで重いクエリを特定し最適化。不要なインデックスの整理

問題4: フェイルオーバーが遅い

  • 原因: リーダーインスタンスが存在しない
  • 対処: リーダーを最低1台追加し、フェイルオーバー先を確保する

まとめ — サーバーレスDBの需要は今後も拡大

Aurora Serverless v2の重要ポイントを振り返ります。

  • 自動スケーリング: ACU単位のきめ細かいスケーリングで、無駄なコストを削減
  • 高可用性: マルチAZ、リードレプリカ対応でエンタープライズ要件にも対応
  • 運用負荷の軽減: インスタンスサイズの手動調整が不要
  • SES案件での需要: DB設計・運用スキルは常に高需要

サーバーレスデータベースの市場は今後も拡大が見込まれます。Aurora Serverless v2のスキルを身につけておくことは、SESエンジニアとしての市場価値を確実に高めます。

まずはAWS無料利用枠でServerless v2クラスターを構築し、ACUのスケーリング動作を体験してみることをおすすめします。


SES BASEでは、AWS関連のSES案件を多数掲載しています。

👉 SES BASEで案件を探す

関連記事:

SES案件をお探しですか?

SES記事をもっと読む →
🏗️

SES BASE 編集長

SES業界歴10年以上のメンバーが在籍する編集チーム。SES企業での営業・エンジニア経験、フリーランス独立経験を持つメンバーが、業界のリアルな情報をお届けします。

📊 業界データに基づく記事制作 🔍 IPA・経済産業省データ参照 💼 SES実務経験者が執筆・監修