3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Fargate用にRDS Proxyを作成

Last updated at Posted at 2022-02-11

はじめに

FargateにRDS Proxyを使用する機会があったため、手順をまとめます。
RDS Proxyについてはこちら↓

Amazon RDS Proxy を使用すると、アプリケーションでデータベース接続をプールおよび共有して、アプリケーションのスケーリング能力を向上させることができます。RDS Proxy は、アプリケーション接続を維持しながらスタンバイ DB インスタンスに自動的に接続することで、データベースの障害に対するアプリケーションの耐障害性を高めます。RDS プロキシを使用すると、データベースにAWS Identity and Access Management(IAM)認証を適用し、クレデンシャルをAWS Secrets Managerに安全に保存することもできます。

コネクションプーリングはこちらがわかりやすいです↓

スクリーンショット 2022-07-29 18.57.10.png
ちなみに、VPCEndpointは、RDSProxy作成時、自動で作成されます。

現在のProxy対象のDB

  • RDS for MySQL- MySQL 5.6、5.7 および 8.0
  • RDS for PostgreSQL –バージョン 10.10 以降のマイナーバージョン、バージョン 11.5 以降のマイナーバージョン、およびバージョン 12.5 以降のマイナーバージョン
  • 上記のAuroraも対象です。

事前構築

  • Aurora MySQL 5.6
  • fargate

構築は、ALB→fargate→Auroraという流れになります。
Proxyを導入すると、ALB→fargate→Proxy→Auroaという構築になります。

下記記事を参考にしました。

Secrets Managerを作成

RDSのデータベース認証情報のSecretsを作成します。
Auroraのマスターユーザーマスターパスワードを入力します。
暗号キーは、デフォルトのDefaultEncryptionKey or aws/secretsmanagagerでよいです。

スクリーンショット 2022-02-11 18.36.37.png
スクリーンショット 2022-02-11 18.37.21.png
自動ローテーションを設定は、しなくてよいです。
スクリーンショット 2022-02-11 18.38.51.png

Proxyのセキュリティーグループを作成

ProxyとAuroraのSGのを設定します。
基本的に、ALB→fargate→Proxy→Auroaという流れですので、ProxyとAuroraのインバウンド設定が必要です。
fargate(サーバー)のSGは、ELBのみ許可しています。

設定 タイプ ポート ソース
fargate カスタムTCP 80 ALBのSG
Proxy MySQL/Aurora 3306 fargateのSG
Aurora MySQL/Aurora 3306 ProxyのSG

Proxyを作成

Proxyを作成します
スクリーンショット 2022-02-11 18.52.31.png

- データベース作成済みのAurora
- リーダーエンドポイント含める

  • Secrets Manager シークレット先程作成したSecrets
  • IAM ロールIAM ロールを作成(Secretsが使えるように、Proxy用のIAMロールを作成してくれる)
  • IAM 認証無効(IAMロールのみの認証になる)
  • サブネットRDSに割り当てたサブネットグループと同じ物を選択します
  • VPC セキュリティグループ先程作成したSG

スクリーンショット 2022-02-11 18.53.53.png
スクリーンショット 2022-02-11 18.54.57.png

サブネットは、auroraと同じprivate subnetを選択してください

ライターとリーダーエンドポイントが作成されるため、fargateの接続先エンドポイントを修正し、デプロイすると、Proxyに接続できます!

ライターとリーダーエンドポイント作成時、VPCEndpoint2つ自動で作成されます。

料金

Auroraのうち、2vCPU以下の低スペックの場合、RDSProxy自体は、
0.018USD * 2 * 24 * 31 = 26.7$月にかかります。
ただし、VPUEndPointsも自動で作成されるため、 0.014USD * 24 * 31 = 10.4$月にかかります。
(リーダーエンドポイントも作成すると、2倍の 20.8$ 月にかかります。)

なかなかのコストがかかりますね。

CloudWatchメトリクス

Proxyのメトリクス一覧はこちら↓

参考

3
3
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
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?