RDS Proxy接続時にUnknown errorが発生

0

LambdaからRDS Proxyを経由してRDSに接続させようとしています。その際、表題の通りUnknown errorが発生します。

問題を切り分けるためにEC2からmysqlコマンドで問題なく接続できるのか確認しました。 結果は、RDS Proxyエンドポイント自体に接続はできるが、接続プロセス内で任意のSQLコマンドを実行すると Unknown error が発生しました。このとき、ProxyエンドポイントではなくRDSエンドポイントに対して同様のコマンドを実行すれば、接続もそのプロセス内でのSQLコマンドの実行も可能でした(例えば show databases; など。
また、Cloudwatchのログには以下のような Aborted connectionのワーニングが出ていました。

2024-11-24T00:05:46.563497Z 494 [Note] [MY-010914] [Server] Aborted connection 494 to db: 'demo_db' user: 'demo_user' host: 'demo_host' (Got an error reading communication packets). (sql_connect.cc:841)

ドキュメントを読んで色々試したのですが解決しないのでどなたかご教授下さい。

2回答
0

以下のドキュメントだとAWSサポートへの連絡が必要と記載されているので、AWSサポートへ念のため確認してみることをお勧めします。
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/rds-proxy.troubleshooting.html

エラーの内容的にはRDS MySQL側のパラメータでタイムアウト値などを調整すれば改善しそうな気がしています。
https://repost.aws/ja/knowledge-center/rds-mysql-communication-packet-error

profile picture
エキスパート
回答済み 2ヶ月前
0

RDS Proxyを介した接続で「Unknown error」が発生し、CloudWatchログに「Aborted connection」のワーニングが表示される問題について、いくつかの可能性と対処方法を提案します。

  1. TLS/SSL接続の問題: RDS ProxyとデータベースインスタンスとのTLSハンドシェイクに失敗している可能性があります。SSL設定を確認し、必要に応じて調整してください。

  2. 接続タイムアウト: RDS Proxyがデータベース接続を確立できずにタイムアウトしている可能性があります。以下の点を確認してください:

  • データベースの最大接続数に達していないか
  • データベースが利用可能な状態にあるか
  1. ネットワーク設定: VPC、サブネット、セキュリティグループ、ネットワークACLの設定を確認し、RDS Proxyとデータベースインスタンス間の通信が正しく許可されているか確認してください。

  2. 認証情報の問題: Secrets Managerに登録された認証情報が正しいか、またデータベースユーザーが存在し、Secrets Managerの秘密情報と同じパスワードを持っているか確認してください。

  3. プロキシ容量: RDS Proxyの容量が不足している可能性があります。CloudWatchメトリクスを確認し、必要に応じてスケーリングを検討してください。

  4. データベースの状態: RDSインスタンスの状態を確認し、問題がないか確認してください。

  5. ログの詳細な分析: RDS ProxyとRDSインスタンスの詳細なログを確認し、エラーの根本原因を特定してください。

これらの点を順次確認し、問題の原因を特定してください。特に、TLS/SSL設定とネットワーク構成を重点的に確認することをお勧めします。問題が解決しない場合は、AWS サポートに連絡し、さらなる支援を求めることも検討してください。
Sources
Troubleshooting for RDS Proxy - Amazon Relational Database Service
Troubleshooting for RDS Proxy - Amazon Aurora
Troubleshoot Amazon RDS for MySQL and Amazon RDS for MariaDB Errors | AWS Database Blog
Troubleshoot ETIMEDOUT error in my Lambda function | AWS re:Post

profile picture
回答済み 2ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン