从 Heroku 连接到 AWS RDS Aurora 实例超时
Timeout connecting from Heroku to AWS RDS Aurora instance
我需要将 Heroku 上的 Node.js 应用程序 运行 连接到 AWS RDS 中的 Aurora 实例 运行。
连接在我的本地机器上工作正常,但在 Heroku 上 它超时(Error: timeout expired
来自 pg/lib/client.js
)。
我的配置概览:
nodejs@14
knex@0.21.18
pg@8.6.0
- Aurora 实例在
eu-west-1
中 运行
- 我正在使用 Heroku hobby tier dynos(开发环境)
我尝试过的事情:
- 我已经检查了我的 VPC ACL 配置(它看起来对我完全开放):
- 我已经在连接配置中明确提供了 RDS AWS 证书颁发机构证书(来自此处:Using SSL/TLS to encrypt a connection to a DB cluster)- 没有帮助。
- 我尝试使用相同的配置连接到 Heroku Postgres 实例,它工作得很好。
事实证明,即使您在为 RDS 实例创建 VPC 时 select 选择“启用 public 访问”选项,默认情况下 AWS 只会将您的 IP 列入白名单 在安全组设置中。
我已将以下入站规则添加到安全组,并且有效!
我需要将 Heroku 上的 Node.js 应用程序 运行 连接到 AWS RDS 中的 Aurora 实例 运行。
连接在我的本地机器上工作正常,但在 Heroku 上 它超时(Error: timeout expired
来自 pg/lib/client.js
)。
我的配置概览:
nodejs@14
knex@0.21.18
pg@8.6.0
- Aurora 实例在
eu-west-1
中 运行
- 我正在使用 Heroku hobby tier dynos(开发环境)
我尝试过的事情:
- 我已经检查了我的 VPC ACL 配置(它看起来对我完全开放):
- 我已经在连接配置中明确提供了 RDS AWS 证书颁发机构证书(来自此处:Using SSL/TLS to encrypt a connection to a DB cluster)- 没有帮助。
- 我尝试使用相同的配置连接到 Heroku Postgres 实例,它工作得很好。
事实证明,即使您在为 RDS 实例创建 VPC 时 select 选择“启用 public 访问”选项,默认情况下 AWS 只会将您的 IP 列入白名单 在安全组设置中。
我已将以下入站规则添加到安全组,并且有效!