首页 > 解决方案 > ECS Fargate 容器正在抛出 org.postgresql.util.PSQLException:连接尝试失败

问题描述

我的 ECS Fargate 容器和 Aurora RDS (Postgres 11.7) 数据库位于 VPC 的同一私有子网中。我的 ECS 仅允许来自公共子网中的 ALB 的入站访问

我还在使用 TCP 协议的 RDS 安全组的“入站规则”部分添加了 ECS 安全组。我的 dockerized CUBA 应用程序仍然无法连接到数据库。它使用 JDBC url:jdbc:postgresql://cluster writer endpoint/databasename 但抛出以下错误

03:55:10.672 INFO com.zaxxer.hikari.HikariDataSource - Connection Pool-Main - Starting...

2020-11-20T14:55:10.691+11:00   03:55:10.691 DEBUG com.zaxxer.hikari.pool.PoolBase - Connection Pool-Main - Failed to create/setup connection: The connection attempt failed.   

2020-11-20T14:55:10.766+11:00.  03:55:10.702 DEBUG com.zaxxer.hikari.pool.HikariPool       - Connection Pool-Main - Cannot acquire connection from data source
                                
2020-11-20T14:55:10.766+11:00 org.postgresql.util.PSQLException: The connection attempt failed.

2020-11-20T14:55:10.766+11:00   at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:292) ~[postgresql-42.2.9.jar:42.2.9]

2020-11-20T14:55:10.766+11:00   at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49) ~[postgresql-42.2.9.jar:42.2.9]  

2020-11-20T14:55:10.766+11:00.  at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:211) ~[postgresql-42.2.9.jar:42.2.9]

我的 Aurora 数据库是“预置的”而不是无服务器的。此外,我可以使用同一 VPC 中的 Cloud9 EC2 环境连接到数据库(通过将其安全组添加到数据库安全组的“入站规则”部分)。

关于这里可能是什么问题的任何想法。我在这里缺少一些 VPC 设置还是一些 JDBC 驱动程序版本问题?

标签: postgresqlamazon-web-servicesaws-fargateamazon-auroracuba-platform

解决方案


推荐阅读