I am new to Google Compute Engine and I have a hard time finding the documentation that can possible explain the behavior I am seeing.
I have setup a simple configuration for my project right now. I have 1 VM running my UI (nodejs) 1 VM running an API layer (java tomcat) 1 Cloud SQL database
I set up 2 Instance groups: 1. UI which has the only UI VM 2. API which has the only API VM
I then setup a HTTP Load balancer with a couple of simple rules to routes requests to either the UI or the API instance groups
the issue I am having is that when I restart the UI VM and it reloads and runs the startup scripts which correctly start up all my services ( i verified this ) the load balancer keeps reporting the UI backend service as down.
What's interesting is that if I use the direct IP of my UI VM I get my UI load on port 80 just like it's supposed to. However the load balancer keeps reporting it as down. I can't seem to figure out in the documentation what I am doing wrong.
Something to note: I have the UI VM configured with a ephemeral IP which basically changes every time the VM is restarted. However, the load balancer is not configured by IPs its configured by proving the VM Instance Group so it should not care about the changed IP because the VM Instance group always knows what VMs it has.
Can someone explain to me where my configuration is wrong?