ヤマムギ

growing hard days.

*

RDS ProxyをAurora MySQLで

      2021/09/27

Lambda関数をたくさん同時実行してMySQLにアクセスしても大丈夫なようにRDS Proxyを試してみました。

AuroraはMySQLでクラスターを起動しておきました。

RDS Proxyの作成

RDSコンソールからプロキシーの作成をしました。
エンジンはMySQL、データベースは作成済のAuroraクラスターを指定して、接続プールの最大数は100%にしました。

Secrets Managerが必須なので作成しました。
ユーザー名、パスワードはAuroraクラスターのマスターユーザー名とパスワードを指定しました。
IAMロールは新規作成しました。
サブネットはAuroraクラスターのサブネットグループと同じ。
セキュリティグループはAuroraクラスターと同じですが、自分自信をソースとして3306を許可しておきました。

データベースの準備

デモデータを用意しておきました。

テスト用のLambda

Lambdaを実行するLambda関数

データベースに接続するLambda関数を100回実行するLambda関数です。

データベースに接続するLambda関数

pymysqlはLambdaレイヤーでアップロードしています。
接続してSELECTを実行するだけです。

Auroraクラスタに直接接続

まずは、Auroraクラスタに直接接続してみました。

リクエストの数だけDB接続が作成され、途中から次のエラーになりました。
[ERROR] OperationalError: (1040, ‘Too many connections’)

RDS Proxyを使って接続

プロキシエンドポイントが作成されていたので、host=の行を差し替えました。

今回は’Too many connections’エラーが発生することなくすべて処理ができました。
RDS Proxyがうまくやってくれたのですね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

IAMセッションポリシーの利用(GetFederationToken)

GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …

Amazon Elasticsearch ServiceにMySQLのデータを投入してkibanaで可視化してみる

MySQLのデータの可視化にAmazon Elasticsearch Servi …

ブログのアーキテクチャをコストベースで見直しました

当ブログはAWSで構築しています。 アーキテクチャをコストを最重視して見直しまし …

AWS CDKでリージョンをまたいだクロススタックリファレンスはできなかった

例えばこんなコードが実行できるかというと、 [crayon-662a7f9052 …

EC2にSystems MangerからCloudWatchエージェントをインストール

CloudWatchエージェント EC2の標準メトリクスでは収集できないメモリの …

AWS EC2 インスタンスステータスのチェックで失敗 原因はPHP-FPMのOOM-KILLER

先週に引き続きEC2のインスタンスステータスチェックで失敗 再起動するも失敗する …

AWS Cost Explorerの設定で「EC2リソースの推奨事項を受け取る」を有効にしました

「EC2リソースの推奨事項を受け取る」という機能がAWS Cost Explor …

IAMユーザーにパスワード変更とMFA設定を許可する

組織管理のIAMで、ユーザーにMFAを使ってサインインしない限り操作は許可しない …

よくあるサーバーレスアーキテクチャで質問フォーム

この記事はServerless2 Advent Calendar 2018に参加 …

AWS Organizationsでタグポリシーを設定しようとしました

Organizationsで[タグポリシーを有効にする]ボタンを押下しました。 …