gcloud alpha compute commitments create

NAME
gcloud alpha compute commitments create - create Compute Engine commitments
SYNOPSIS
gcloud alpha compute commitments createCOMMITMENT--plan=PLAN(--resources=[local-ssd=LOCAL-SSD],[memory=MEMORY],[vcpu=VCPU]--resources-accelerator=[count=COUNT],[type=TYPE])[--auto-renew][--custom-end-time=CUSTOM_END_TIME][--merge-source-commitments=MERGE_SOURCE_COMMITMENTS][--region=REGION][--split-source-commitment=SPLIT_SOURCE_COMMITMENT][--type=TYPE; default="general-purpose"][--existing-reservation=[name=NAME],[zone=ZONE]    |--reservations-from-file=PATH_TO_FILE    | [--reservation=RESERVATION :--reservation-sharing-policy=RESERVATION_SHARING_POLICY--reservation-zone=RESERVATION_ZONE--accelerator=[count=COUNT],[type=TYPE]--local-ssd=[interface=INTERFACE],[size=SIZE]--machine-type=MACHINE_TYPE--maintenance-interval=MAINTENANCE_INTERVAL--min-cpu-platform=MIN_CPU_PLATFORM--require-specific-reservation--resource-policies=[KEY=VALUE,…]--vm-count=VM_COUNT--share-setting=SHARE_SETTING--share-with=SHARE_WITH,[SHARE_WITH,…]]][GCLOUD_WIDE_FLAG]
DESCRIPTION
(ALPHA) Create Compute Engine commitments.
EXAMPLES
To create a commitment calledcommitment-1in theus-central1 region, with a12-month plan,9GB of memory and 4 vcpu cores, run:
gcloudalphacomputecommitmentscreatecommitment-1--plan=12-month--resources=memory=9GB,vcpu=4--region=us-central1
POSITIONAL ARGUMENTS
COMMITMENT
Name of the commitment to create.
REQUIRED FLAGS
--plan=PLAN
Duration of the commitment.PLAN must be one of:12-month,24-month,36-month,60-month.
Manage the commitment for particular resources.

At least one of these must be specified:

--resources=[local-ssd=LOCAL-SSD],[memory=MEMORY],[vcpu=VCPU]
Resources to be included in the commitment. For details and examples of validspecifications, refer to thecustommachine type guide.
memory
The size of the memory, should include units (e.g. 3072MB or 9GB). If no unitsare specified, GB is assumed.
vcpu
The number of the vCPU cores.
local-ssd
The size of local SSD.
--resources-accelerator=[count=COUNT],[type=TYPE]
Manage the configuration of the type and number of accelerator cards to includein the commitment.
count
The number of accelerators to include.
type
The specific type (e.g. nvidia-tesla-k80 for NVIDIA Tesla K80) of theaccelerator. Usegcloud computeaccelerator-types list to learn about all available acceleratortypes.
OPTIONAL FLAGS
--auto-renew
Enable auto renewal for the commitment.
--custom-end-time=CUSTOM_END_TIME
Specifies a custom future end date and extends the commitment's ongoing term.
--merge-source-commitments=MERGE_SOURCE_COMMITMENTS
Creates the new commitment by merging the specified source commitments andcombining their resources.
--region=REGION
Region of the commitment to create. If not specified, you might be prompted toselect a region (interactive mode only).

To avoid prompting when this flag is omitted, you can set thecompute/region property:

gcloudconfigsetcompute/regionREGION

A list of regions can be fetched by running:

gcloudcomputeregionslist

To unset the property, run:

gcloudconfigunsetcompute/region

Alternatively, the region can be stored in the environment variableCLOUDSDK_COMPUTE_REGION.

--split-source-commitment=SPLIT_SOURCE_COMMITMENT
Creates the new commitment by splitting the specified source commitment andredistributing the specified resources.
--type=TYPE; default="general-purpose"
Type of commitment.memory-optimized indicates that the commitmentis for memory-optimized VMs.TYPE must be one of:accelerator-optimized,accelerator-optimized-a3,accelerator-optimized-a3-mega,accelerator-optimized-a3-ultra,accelerator-optimized-a4,accelerator-optimized-a4x,accelerator-optimized-a4x-max,compute-optimized,compute-optimized-c2d,compute-optimized-c3,compute-optimized-c3d,compute-optimized-h3,compute-optimized-h4d,general-purpose,general-purpose-c4,general-purpose-c4a,general-purpose-c4d,general-purpose-e2,general-purpose-n2,general-purpose-n2d,general-purpose-n4,general-purpose-n4a,general-purpose-n4d,general-purpose-t2d,graphics-optimized,graphics-optimized-g4,memory-optimized,memory-optimized-m3,memory-optimized-m4,memory-optimized-m4-6tb,memory-optimized-x4,memory-optimized-x4-1440-24t,memory-optimized-x4-16tb,memory-optimized-x4-1920-32t,memory-optimized-x4-24tb,memory-optimized-x4-32tb,memory-optimized-x4-480-6t,memory-optimized-x4-480-8t,memory-optimized-x4-960-12t,memory-optimized-x4-960-16t,storage-optimized-z3.
Manage the reservations to be created with the commitment.

At most one of these can be specified:

--existing-reservation=[name=NAME],[zone=ZONE]
Details of the existing on-demand reservation or auto-created future reservationthat you want to attach to your commitment. Specify a new instance of this flagfor every existing reservation that you want to attach. The reservations must bein the same region as the commitment.
name
The name of the reservation.
zone
The zone of the reservation. For example, to attach an existing reservationnamed reservation-name in the zone reservation-zone, use the following text:--existing-reservation=name=reservation-name,zone=reservation-zone
--reservations-from-file=PATH_TO_FILE
Path to a YAML file of multiple reservations' configuration. Use a full orrelative path to a local file containing the value of reservations.
Manage the reservation to be created with the commitment.
--reservation=RESERVATION
Name of the reservation to operate on.

This flag argument must be specified if any of the other arguments in this groupare specified.

Manage the properties of a reservation sharing policy to create
--reservation-sharing-policy=RESERVATION_SHARING_POLICY
The reservation sharing policy to use for this reservation.RESERVATION_SHARING_POLICY must be one of:
ALLOW_ALL
The reservation can be shared with Google Cloud services.
DISALLOW_ALL
The reservation won't be shared with Google Cloud services. If you omit thisflag during creation, the default value is DISALLOW_ALL.
--reservation-zone=RESERVATION_ZONE
Zone of the reservation to operate on. If not specified and thecompute/zone property isn't set, you mightbe prompted to select a zone (interactive mode only).

To avoid prompting when this flag is omitted, you can set thecompute/zone property:

gcloudconfigsetcompute/zoneZONE

A list of zones can be fetched by running:

gcloudcomputezoneslist

To unset the property, run:

gcloudconfigunsetcompute/zone

Alternatively, the zone can be stored in the environment variableCLOUDSDK_COMPUTE_ZONE.

Manage the specific SKU reservation properties to create.
--accelerator=[count=COUNT],[type=TYPE]
Manage the configuration of the type and number of accelerator cards attached.
count
The number of accelerators to attach to each instance in the reservation.
type
The specific type (e.g.nvidia-tesla-k80 for nVidia Tesla K80) ofaccelerator to attach to instances in the reservation. Usegcloud computeaccelerator-types list to learn about all available acceleratortypes.
--local-ssd=[interface=INTERFACE],[size=SIZE]
Manage the size and the interface of local SSD to use. Seehttps://cloud.google.com/compute/docs/disks/local-ssdfor more information.
interface
The kind of disk interface exposed to the VM for this SSD. Valid values arescsi andnvme. SCSI is the default and is supported bymore guest operating systems. NVME may provide higher performance.
size
The size of the local SSD in base-2 GB.
--machine-type=MACHINE_TYPE
The type of machine (name only) that has a fixed number of vCPUs and a fixedamount of memory. You can also specify a custom machine type by using thepatterncustom-number_of_CPUs-amount_of_memory-for example,custom-32-29440.
--maintenance-interval=MAINTENANCE_INTERVAL
Specifies how infrastructure upgrades should be applied to the VM.MAINTENANCE_INTERVAL must be one of:
PERIODIC
VMs receive infrastructure and hypervisor updates on a periodic basis,minimizing the number of maintenance operations (live migrations orterminations) on an individual VM. Security updates will still be applied assoon as they are available.
RECURRENT
VMs receive infrastructure and hypervisor updates on a periodic basis,minimizing the number of maintenance operations (live migrations orterminations) on an individual VM. This may mean a VM will take longer toreceive an update than if it was configured for AS_NEEDED. Security updates willstill be applied as soonas they are available. RECURRENT is used for GEN3 andSliceof Hardware VMs.
--min-cpu-platform=MIN_CPU_PLATFORM
Optional minimum CPU platform of the reservation to create.
--require-specific-reservation
Indicates whether the reservation can be consumed by VMs with "any reservation"defined. If enabled, then only VMs that target this reservation by name using--reservation-affinity=specific can consume from this reservation.
--resource-policies=[KEY=VALUE,…]
The resource policies to include in this reservation. If you omit this flag, noresource policies are added. You can specify any string as the key, and specifythe name of a resource policy as the value.
--vm-count=VM_COUNT
The number of VM instances that are allocated to this reservation. The value ofthis field must be an int in the range [1, 1000].
Manage the properties of a shared reservation to create
--share-setting=SHARE_SETTING
The projects that can use the reservation.SHARE_SETTINGmust be one of:
local
Only your project can use the reservation. This is the default value.
projects
Your project and up to 100 other projects within your project's organization canuse the reservation. If you specify this value, then you must also include the--share-with flag in the command.
--share-with=SHARE_WITH,[SHARE_WITH,…]
If this reservation is shared (--share-setting=projects), then specify acomma-separated list of projects to share the reservation with. List projectsusing project IDs or project numbers.
GCLOUD WIDE FLAGS
These flags are available to all commands:--access-token-file,--account,--billing-project,--configuration,--flags-file,--flatten,--format,--help,--impersonate-service-account,--log-http,--project,--quiet,--trace-token,--user-output-enabled,--verbosity.

Run$gcloud help for details.

NOTES
This command is currently in alpha and might change without notice. If thiscommand fails with API permission errors despite specifying the correct project,you might be trying to access an API with an invitation-only early accessallowlist. These variants are also available:
gcloudcomputecommitmentscreate
gcloudbetacomputecommitmentscreate

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-09 UTC.