数秒で起動して VPC 不要でどこからでも接続できる Amazon Aurora PostgreSQL エクスプレス設定が一般提供になったので実際に起動時間を計測した
ウィスキー、シガー、パイプをこよなく愛する大栗です。
re:Invent 2025 で COMING SOON としてアナウンスされていた高速に Amazon Aurora PostgreSQL を作成するエクスプレス設定(express configuration)が一般提供になりましたので、実際に接続できるまでの時間を図ってみました。
- Announcing Amazon Aurora PostgreSQL serverless database creation in seconds
- Create with express configuration - Amazon Aurora User Guide
エクスプレス設定(express configuration)とは
Amazon Aurora PostgreSQL のエクスプレス設定は、事前定義されたデフォルト値を使って Aurora PostgreSQL サーバーレスデータベースを数秒で起動できる新しいデータベース作成方式です。
re:Invent 2025 のセッションで Aurora DSQL の様に Aurora Serverless も数秒で起動するようになると赤ウンスがありました。従来の Aurora PostgreSQL は VPC の設定やインスタンス種別の選択など多くの設定項目があり、作成完了まで数分かかることもありました。エクスプレス設定ではそれらを事前設定済みのデフォルト値に集約し、2クリックで作成できるようになっています。作成したクラスターにリーダーを追加することも可能です。
デフォルト設定と変更可否
エクスプレス設定では多くの項目がデフォルト値で固定されていますが、一部は作成時または作成後に変更できます。コンソールから作成するときの設定は以下になります。全設定一覧はドキュメントの Express configuration settings を参照してください。
| 設定 | 値 | 編集可能なポストクリエーション |
|---|---|---|
| DB エンジンバージョン | バージョン 17 | はい、アップグレード可能 |
| DB クラスター識別子 | database-2 | はい |
| データベースマスターユーザー名 | postgres | はい |
| DB インスタンスタイプ | サーバーレス*<BR/>自動垂直スケーリング(拡張/縮小) | はい |
| 最小キャパシティ値 | 0 ACU (0 GiB)<BR/>(Scales to 0 after 5min of inactivity) | はい |
| 最大キャパシティ値 | 16 ACU (32 GiB)<BR/>1 ~ 256 (0.5 の増分) | はい |
| 非アクティブ後に一時停止 | 300 秒<BR/>300 ~ 86400 秒 (5 分から 24 時間) | はい |
| ストレージ設定 | Aurora スタンダード* | はい |
| 暗号化 | AWS/RDS 所有のキーで有効化 | いいえ |
| インターネットアクセスゲートウェイ | 有効 | いいえ |
| プライベートアクセス/VPC | 無効 /VPC 使用不可 | いいえ |
| 認証 | IAM のみ | いいえ |
インターネットアクセスゲートウェイ
エクスプレス設定の大きな特徴のひとつが、デフォルトで有効になるインターネットアクセスゲートウェイです。現時点ではエクスプレス設定クラスター専用の機能です。クラスターは VPC に入らずパブリックなインターネットからアクセスすることとなります。セキュリティ面が心配になりますが、IAM 認証のみのため安全にアクセスできます。
主な特徴は以下のとおりです。
- PostgreSQL ワイヤープロトコル対応:psql や各種 SDK など幅広いツールからそのまま接続できます
- VPN・Direct Connect 不要:AWS インフラ外の開発環境からもインターネット経由で直接接続できます
- マルチ AZ 分散:複数のアベイラビリティーゾーンに分散しており、Aurora クラスターと同等の可用性を持ちます
- フルマネージド:ソフトウェアの更新やパッチ適用は AWS が行います
- IAM 統合:一時的なトークンベースのアクセス制御により接続できます。管理者ユーザーへの
rds_iamロール付与も作成時に自動設定されます
Vercel・Kiro との連携
エクスプレス設定はAIを活用した開発ツールとの連携も充実しています。
Amazon Aurora PostgreSQL は Vercel Marketplace と統合 されており、Amazon Aurora PostgreSQL を v0 で利用可能になっており、自然言語から本番向けフルスタック Web アプリケーションを構築する際に Aurora PostgreSQL をデータベースとして直接作成・接続できます。
Kiro も Aurora PostgreSQL powers が用意されており、AI エージェントによる開発支援を受けながら Aurora バックエンドのアプリケーションを構築できます。また Amazon Aurora Postgres MCP Server を使えば、MCP 対応のツールから Aurora PostgreSQL を直接操作することもできます。
利用可能リージョン
エクスプレス設定は現在、AWS China・AWS GovCloud (US)・Middle East (UAE)・Middle East (Bahrain) を除く全 AWS 商用リージョンで利用可能です。
料金
料金は通常の Aurora Serverless と同様に、ACU(Aurora Capacity Unit)の消費量に基づいて秒単位で課金されます。ゼロキャパシティからの自動起動・停止・スケールに対応しているため、使っていない時間は課金されません。
制限事項
エクスプレス設定で作成したクラスター、およびデフォルトで有効になるインターネットアクセスゲートウェイには以下の制限があります。
- エクスプレス設定は Aurora PostgreSQL でのみ使用できます。
- 作成されたクラスターは AWS/RDS サービス管理キーで暗号化されます。カスタムキーは使用できません。
- エクスプレス設定クラスターは VPC への関連付けはできません。
- エクスプレス設定クラスターはインターネットアクセスゲートウェイを無効化不可できません。
- RDS IAM 認証はインターネットアクセスゲートウェイでのみ使用できます。
- エクスプレス設定ではエンジンバージョンを指定できません。
- エクスプレス設定クラスターでは Aurora Serverless v2 インスタンスのみ対応です。作成後にインスタンスタイプの変更やインスタンスの追加が可能です。
- エクスプレス設定クラスターははデフォルトパラメータグループのみサポートします。パラメータグループは作成後に更新できます。
- 以下の機能は、VPCに関連付けられていないため、エクスプレス構成で作成されたクラスターではサポートされていません。
- Aurora Limitless Database
- Aurora Global Database
- RDS Proxy
- Aurora Zero-ETL integration
- RDS Query Editor
- Blue/Green Deployments
- Database Activity Streams
- Zero Downtime Patching
- Babelfish
- RDS Data API は作成後に有効化できますが、マスターユーザー名・パスワード認証には対応していません。
- Database Insights Advanced モード は作成後に
ModifyDBClusterで有効化できます。 - エクスプレス設定クラスターは IPv4 のみサポートしています。
- エクスプレス設定クラスターは作成時にすべての設定を変更することはできません。
- エクスプレス設定クラスタでは
ssl_ciphersパラメータは無視され、デフォルトの暗号スイート設定が使用されます。
やってみる
前提条件
- AWS CLI v2.34.16 以降がインストール・設定済み
- 対象リージョン:ap-northeast-1(東京)
- 実行環境:AWS CloudShell
$ aws --version
aws-cli/2.34.17 Python/3.14.3 Linux/6.1.163-186.299.amzn2023.x86_64 exec-env/CloudShell exe/x86_64.amzn.2023
CLI でやってみる
--with-express-configuration パラメータを付けるだけで、クラスターとインスタンスを 1 つのコマンドで作成できます。
aws rds create-db-cluster \
--db-cluster-identifier my-express-db-1 \
--engine aurora-postgresql \
--with-express-configuration \
--region ap-northeast-1
以下のようなレスポンスが返ってきて来ます。
{
"DBCluster": {
"AllocatedStorage": 1,
"AvailabilityZones": [
"ap-northeast-1c",
"ap-northeast-1d",
"ap-northeast-1a"
],
"BackupRetentionPeriod": 1,
"DBClusterIdentifier": "my-express-db-1",
"DBClusterParameterGroup": "default.aurora-postgresql17",
"Status": "creating",
"MultiAZ": false,
"Engine": "aurora-postgresql",
"EngineVersion": "17.7",
"Port": 5432,
"MasterUsername": "postgres",
"PreferredBackupWindow": "13:44-14:14",
"PreferredMaintenanceWindow": "thu:17:46-thu:18:16",
"UpgradeRolloutOrder": "second",
"ReadReplicaIdentifiers": [],
"DBClusterMembers": [
{
"DBInstanceIdentifier": "my-express-db-1-instance-1",
"IsClusterWriter": false,
"DBClusterParameterGroupStatus": "in-sync",
"PromotionTier": 1
}
],
"VpcSecurityGroups": [],
"StorageEncrypted": false,
"StorageEncryptionType": "sse-rds",
"DbClusterResourceId": "cluster-ABCDEFGHIJKLMNOPQRSTUVWXYZ",
"DBClusterArn": "arn:aws:rds:ap-northeast-1:123456789012:cluster:my-express-db-1",
"AssociatedRoles": [],
"IAMDatabaseAuthenticationEnabled": true,
"ClusterCreateTime": "2026-03-26T05:05:17.845000+00:00",
"EngineMode": "provisioned",
"AutoMinorVersionUpgrade": true,
"DeletionProtection": false,
"HttpEndpointEnabled": false,
"CopyTagsToSnapshot": false,
"CrossAccountClone": false,
"DomainMemberships": [],
"TagList": [],
"ServerlessV2ScalingConfiguration": {
"MinCapacity": 0.0,
"MaxCapacity": 16.0,
"SecondsUntilAutoPause": 300
},
"ServerlessV2PlatformVersion": "3",
"DatabaseInsightsMode": "standard",
"PerformanceInsightsEnabled": false,
"LocalWriteForwardingStatus": "disabled",
"EngineLifecycleSupport": "open-source-rds-extended-support",
"VPCNetworkingEnabled": false,
"InternetAccessGatewayEnabled": true
}
}
以下の様に psql で接続できます。認証は aws rds generate-db-auth-token コマンドで情報を取得できます。
export RDSHOST=""my-express-db-1-instance-1.cluster-abcdefghijkl.ap-northeast-1.rds.amazonaws.com"
psql "host=$RDSHOST port=5432 dbname=postgres user=postgres sslmode=require password=$(aws rds generate-db-auth-token --hostname $RDSHOST --port 5432 --username postgres --region ap-northeast-1)"
psql (15.16, server 17.7)
WARNING: psql major version 15, server major version 17.
Some psql features might not work.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: off)
Type "help" for help.
postgres=>
時間計測
実際にアクセスにどの程度の時間がかかるのか、以下のようなスクリプトで実際に起動時間を計測してみます。
START=$(date +%s) && echo "開始: $(date '+%H:%M:%S')"
aws rds create-db-cluster \
--db-cluster-identifier my-express-db-2 \
--engine aurora-postgresql \
--with-express-configuration \
--region ap-northeast-1
while true; do
RESULT=$(aws rds describe-db-clusters \
--db-cluster-identifier my-express-db-2 \
--region ap-northeast-1 \
--query 'DBClusters[0].[Status,Endpoint]' \
--output text)
STATUS=$(echo "$RESULT" | awk '{print $1}')
ENDPOINT=$(echo "$RESULT" | awk '{print $2}')
ELAPSED=$(( $(date +%s) - START ))
echo "$(date '+%H:%M:%S') [${ELAPSED}s] Status: ${STATUS}"
if [ "$STATUS" = "available" ] && [ -n "$ENDPOINT" ]; then \
TOKEN=$(aws rds generate-db-auth-token \
--hostname "$ENDPOINT" \
--port 5432 \
--username postgres \
--region ap-northeast-1 2>/dev/null)
if PGPASSWORD="$TOKEN" psql \
"host=$ENDPOINT port=5432 dbname=postgres user=postgres sslmode=require" \
-c "SELECT 1" ; then \
echo "$(date '+%H:%M:%S') [${ELAPSED}s] psql ログイン成功"
break
else \
echo "$(date '+%H:%M:%S') [${ELAPSED}s] available(psql 接続確認中...)"
fi
fi
sleep 1
done
実際にスクリプトを実行してみます。
$ ./rds_express.sh
開始: 06:36:21
{
"DBCluster": {
"AllocatedStorage": 1,
"AvailabilityZones": [
"ap-northeast-1c",
"ap-northeast-1d",
"ap-northeast-1a"
],
"BackupRetentionPeriod": 1,
"DBClusterIdentifier": "my-express-db-2",
"DBClusterParameterGroup": "default.aurora-postgresql17",
"Status": "creating",
"MultiAZ": false,
06:36:29 [8s] Status: creating
06:36:31 [10s] Status: creating
06:36:33 [12s] Status: creating
06:36:35 [14s] Status: creating
06:36:37 [16s] Status: creating
06:36:39 [18s] Status: creating
06:36:41 [20s] Status: creating
06:36:43 [22s] Status: creating
06:36:45 [24s] Status: creating
06:36:47 [26s] Status: available
?column?
----------
1
(1 row)
06:37:00 [26s] psql ログイン成功
26 秒でステータスが available になりました。初回の IAM 認証は 10 秒程度時間がかかるようです。
接続できたので、バージョンを確認します。
```bash
~ $ export RDSHOST="my-express-db-2.cluster-abcdefghijkl.ap-northeast-1.rds.amazonaws.com"
~ $ psql "host=$RDSHOST port=5432 dbname=postgres user=postgres sslmode=require password=$(aws rds generate-db-auth-token --hostname $RDSHOST --port 5432 --username postgres --region ap-northeast-1)"
psql (15.16, server 17.7)
WARNING: psql major version 15, server major version 17.
Some psql features might not work.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, compression: off)
Type "help" for help.
postgres=> SELECT version();
version
--------------------------------------------------------------------------------------------------------------
PostgreSQL 17.7 on aarch64-unknown-linux-gnu, compiled by aarch64-unknown-linux-gnu-gcc (GCC) 10.5.0, 64-bit
(1 row)
問題なく接続できています。コマンドでの作成から接続まで、全部で 1 分もかかりませんでした。
コンソールの場合は、RDS コンソールのダッシュボードにあるエクスプレス設定の「作成」ボタンをクリックします。

データベースの作成をクリックすれば作成が開始されます。

作成前に設定の詳細を開くと以下のように表示されます。DB クラスター識別子、データベースマスターユーザー、最小キャパシティ値、最大キャパシティ値、非アクティブ後に一時停止 は値を変更可能です。

さいごに
エクスプレス設定を実際に試したところ、CLI コマンド実行からデータベースが available になるまでわずか 26 秒でした。VPC やサブネットグループの準備なしにパブリックネットワークからアクセスできるのは、サーバーレス構成や外部サービスからの接続に相性が良さそうです。
本番環境での利用も Aurora らしい高可用性・高性能を維持しており、マルチ AZ 分散のインターネットアクセスゲートウェイや読み取りレプリカの追加も後から設定できます。
ぜひからエクスプレス設定を試してみてください。






