Skip to content

Commit 2ea4141

Browse files
authored
Merge pull request #2203 from redis/RDSC-4040-add-note-for-RDS-proxy
RDSC-4040 add note for RDS proxy
2 parents ff650a3 + dd25d85 commit 2ea4141

File tree

1 file changed

+24
-5
lines changed
  • content/operate/rc/databases/rdi

1 file changed

+24
-5
lines changed

content/operate/rc/databases/rdi/setup.md

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,12 +127,24 @@ For more details on AWS PrivateLink, see [Share your services through AWS Privat
127127

128128
To set up PrivateLink for a database hosted on AWS RDS or AWS Aurora:
129129

130-
1. [Create an RDS Proxy](#create-rds-proxy) that will route requests to your database.
131-
1. [Create a network load balancer](#create-network-load-balancer-rds) that will route incoming HTTP requests to the RDS proxy.
130+
{{<warning>}}
131+
The RDS Proxy does not work with RDS PostgreSQL and Aurora PostgreSQL because it does not support PostgreSQL logical replication.
132+
133+
For PostgreSQL databases, use one of the following alternatives instead:
134+
- **For test environments**: Connect the Network Load Balancer directly to the database IP address (skip the RDS Proxy step).
135+
- **For production environments**: Use the AWS Lambda approach described in [Access Amazon RDS across VPCs using AWS PrivateLink and Network Load Balancer](https://aws.amazon.com/blogs/database/access-amazon-rds-across-vpcs-using-aws-privatelink-and-network-load-balancer/).
136+
{{</warning>}}
137+
138+
1. [Create an RDS Proxy](#create-rds-proxy) that will route requests to your database (MySQL and SQL Server only).
139+
1. [Create a network load balancer](#create-network-load-balancer-rds) that will route incoming requests to the RDS proxy (or directly to the database for PostgreSQL).
132140
1. [Create an endpoint service](#create-endpoint-service-rds) through AWS PrivateLink.
133141

134142
### Create RDS proxy {#create-rds-proxy}
135143

144+
{{<note>}}
145+
For RDS PostgreSQL and Aurora PostgreSQL, skip this step and proceed directly to [Create network load balancer](#create-network-load-balancer-rds) and configure it to connect directly to your database IP address.
146+
{{</note>}}
147+
136148
In the [AWS Management Console](https://console.aws.amazon.com/), use the **Services** menu to locate and select **Database** > **Aurora and RDS**. [Create an RDS proxy](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-proxy-creating.html) that can access your database.
137149

138150
The Proxy's IAM role must have the following permissions to access the database using the credentials secret and encryption key:
@@ -146,7 +158,7 @@ You can set the proxy's IAM role during creation in the **Authentication** secti
146158

147159
In the [AWS Management Console](https://console.aws.amazon.com/), use the **Services** menu to locate and select **Compute** > **EC2**. [Create a network load balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-network-load-balancer.html#configure-load-balancer) with the following settings:
148160

149-
1. In **Basic configuration**:
161+
1. In **Basic configuration**:
150162
- **Scheme**: Select **Internal**.
151163
- **Load balancer IP address type**: Select **IPv4**.
152164
1. In **Network mapping**, select the VPC and availability zone associated with your source database.
@@ -157,12 +169,19 @@ In the [AWS Management Console](https://console.aws.amazon.com/), use the **Serv
157169
- **Target type**: Select **IP Addresses**.
158170
- **Protocol : Port**: Select **TCP**, and then enter the port number where your database is exposed.
159171
- The **IP address type** and **VPC** should be selected already and match the VPC you selected earlier.
160-
1. In **Register targets**, enter the static IP address of your RDS proxy, enter the port, and select **Include as pending below**. Then, select **Create target group** to create your target group. Return to **Listeners and routing** in the Network Load Balancer setup.
161-
To get the static IP address of your RDS Proxy, run the following command on an EC2 instance in the same VPC as the Proxy:
172+
1. In **Register targets**, enter the static IP address of your RDS proxy (for MySQL and SQL Server) or your database (for PostgreSQL), enter the port, and select **Include as pending below**. Then, select **Create target group** to create your target group. Return to **Listeners and routing** in the Network Load Balancer setup.
173+
174+
**For MySQL and SQL Server**: To get the static IP address of your RDS Proxy, run the following command on an EC2 instance in the same VPC as the Proxy:
162175
```sh
163176
$ nslookup <proxy-endpoint>
164177
```
165178
Replace `<proxy-endpoint>` with the endpoint of your RDS proxy.
179+
180+
**For PostgreSQL**: To get the static IP address of your database, run the following command on an EC2 instance in the same VPC as the database:
181+
```sh
182+
$ nslookup <database-endpoint>
183+
```
184+
Replace `<database-endpoint>` with the endpoint of your RDS or Aurora PostgreSQL database.
166185
1. Set the following **Listener** properties:
167186
- **Protocol**: Select **TCP**.
168187
- **Port**: Enter your source database's port.

0 commit comments

Comments
 (0)