6

I'm trying to create a RDS DB Proxy for a Postgres 12.3 RDS instance (not Aurora) via CloudFormation. Stack creation fails with the following message:

Database engine POSTGRES 12.3 for DB Instance db-name is not supported. Register the DB cluster instead of DB instance, or use another DB instance that is supported. (Service: AmazonRDS; Status Code: 400; Error Code: InvalidParameterValue; Request ID: ...)

I cannot find any documentation on which DB instances are supported, i.e. will Postgres 12.2 be OK? Will configuring a cluster make any difference? From the documentation I've seen it appears only Aurora databases support clusters so that may not be an option.

According to this Amazon blog post RDS proxies for Postgres are now 'generally available'.

EDIT: 11.2 also fails Database engine POSTGRES 11.2 for DB Instance db-name is not supported.

jtoberon
  • 8,706
  • 1
  • 35
  • 48
tomfumb
  • 3,669
  • 3
  • 34
  • 50
  • This does not seem to be the error from db proxy. Can you show relevant parts of the template where you define your db? – Marcin Jul 25 '20 at 06:30
  • 1
    @Marcin yes, sorry, you're right. This error comes from the DBProxyTargetGroup. AFAIK the DB Proxy is useless without it so they're effectively interlinked – tomfumb Jul 25 '20 at 06:39
  • No problem. Glad you overcome the issue. – Marcin Jul 25 '20 at 06:41

3 Answers3

11

I finally managed to find some information in another blog post - not the first place I'd look for RDS documentation but apparently this is all I'm going to get.

According to https://aws.amazon.com/blogs/aws/amazon-rds-proxy-now-generally-available/

Currently, RDS Proxy is available for the MySQL and PostgreSQL engine family. This engine family includes RDS for MySQL 5.6 and 5.7, PostgreSQL 10.11 and 11.5.

tomfumb
  • 3,669
  • 3
  • 34
  • 50
  • During my trial and error I saw the DBProxyTargetGroup working with 10.13. I'm not sure what this means for the wider accuracy of the above statement – tomfumb Jul 25 '20 at 06:52
  • 3
    According to the [docs](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-proxy.html#rds-proxy.limitations) (helpfully filed under Aurora...) 10.13 would be expected to work: "For RDS PostgreSQL, RDS Proxy supports version **10.10 and higher minor versions**, and version **11.5 and higher minor versions**" – Peet Whittaker Feb 12 '21 at 15:31
5

Supported versions are listed in the Amazon Aurora documentation located in the following path:

Configuring Your Aurora DB Cluster => Connecting to a DB Cluster => Managing Connections with RDS Proxy

Here's a link directly to that section. You will find supported versions of DBs under the header "Limitations for RDS Proxy"

https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/rds-proxy.html#rds-proxy-setup

scotty1031
  • 51
  • 1
0

As of 2022-06-02, the latest version of Postgres supported is 13 as per https://aws.amazon.com/about-aws/whats-new/2022/04/amazon-rds-proxy-supports-postgresql-major-version-13/

You can find doco of supported Aurora versions here: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.AuroraFeaturesRegionsDBEngines.grids.html

There is currently no documentation of supported versions for standard RDS.

You can find out if RDS proxy supports the version of an existing RDS database version by navigating to the RDS console and creating an RDS proxy. Select Postgres as the engine and if it lists your DB of interest in the drop-down, then it probably supports that version.

If you're considering updating your database version or something and want to know if RDS proxy supports that version, you could create a test instance of the version you're interested in and see if it is listed in the drop-down list.

If that sounds like a dodgey solution to you - you might want to reconsider your usage of the product.

Shorn
  • 19,077
  • 15
  • 90
  • 168