Quota adjuster

Google Cloud uses quotas to restrict how much of a particular shared resource you can use. As your needs grow, you may find that you need higher quota.

Quota adjuster observes your resource consumption, and when usage nears a quota value (the effective maximum for that resource), quota adjuster proactively submits a quota increase request on your behalf. Quota adjuster addresses the following issues:

  • Reduced risk of quota-induced outages. Quota adjuster responds proactively to growth in your resource consumption. This helps eliminate potential outages caused by quota values that have become too restrictive.

  • Reduced need to monitor and file quota increase requests. Quota adjuster uses a simple approach that reduces the need to watch for unplanned increases and submit manual increase requests.

How quota adjuster works

Once you enable quota adjuster on a project, it begins monitoring all applicable quotas and applies the following logic:

  • Quota adjuster checks if the peak usage has approached the quota value during a specified duration.
  • If so, quota adjuster attempts to increase the quota value (typically around 10-20%).

If it's possible to increase the quota value, the increase is approved and the value adjusted. You can still manually request increases to quota values at any time, whether or not quota adjuster is enabled.

Quota adjuster will only attempt to increase the value of a quota; it won't attempt to lower the value. Likewise, quota adjuster won't attempt to increase the value on any quota that has a manual quota cap applied to it.

The history of all quota increase requests made by quota adjuster is available in the Quotas page of Google Cloud console. You can also set alerts to monitor any changes initiated by quota adjuster. See Monitoring increase requests for more details.

Availability

Quota adjuster requires a sufficient volume of historical usage data in order to accurately determine when to request additional quota. For this reason, the option to enable quota adjuster is only available on projects with enough historical activity to support accurate predictions.

The following Compute Engine quotas are available for automated increases using quota adjuster:

  • CPUs
  • N2 CPUs
  • N2D CPUs
  • C2 CPUs
  • C2D CPUs
  • Persistent Disk standard (GB)
  • Persistent Disk SSD (GB)

In the future, quotas for more Google Cloud services will become eligible. For projects where quota adjuster is enabled, quotas will automatically be monitored by quota adjuster as they are added. No additional action is required on your part.

For a full list of all the quotas eligible for adjustment, refer to the list in the Configurations tab of the Quotas page in Google Cloud console.

Enable quota adjuster

To enable quota adjuster you must have the following IAM permissions:

  • cloudquotas.quotas.update
  • cloudquotas.quotas.get

To enable quota adjuster on your Google Cloud project:

  1. Navigate to the IAM & Admin > Quotas page.
  2. Click the Configurations tab.
  3. Click the Enable switch.

When the Status column shows Enabled, quota adjuster will automatically monitor your usage and issue quota increase requests.

View quota increase requests

To view quota increase requests you must have the following IAM permissions:

  • resourcemanager.projects.get
  • serviceusage.services.list
  • serviceusage.quotas.get

To view quota increase requests issued by quota adjuster:

  1. Navigate to the IAM & Admin > Quotas page.
  2. Click the Increase Requests tab.

The Increase Requests view lets you see all increase requests for your project, including both manually requested increases and increases issued by quota adjuster. To view only the increases issued by quota adjuster, click the Filter field, select Type from the menu, and enter Auto.

Monitor increase requests with notifications

To monitor quota adjuster on your Google Cloud project:

  1. Navigate to the IAM & Admin > Quotas page.
  2. Click the Configurations tab.
  3. Click Create Alert.
  4. Choose one or both of the alert templates:
    1. All adjustments by Quota Adjuster will send an alert every time quota adjuster issues an increase request for this project.
    2. Quota Adjuster errors and failures will issue alerts only when quota adjuster attempts to increase a quota value in the project and is unable to do so.
  5. You can optionally adjust the default values for the minimum amount of time between notifications and the incident autoclose duration by clicking Show Options.
  6. Select the Notification Channel you want to use to receive notifications. If you want to adjust your notification channel settings or create a new notification channel, click Manage Notification Channels.
  7. Click OK to finalize your settings and begin receiving alerts.

If you want to cancel or adjust your alert settings, you can manage their configuration at any time by clicking Manage Alert Policies, or visiting the Policies page in Cloud Monitoring. The alert policies will have one of the following names, based on which option you selected:

  • Quota adjuster errors and failures
  • All adjustments by quota adjuster

Disable quota adjuster

To disable quota adjuster on your Google Cloud console project:

  1. Navigate to the IAM & Admin > Quotas page.
  2. Click the Configurations tab.
  3. Click the Enable switch.

Once the switch turns gray and the status column reads Not Enabled for all quotas, quota adjuster will stop monitoring your usage or issuing quota increase requests.

Troubleshooting quota increase denials

In rare cases, it's possible that a quota increase initiated by quota adjuster will be denied. This sometimes occurs when Google Cloud is unable to increase the quota for a particular project, resource, or region beyond a certain value. You may still request a manual quota increase in these scenarios.

Alerts can be configured to monitor cases where a quota request initiated by quota adjuster was denied. For more information see Monitoring increase requests.

Limitations

  • The settings for enabling quota adjuster are only available on a per-project basis.
  • The only way to enable this setting is using the Google Cloud console.