Google Domain not reflecting name server changes from AWS Route 53 - subdomain

I have a google domain named let's say myweb.app
I created a wordpress website and hosted it on bluehost and added the name server on my custom name server entries in google domain. it was working well. my myweb.app was running, now I created a web application reactnative-flask-mongodb, ran the application on AWS (EC2 Instance). running accurately on port 80.
I created a public hosted zone in route53 for the domain myweb.app and went on to create a record with
a subdomain console.myweb.app
record type: A - routes traffic to IPV4 address
value was my EC2 Public IPV4
used Simple Routing
After setting it up I copied my name servers of the public hosted zone to google domains custom name servers.
But after that, myweb.app and console.myweb.app are not working.
How do I fix it my first priority is running my myweb.app bluehost-wordpress site again.
I have delete the AWS records and NS from google domains no effect so far.

Related

Google Cloud VPS Compute Engine without a Domain

I have a VPS with Google Cloud Compute Engine which I can reach through an external IP. Next to my external IP I can reach my VPS through: 122.xx.xx.34.bc.googleusercontent.com
Is Google also offering an option to reach your website through NAME.bc.googleusercontent.com or something different than an IP.
I don't want use cheap domain name or free domain name as .tk
You can use any domain name to reach your VM instance that you run on Google Compute Engine. To do it follow steps below:
register domain name at any domain name registrar
set up DNS servers for your domain name (usually DNS hosting service provided by domain name registrar)
reserve external static IP for your VM (optional, but could be helpful)
create A record that point to external IP of your VM
wait 24-72 hours for propagating domain names
reach you service via domain name like https://domain.name
In addition, you can register your domain name at Google Domains and use Google Cloud DNS as DNS service for your domain.
You're not able to use NAME.bc.googleusercontent.com because 122.xx.xx.34.bc.googleusercontent.com is a PTR record.

Cannot add elasticbeanstalk environment created with EB cli to a VPC: This environment is not part of a VPC

Firstly, the use case: I have a large Spring Boot monolith which is accompanied by some smaller go services which are used to perform some tasks. Currently they are hosted privately and simply on the same server and can therefor communicate internally using localhost. I am looking into deploying this to AWS as ElasticBeanstalks and is currently using free tier for evaluating this. I want the Spring Boot application to be publicly visible and the go services to be available for the Spring Boot application but not to the public. My impression is that I want to deploy them as separate ElasticBeanstalk environments but assign them to the same VPC. If that is the wrong assumption please let me know of the correct one!
If that is however what we want, then this is my current initial issue. I have VPC set up (with default values) and in my local repository I use eb init, eb create etc to deploy the application. When it is deployed and up an running and I go into Configuration in the AWS console of the EB then network part simply says This environment is not part of a VPC.. I've tested to select classic, application and network as the loadbalancer but with the same result. Do I need to do something during eb create instead?
I've tried eb create --vpc but honestly don't know what to fill in for all the prompts:
Enter the VPC ID: xxxxxxxxxxxxxxxxx
Do you want to associate a public IP address? (Y/n): Y
Enter a comma-separated list of Amazon EC2 subnets: ?
Enter a comma-separated list of Amazon ELB subnets: ?
Do you want the load balancer to be public? (Select no for internal) (Y/n): ?
Enter a comma-separated list of Amazon VPC security groups:
What should I be looking for to enter here? The VPC ID i assume is the VPC id of the VPC I have created but I am having difficulties understanding the rest of them. If I try to simply run eb create --vpc.id <XXXXXXXXXXXXXXXXXX> then I instead get ERROR: ServiceError - Configuration validation exception: Invalid option value: 'internal' (Namespace: 'aws:ec2:vpc', OptionName: 'ELBScheme'): Internal load balancers are valid only in a VPC; however, your environment is currently not running in a VPC.
Grateful for help!
You dont need two separate VPCs for your public facing applications. In the same vpc, you can create a load balancer as Internal and create another load balancer as Internet facing.
here is some information about the fields.
Enter the VPC ID: vpc-abc123
Do you want to associate a public IP address? (Y/n):
if internet facing, Yes.
this will assign a public ip address to the load balancer
Enter a comma-separated list of Amazon EC2 subnets: ?
You can enter the list of private subnets, private subnets cannot be accessed from the internet directly, thats why you create a public facing load balancer (for the internet facing application) receive the web traffic and forward to the instances.
Enter a comma-separated list of Amazon ELB subnets: ?
For Internet facing application, you need to choose public subnets.
For internal application, you need to choose private subnets
Do you want the load balancer to be public? (Select no for internal) (Y/n): ?
For Internet facing application, Yes
For internal application, No
Enter a comma-separated list of Amazon VPC security groups: The security should be created for the VPC. in other words, if you inspect the security group, you should see your vpc id.

Connect our Google App Engine Python API to an external MySQL database on Digital Ocean

There are already many questions about how to connect to an external MySQL database but they all focus on how to open a remote connection, which is simply fixed by enabling billing.
However none if these questions address how to open an exception in your MySQL database so that the GCP App engine can connect to it. Normally a static IP would do, except it seems static IPs are for Compute Instances VM.
It seems like the previous solution was using "Google Secure Data Connector", but it's been decommissioned.
I found something else on Google Cloud documentation that says:
Your App Engine app connects over the Internet using that external
service's public IP address.
However there is no further information and I have no idea if that address is static or ephemeral, but this documentation page seems to say the address will never be static and can not be assigned a static IP:
App Engine does not currently provide a way to map static IP addresses
to an application.
Has anyone ever succeeded? How did you set your exception on the external, non-GCP MySQL server?
AppEngine can connect to internet but with a pool of IP address. You can't define one and use always the same. If your Database has to authorize only one IP it's not yet supported.
However, you could cheat by plugging a serverless VPC Connector to your AppEngine and using a VM as proxy but the solution is ugly and I don't guaranty good response time, which is critical for a database...

Hosting multiple websites in Google Compute Engine

We have 8 websites and 5 of them are small. I would like to host those 5 website in same instance but their ip must be same and static. I couldn't find a way how to allocate a static ip for each of them and how to host them in a single instance. They are PHP. Their db's are hosted in Google SQL.
Per the Google Compute Engine docs on static IP addresses:
An instance can have only one external IP address. If it already has an external IP address, you must first remove that address by deleting the old access configuration, then adding a new access configuration with the new external IP address.
That said, you don't need to have a separate static IP address per website—you can serve an arbitrary number of sites from a single VM by using a feature such as Apache virtual hosts which let you serve a different site depending on the hostname that is requested by the user.
This can be possible using Protocol Forwarding.
You can have different IP addresses for each website while using single Virtual Machine.
I had successfully hosted my 3 sites using method in past. If you need, I can write up a detail explanation on some blog.

External IP address appears instead of Domain Name

I am running a website in Google Compute Engine and configured a DNS zone and an A record to point to the IP address where my web-server runs. In my domain registrar (GoDaddy), I changed name-servers to point to Google name servers.
I can browse to the website without issues, but it show the IP address of the server instead of domain name. How can I change that to show domain name such as www.example.com instead?
I have a website hosted in GCE running under a Linux machine Apache Server. I created an A record in my DNS pointing to the external IP address of the server. When I access the link the subdomain name is not replaced by the IP. I do not believe your issue is particularly related to Compute Engine.
Particularly if you are using WordPress you will need to change some configuration files as stated in
http://codex.wordpress.org/Changing_The_Site_URL
https://wordpress.org/support/topic/browser-displaying-ip-instead-of-domain-name
The below solution worked for me,
GCP set IP Address as site URL when you deploy WordPress on google cloud.
Please change it to your domain name,
WordPress Admin Panel >> Settings >> Site URL (& WordPress URL as
well) >> add your domain name into textbox
Attached is the image for your reference.