AWS Route 53 not routing to Load balancer - amazon-web-services

I have a domain at Godaddy, an AWS elastic load balancer pointing to Elastic Beanstalk.
I am using Route 53 to route requests to my domain to load balancer, the nameservers of Route 53 have been updated on godaddy and it's been more than 48 hours. (I even got confirmation email)
My domain is https://sreeram.rocks/
My website is running successfully at public ip: http://13.126.165.226
But for some reason domain name is not working. Can someone say Am I missing out on something that I need to configure?
Route 53:
Godaddy DNS
Thanks in advance

You are using https, when you are using the https://sreeram.rocks/ address and http when you are using the ip, http://13.126.165.226. You need to add a certificate to your domain, you can easily do that in the certificate manager in AWS. You then need to add the domain to the elastic load balancer once it is verified.
This assuming that you have setup everything else correct with target group etc. I assume that 13.126.165.226 is one of the load balancers IP addresses and not the server itself.

Related

Add SSL Certificate to my domain + AWS DNS

I have a Classic load balancer configured on my AWS webservices at xxx-xxx.amazonaws.com
and have also added route 53 to configure. But it seems there is no traffic moving from my domain to load balancer DNS. Need Help.
On my EC2 Server, I have added a MERN Stack application and used nginx to route the traffic from :80 to :8080. Next, a Elastic IP address is added to ec2 server.
A certificate is created using AWS's ACM and attached to the classic load balancer.
The domain records are handled by AWS's route 53. Domain name is aamchymumbai.com.
Thank you!
I did get a fix using CLoudfare.
Another follow up question, I have now. How to can I redirect domain.com to ec2-server.com:8080 and sub-domain.com to ec2-server.com:5000 using nginx + cloudfare?

Where in AWS is the Elastic Beanstalk Subdomain CNAME Record, and How to Add SSL to it?

Your Elastic Beanstalk environment's Domain name says:
To route users to your environment, Elastic Beanstalk registers a
CNAME record that points to your environment's load balancer. You can
see URL of your environment's application with the current value of
the CNAME in the environment overview page of the Elastic Beanstalk
console.
My simple questions are:
where is this CNAME record located in AWS?
is it possible to make this subdomain SSL (redirect http to https)?
Why would I want to do this?
My application works fine, but Elastic Beanstalk says my health is "Severe" (red exclamation) when the only thing wrong is that I intentionally made my real domain (the non-Elastic Beanstalk subdomain) I have in Route 53 redirect to https (443) by modifying the load balancer. Now this Elastic Beanstalk subdomain also routes to https when it's not setup, which is what causes the health error.
where is this CNAME record located in AWS?
It is AWS-owned domain, so AWS holds it in its systems.
is it possible to make this subdomain SSL (redirect http to https)?
No, its not, because it belongs to AWS, not you. For proper HTTPS, you need your own domain that you can control. If you have such a domain, you can free SSL certificate for it from AWS ACM.

how to connect domain name to AWS Application Load Balancer?

I have a simple AWS setup of 2 VMs hosting a WebApp. An Application Load Balancer is in-front of these machines. I can access the DNS name of the Load Balancer and can reach to the WebApp.
Now, I want to connect to my app with a domain name hosted on Godaddy. I tried to simply create CNAME (as no Elastic IP on Application LB) with the LB's DNS name, but it didn't work.
What am I missing ? I tried with godaddy support but already wasted 7 days with not solution.
I want to put SSL certificate also on ALB. Should I be aware of anything specific in this setup?
The problem was, I was trying to CNAME for root level domain. Now, I created an alias in Route 53 and used AWS's nameservers on Godaddy to forward request there.

My sub domain is not working with Route53

I have a domain (ex: example.com) which is configured and working fine with AWS Route 53 as below configuration
I have A record point to a AWS ELB for 2 EC2 instances (such as A and B which have tomcat 7 installed and configured).
Now I want to setup a subdomain like java.example.com which is pointing to another EC instance such as C but so far is not luck
What I have tried so far is
Try 1. Create another hosted zone such as java.example.com and then create A record which point to the IP of C ==> not working
Try 2. Create A record under hosted zone example.com with name as java.example.com and value is IP of C => not working
Please advice what I'm missing.
What you can do is create a CNAME record named java.example.com and point that to the EC2 instance.
If you want to use A record then create a Load Balancer, put your EC2 behind the load balancer and then use the DNSName of the load balancer as the value for your A record
Check here for more details https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html
Extract from above page is as follows
When Route 53 receives a DNS query for an alias record, Route 53 responds with the applicable value for that resource:
An Amazon API Gateway custom regional API or edge-optimized API –
Route 53 responds with one or more IP addresses for your API.
An Amazon VPC interface endpoint – Route 53 responds with one or more IP addresses for your interface endpoint.
A CloudFront distribution – Route 53 responds with one or more IP addresses for CloudFront edge servers that can serve your content.
An Elastic Beanstalk environment – Route 53 responds with one or more IP addresses for the environment.
An ELB load balancer – Route 53 responds with one or more IP addresses for the load balancer.
An Amazon S3 bucket that is configured as a static website – Route 53 responds with one IP address for the Amazon S3 bucket.
Another Route 53 record in the same hosted zone – Route 53 responds as if the query is for the record that is referenced by the alias record.

How to assign an elastic ip to aws load bouncer?

I have an issue that current registrar allow only ANAME reference, so I have a an Elastic ip for all my web settings. I would like to assign it to the load balancer and then load balancer will decide who is going to handle it.
I cannot find a way to create it with Route 53. I cannot add my route 53 domains to my registrar and would appreciate any advice.
Thank you.
Change your ANAME record to an A record that has the EIP of your Load Balancer. You can set a high TTL, because "your" EIP won't change. You don't even need your web servers in DNS. Your Load Balancer should just have a list of their IPs.
It will look like this:
1) Client does a DNS lookup for foo.com
2) Client gets A record that has (E)IP of LB
3) Send request to LB's IP
4) LB distributes traffic to web servers
If your LB dies, spin up a new one and move the EIP to it.
You should have your registrar use Route 53 as its Nameserver. In Route 53 create a hosted zone and use an A record of type Alias and choose the Elastic Load Balancer Endpoint.