Two rds instance to one ec2 instance connection - amazon-web-services

I am trying to setup two RDS instance use by one EC2 instance. Is it possible to do so? How to connnect my EC2 to those RDS instances ? Is it done by creating security groups?

Short answer : yes. You can create many RDS database for your EC2.
long answer : Please read the AWS RDS documentation thoroughly. Example summary step:
Create your EC2 and associate to subnet A
In AWS RDS console , create a db subnet group R , point to subnet A
Create your RDS instances, assign them to the db subnet group R
get the RDS instances FQDN name
From your EC2 , install correspondence client and connect using above given name
When you assign RDS to the DB subnet group same as the EC2 subnet, it will place the RDS to the same subnet, no special route definition required.

Related

How to connect my AppRunner instance to RDS?

I've configured RDS with the suggested defaults and no public access.
Then I put my AppRunner instance in the same security group as RDS by creating a VPC connector. I can see the same VPC and subnets listed on both sides yet I somehow don't have a connection to RDS still (my AppRunner instance can't connect). What am I doing wrong? Isn't it enough to put them in the same security group and VPC?

connecting to private aws rds

I'm new and trying to explore AWS and creating a test app running on IIS (EC2 set in Public) and MSSQL RDS(set in Private). However my IIS is not able to connect on the RDS. Looking on my IIS EC2 it has a defined private IP too, same subnet used also from RDS, security group of RDS allows the subnet of the EC2, IAM of EC2 also has RDS Full access.
But still my ec2 wont connect on the RDS. May I ask on what I'm missing on my settings?
It appears that your configuration is:
One VPC
A Public Subnet containing an Amazon EC2 instance
A Private Subnet containing an Amazon RDS for SQL Server instance
You are attempting to connect from the EC2 instance to the RDS db instance
For this to work, you should configure:
A Security Group (let's call it EC2-SG) that is associated with the EC2 instance, permitting connections such that you can login to the EC2 instance
A Security Group (RDS-SG) associated with the RDS db instance, with an incoming connection configured for SQL Server (port 1433) with source set to EC2-SG
That is, the database security group should ALLOW an incoming connection with a source of the security group that is associated to the EC2 instance. The VPC will automatically figure out the IP addresses — you do not need to specify them.
Then, connect from the EC2 instance to the RDS db instance via the DNS Name of the RDS instance that is given in the RDS console.

When is it possible to change the subnet group within AWS RDS?

I have one Oracle SE instance that is not multi-az and does not have encryption enabled, and I have an Oracle EE instance that is multi-az and has encryption enabled. The former has the option to change the subnet group through the console (modify instance > network and security), whereas the latter does not. Both instances are in a subnet group within the default vpc, and I have a custom vpc within the same account with another subnet group in it.
What conditions determine whether or not it is possible to change the subnet group of an RDS instance? I have not been able to find any documentation on this so far.
It is the Multi AZ Deployment that is the determining factor. To test this, modify your DB instance and turn off the Multi AZ Deployment. Once it is done, go modify it again and you'll notice you now have the option to change the subnet group.
I haven't found any indication as to the reason for this behavior in the AWS documentation.
As #hackakhan mentioned, you need to have Multi AZ Deployment turned off to modify the DB subnet group of an RDS instance. Unfortunately, the RDS instance will only be migrated to one of the subnets from the new DB subnet group if the new DB subnet group resides in a different VPC. You could create a temporary VPC to migrate away the RDS instance only to migrate it back to your existing VPC and the right DB subnet group within that VPC.
The AWS Premium Support Knowledge Center has a detailed explanation of the steps involved: https://aws.amazon.com/premiumsupport/knowledge-center/change-vpc-rds-db-instance/
My understanding
RDS instances can't be migrated from one database subnet group to another if:
The destination database subnet group is in the same VPC as the current group
The instance has the multi-availability zone setting enabled
What worked for me
Creating the subnet group within my VPC that would be the eventual home of my RDS instance
Creating a temporary database subnet group in the "DEFAULT" VPC (my RDS instance has previously been a subnet group in a VPC that I had provisioned, not the default one) consisting of the three subnets that belong to the "DEFAULT" VPC—this can be done in the RDS section of the AWS Console, no need to go to the VPC section
Modifying the instance's subnet group to the newly created group (from 2.)
Modifying the instance's subnet group to its eventual home within my original VPC (from 1.)

(AWS) Can't launch RDS in my chosen VPC

I'm following AWS's instructions Scenario 2: VPC with Public and Private Subnets and am having issues at the point I try to launch a DB server.
When I launch my instance, all is fine and I am able to assign it to my newly created VPC. However, when it comes to launch the RDS, the only VPC available (on step 4, configure advanced settings) is the default VPC (ie not the one I created as per their instructions).
Has anyone any idea about this or indeed how to resolve it?
RDS requires a little more setup than an EC2 instance if you want to launch it within a VPC.
Specifically, you need to create:
a DB subnet group within the VPC
a VPC security group for the RDS instance
The documentation is a little buried in the AWS RDS documents. It can be found here:
Creating a DB Instance in a VPC

RDS instance access from Ec2 instance from different region

I have following setup on AWS
One RDS instance in Region 1.
One Ec2 instance in Region 2.
EC2-Security Group sgrg2 in Region 2.
I am trying to access RDS from EC2 by adding Security Group to RDS instance list. It is not authorizing.
Moreover, while adding sgrg2 to RDS security group, it is saying ' EC2 security group sgrg2 for account xxx does not exist'.
Please help.
Communication between regions on AWS goes through the untrusted internet. You need to add the external IP of the EC2 instance to the security group of the RDS instance to get that to work. However, I would recommend you to move the EC2 instance into the RDS instance region, both for safety and cost. Safety as you need to expose your RDS instance to the internet (also make sure you use SSL connetions to the db). Cost as Amazon charges for traffic across regions as regular in/out traffic.
The following link helped me connect to RDS from an EC2 instance in a different region
https://forums.aws.amazon.com/thread.jspa?threadID=102827
The trick was to use http://baremetal.com/cgi-bin/dnsip to confirm which IP number RDS security group would accept, thereby giving access to my EC2 instance.
This said it does make a lot of sense to keep both RDS & EC2 instances in the same region, when feasible/practical.