Fargate用にRDS Ploxyを作成
はじめに
FargateにRDS Ploxyを使用する機会があったため、手順をまとめます。
RDS Ploxyについてはこちら↓
Amazon RDS Proxy を使用すると、アプリケーションでデータベース接続をプールおよび共有して、アプリケーションのスケーリング能力を向上させることができます。RDS Proxy は、アプリケーション接続を維持しながらスタンバイ DB インスタンスに自動的に接続することで、データベースの障害に対するアプリケーションの耐障害性を高めます。RDS プロキシを使用すると、データベースにAWS Identity and Access Management(IAM)認証を適用し、クレデンシャルをAWS Secrets Managerに安全に保存することもできます。
コネクションプーリングはこちらがわかりやすいです↓
現在のPloxy対象の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
- Aurora MySQL 5.6
- fargate
構築は、ALB→fargate→Aurora
という流れになります。
Ploxyを導入すると、ALB→fargate→Ploxy→Auroa
という構築になります。
下記記事を参考にしました。
Secrets Managerを作成
RDSのデータベース認証情報のSecretsを作成します。
Auroraのマスターユーザー
とマスターパスワード
を入力します。
暗号キーは、デフォルトのDefaultEncryptionKey
でよいです。
Ploxyのセキュリティーグループを作成
PloxyとAuroraのSGのを設定します。
基本的に、ALB→fargate→Ploxy→Auroa
という流れですので、PloxyとAuroraのインバウンド設定が必要です。
fargate(サーバー)のSGは、ELBのみ許可しています。
設定 | タイプ | ポート | ソース |
---|---|---|---|
fargate | カスタムTCP | 80 | ALBのSG |
Ploxy | MySQL/Aurora | 3306 | fargateのSG |
Aurora | MySQL/Aurora | 3306 | PloxyのSG |
Ploxyを作成
- データベース
:作成済みのAurora
- リーダーエンドポイント
:含める
- Secrets Manager シークレット
:先程作成したSecrets
- IAM ロール
:IAM ロールを作成
(Secretsが使えるように、Ploxy用のIAMロールを作成してくれる)
- IAM 認証
:無効
(IAMロールのみの認証になる)
- VPC セキュリティグループ
:先程作成したSG
ライターとリーダーエンドポイントが作成されるため、fargateの接続先エンドポイントを修正し、デプロイすると、Ploxyに接続できます!
CloudWatchメトリクス
Ploxyのメトリクス一覧はこちら↓
参考
Author And Source
この問題について(Fargate用にRDS Ploxyを作成), 我々は、より多くの情報をここで見つけました https://qiita.com/holdout0521/items/07b25f81f1a983e0191c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .