Troubleshooting resource availability errors


This document describes how to resolve resource availability errors that might occur when you try to request new Compute Engine resources or create reservations of Compute Engine resources. Resource errors occur when you try to request resources in a zone that cannot accommodate your request due to the current unavailability of a Compute Engine resource, such as GPUs or CPUs.

Resource errors only apply to new resource requests in the zone and do not affect existing resources. Resource errors are not related to your Compute Engine quota and only apply to the resource you specified in your request at the time you sent the request, not to all resources in the zone.

Common error messages

The following are examples of common resource errors that you might encounter when you request new Compute Engine resources or create new reservations:

ZONE_RESOURCE_POOL_EXHAUSTED
ZONE_RESOURCE_POOL_EXHAUSTED_WITH_DETAILS
The zone 'projects/PROJECT_ID/zones/ZONE' does not have enough resources available to fulfill the request.
Try a different zone, or try again later.
A VM_TYPE_AND_SIZE VM instance with RESOURCE_ATTACHMENT is currently unavailable in the ZONE zone.

Capacity changes frequently, so try your request in a different zone, with a different VM hardware
configuration, or at a later time. For more options, see troubleshooting documentation.
A VM_TYPE_AND_SIZE VM instance with RESOURCE_ATTACHMENT is currently unavailable in the ZONE zone, because of  REASON.

Consider trying your request in the ZONE zone(s), which currently has capacity to accommodate your request.

If you cannot move your VM to ZONE, review the REASON failure resolution instructions available in troubleshooting documentation, then try your request again.
If your workload can't accommodate the suggested resolution, try your request with a different VM hardware configuration or at a later time.

Some error messages include a reason field that provides information about the specific resource that Compute Engine was unable to fulfill from your request. View the Resource error reasons and recommendations section of this document to learn more about the reasons resource errors occur and resolution strategies for each error reason.

Resolve resource errors

In general, the best way to resolve a resource error is to retry the request in a different zone, at a different time, or with a different VM configuration. If the error message you received included a reason field, you can find specific remediation recommendations to help you resolve the error in the Resource error reasons and recommendations section of this document.

If you're trying to create a zonal managed instance group (MIG) with GPU VMs, then create a resize request in the MIG. Resize requests are helpful to obtain highly-demand resources all at once in a MIG and run the VMs for a specific time. Specifying the run duration improves obtainability of highly-demanded resources and avoids unnecessary charges.

If you're trying to create a regional MIG, try changing the MIGs distribution shape to BALANCED, ANY, or ANY_SINGLE_ZONE. For more information about distribution shapes, see Regional MIG target distribution shape.

If you are trying to create Spot VMs (or legacy preemptible VMs), remember that these VMs are spare capacity, which is unplanned and volatile, so they might not be obtainable at peak demand periods. Consequently, Spot VMs are only recommended for workloads with flexible time, location, and VM-configuration requirements. You can help prevent this error for Spot VMs by following the best practices to make your workload more flexible. If this error persists, use standard VMs instead.

The best way to prevent resource errors is to create Compute Engine reservations ahead of when you need the resources. Reservations help ensure that resources are available when you need them.

Resource error reasons and recommendations

The following table provides information about the reason field present in some resource error messages and recommendations about resolution strategies for each reason.

Error reason Description Recommendation
resource_availability The type and size of VM that you requested is currently unavailable in the zone that you requested it in.

Try one of the following:

  • Request the VM in another zone.
  • If you get a resource availability error while requesting an a3-highgpu-1g, a3-highgpu-2g, or a3-highgpu-4g machine type, ensure that you are provisioning the VM using one of these supported methods.
cpu_availability A VM with the amount of CPU that you requested is currently unavailable in the zone that you requested it in.

Try one of the following:

  • If you're requesting a single VM, request the VM in another zone.
  • If you're requesting multiple VMs, try one or more of the following:

    • Request the VMs in another zone.
    • Divide the total amount of vCPU across smaller VMs. For example, if you requested 80 VMs with 224 vCPUs, try requesting 160 VMs with 128 vCPUs each.
memory_availability A VM with the amount of memory that you requested is currently unavailable in the zone that you requested it in.

Try one of the following:

  • If you're requesting a single VM, request the VM in another zone.
  • If you're requesting multiple VMs, try one or more of the following:

    • Request the VMs in another zone.
    • Split your memory request into multiple VMs. For example, if you requested three VMs with 1.88TB of memory each, divide the request into several VMs that have a total combined memory of 1.88TB.
local_ssd_availability A VM with the amount of local SSD that you requested is currently unavailable in the zone that you requested it in.

Try one of the following:

  • If you're requesting a single VM, request the VM in another zone.
  • If you're requesting multiple VMs, try one or more of the following:

    • Request the VMs in another zone.
    • If your workload permits, request a zonal or regional SSD persistent disk instead of local SSD.
    • Split your local SSD request into multiple VMs. For example, if you requested one VM with 600GB of local SSD, divide the request into several VMs that have a total combined local SSD of 600GB.
gpu_availability A VM with the GPU that you requested is currently unavailable in the zone you requested it in. Try requesting the VM in another zone.

If you were unable to resolve the error using any of the preceding resolution recommendations, try Getting support.