Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

VM instance is currently unavailable - not acceptable architecture

I stopped a VM instance for 5 minutes. I did not change its HW config. When I tried to start the VM I received this message:  
"Failed to start vm: A g1-small VM instance is currently unavailable in the us-central1-c zone. Alternatively, you can try your request again with a different VM hardware configuration or at a later time."

I tried another HW config and still had the same issue. Eventually a few hours later I was able to start the VM with another HW config than I wanted.

Running applications on VM's that might not restart is not an acceptable strategy.
I could somewhat understand if I was trying to restart a VM with a different HW config that it may not start because that HW is not currently available. But you should ALWAYS be able to restart your VM with its current HW config!

Is behavior normal for GCP CE VM's? Is this something GCP will improve on?
What are some strategies to avoid this situation? Not stopping a VM is not a valid option because sometimes we need to:
 - take snapshot
 - change a boot disc
 - change HW config

Solved Solved
1 5 2,529
1 ACCEPTED SOLUTION

Dear tacoma50,

 

Every time you stop an instance, the underlying layer (physical host) is released into the zone's resource pool. Therefore, you lose your slot, and your CPU/RAM allocation is reassigned to another user in the zone who would like to use the same machine types as yours.

 

The error you're getting indicates that all g1-small allocations in that zone are fully utilized, and you did not get a portion at all. Hence, GCP asks you to try it again some other time, perhaps when someone stops their VM. So, the g1-small allocation is available again.

 

If you want to use a reservation, it is just a different way of keeping your allocation alive even though you don't use it. See https://cloud.google.com/compute/docs/instances/reservations-overview#reservation-billing. You still get charged even during the stopped VM when you use a reservation. Reservations are billed at the same rate as their reserved resources, including the same on-demand prices and 1-minute minimum charges as unreserved, running VMs.

 

This is how CSPs work in general. They use virtualization to share computer clusters among users so that they can have more specific machine types and pay less than renting the entire cluster. When the user stops the VM, the CPU/RAM allocation will get reassigned to another user. Since the CPU/RAM allocation was reassigned, the original user was not charged, as the CSPs can still generate money from the new user.

 

Regards,

Izza

P.S. If you want to restart without losing your allocation, you must do it via the terminal using an OS-initiated reboot, such as sudo reboot, etc. Never put your VM into a stopped state. Previously, I recommended using E2 because GCP invested more in this machine type than the others. Which also means the E2 supply could also be much more than the N1/G1

 

View solution in original post