Direct traffic from google domain to elastic beanstalk without changing name server? - amazon-web-services

I have an elastic beanstalk app which I have successfully connected to my google domain name by changing my name server. The only problem is that all my google DNS records/email settings are now disabled since I am using amazon's name servers. I could transfer my domain to route 53 however I must remain using GSuite for work related reasons.
How can I direct traffic from my google domain to elastic beanstalk without changing the name server? I am fairly inexperience with DNS so any help would be much appreciated.

The only problem is that all my google DNS records/email settings are
now disabled since I am using amazon's name servers.
All you needed to do was create another CNAME record in your DNS server that pointed to the Elastic Beanstalk instance (or load balancer). You didn't need to change name servers.

Related

Do I need to upgrade our hosting plan if I just use it for domain but hosting the files on AWS?

The current setup was the application is load-balanced at AWS. The domain(www.Example.com) we are using is registered at GoDaddy.com.
My concern is that, do we need to upgrade our GoDaddy hosting even if the files are load-balance at AWS?
Let's say that we have had a 50K concurrent users.
Thanks for the insight in-advanced.
When you say "the application is load-balanced at AWS", it suggests that there is the following setup on AWS:
One or more Amazon EC2 instances running a web application, and
An Elastic Load Balancer that is directing incoming traffic to those instances
Your GoDaddy account probably has a Domain Name with a CNAME record that points to the DNS Name of the Load Balancer on AWS.
If this is true, then you do not need a "hosting plan" on GoDaddy, since it would just be managing your Domain Name. Scaling is not necessary for Domain Names.
Increasing the load would possibly require creating additional EC2 instances on AWS, but you might have an Auto Scaling group doing this for you automatically.
You should investigate what you actually have on GoDaddy and on AWS.

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.

How to run a ec2 instance as subdomain in siteground?

I have a Wordpress website with a GoDaddy domain being hosted on SiteGround using the nameservers. I am looking to switch to a React App which is currently running on an EC2 instance in AWS. I want to run the ec2 instance (aka the react app) on a subdomain like beta.domain.com inside SiteGround while still keeping the Wordpress website since its a part of my business. I tried creating a subdomain in SiteGround and then pointed it to my EC2 instance elastic IP (the public ipv4) using an A record but it is showing "This site can't be reached" error once I go to beta.domain.com.
What am I doing wrong? How do I run the EC2 instance in a subdomain hosted in SiteGround?
EDIT
Thank you, everyone, for your help. The problem was the SSL certificate for the HTTPS. The website wasn't coming on due to the HTTPS setup on the Nginx on the EC2 instance. After I put in the details of the certificate it runs properly with just the A record.
Any public address in the AWS environment are never accessible from outside the security groups. Even if you try to ssh from your own machine and if it is not in the inbound rule of the security group of your EC2 instance. I feel there are 3 ways out here.
1.) Adding an all traffic rule in your EC2 Security group inbound rule. This is not recommended as it opens all traffic to your machine.(additional tip: set up secure ssh key with the machine)
2.) Use an ELB to route traffic to your EC2 instance. ELB will provide you with a DNS record which can be used an a CNAME in godaddy(Point 3 shows how to map it as a A record in GoDaddy)
3.) Using Route 53 Hosted Zones - You could delegate your DNS to be managed by AWS Route 53. This way all traffic will be routed to your machine by AWS R53.
Another tip: Elastic IP can also be used which are like permanent static IP Addresses accessible from across internet. This provided a secure communication method to your instances.
Let me know what could be the favorable solution for you. I could help you out further
If you have registered your domain name with Goaddy, you can create subdomain in Godaddy as CNAME and point it to static IP address of your ec2 instance. Here is a link to guide you.
Also your main domain name will point to your Wordpress website on SiteGround.
Now that you have EC2 instance, you can also run a wordpress site on that instance if you like.

Adding HTTPS/SSL to domain pointing to AWS instance

I have a Java/Tomcat application hosted in AWS ElasticBeanstalk and bought a domain from GoDaddy and the domain points to the IP of the EC2 instance. So when I hit, for example www.abc.com, it points to the AWS IP and the application opens.
I haven't used Route 53, as I am in free tier, I added the EC2 IP in GoDaddy.
Now I want to add HTTPS/SSL to the domain using Let's Encrypt.
I searched for the solution but I found that it is also done using GoDaddy cPanel, as I have hosted the application in AWS and just registered domain from GoDaddy, I cannot do this.
How can I achieve this ?
You will want to use an Elastic Load Balancer (also known as Classic Load Balancer). I know you don’t want to use a Load Balancer but this is free and the AWS best practice. Here’s more detail - https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-create-https-ssl-load-balancer.html

How to forward existing domain name to AWS application?

I have deployed an application with Amazon's Elastic Beanstalk service, now it runs in http://sample-env-1.abcde.us-east-1.elasticbeanstalk.com/home, and now I want to point my domain name (registered with name.com) to this application. I created a hosted zone with Route 53, which gives me 4 namespaces, is it enough to add these records in my domain registrar's console?
I feel like I'm missing something since I didn't tell which application should this hosted zone be relevant to (since I can have multiple applications). How do I do that?
Thanks,
Your way of doing it is right.
Type the domain name in Hosted Zone of Amazon Route 53 Management console.
And from your domain provider console point your domain to your Elastic Beanstalk environment namespace. Amazon will handle the rest, if the setup is done correctly.
As stated in the manual:
When an Amazon Route 53 DNS server receives a name request for your
custom domain name, it resolves to the elasticbeanstalk.com subdomain,
which resolves to the public DNS name of your Elastic Load Balancing
load balancer, which relays requests to the instances in your
environment.
Please refer to the Elastic Beanstalk manual for more information: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customdomains.html