AWS: Unable to connect Amazon QuickSight to RDS

Viewed 7577

We have a few MySQL RDS instances in West-1 (N. California) and wanted to create some reports using QuickSight. First issue was that QuickSight was only available in West-2 (Oregon) and did not show our RDS, so I created a read-replica database into West-2.

I was still not able to connect to my instance, and it showed the following error: Connection failed. Make sure your instance is accessible from the appropriate Amazon QuickSight IP address range.

I had already created a Security Group allowing IP 54.70.204.128/27 in the inbound rules and applied it to my instance. What eventually allowed me to connect to the instance was to set the 'Publicly Available' field of the instance to 'Yes'.

However, my boss prefers it to remain 'No' and we were also able to connect to the non-public instance via DOMO using MySQL SSH connection method.

Is it possible to get the connection between QuickSight and RDS working without setting Publicly Accessible to Yes?

3 Answers

Things have changed, luckily.

It is possible to connect Amazon QuickSight to a DB in RDS which is in a VPC, although the AWS docs are not clear about all the necessary steps.

Basically, follow the steps here, https://docs.aws.amazon.com/quicksight/latest/user/working-with-aws-vpc.html but make sure you will create TWO security groups:

  • Security Group for the Instance in Your VPC
  • Security Group for Amazon QuickSight's Elastic Network Interface

Let’s start with the second one: It is the one which will QuickSight assign to a network interface (ENI), which will be automatically created in your VPC to access the DB. This is the one I missed to create at first and this is the one you use to create a VPC Connection in QuickSight. The details are in the above docs in the paragraph “Security Group Rules for Amazon QuickSight's Elastic Network Interface”.

The first one looks like this: Inbound: TCP / port according to the DB – in the case of MySQL it is “MYSQL/Aurora, TCP, 3306”, Source: the previous security group. Do not forget to add this one to your DB instance.

Good luck.

Related