NAME gcloud alpha compute future-reservations create - create a Compute Engine future reservation SYNOPSIS gcloud alpha compute future-reservations create FUTURE_RESERVATION --[no-]auto-delete-auto-created-reservations --total-count=TOTAL_COUNT (--source-instance-template=SOURCE_INSTANCE_TEMPLATE | [--machine-type=MACHINE_TYPE : --accelerator=[count=COUNT],[type=TYPE] --local-ssd=[count=COUNT],[interface=INTERFACE],[size=SIZE] --maintenance-freeze-duration=MAINTENANCE_FREEZE_DURATION --maintenance-interval=MAINTENANCE_INTERVAL --min-cpu-platform=MIN_CPU_PLATFORM]) (--start-time=START_TIME (--duration=DURATION | --end-time=END_TIME)) [--deployment-type=DEPLOYMENT_TYPE] [--description=DESCRIPTION] [--enable-opportunistic-maintenance=ENABLE_OPPORTUNISTIC_MAINTENANCE] [--instance-termination-action=INSTANCE_TERMINATION_ACTION] [--name-prefix=NAME_PREFIX] [--planning-status=PLANNING_STATUS] [--[no-]require-specific-reservation] [--reservation-name=RESERVATION_NAME] [--scheduling-type=SCHEDULING_TYPE] [--zone=ZONE] [--auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME | --auto-created-reservations-duration=AUTO_CREATED_RESERVATIONS_DURATION] [--commitment-name=COMMITMENT_NAME --commitment-plan=COMMITMENT_PLAN --previous-commitment-terms=PREVIOUS_COMMITMENT_TERMS] [--share-setting=SHARE_SETTING --share-with=PROJECT,[PROJECT,...]] [GCLOUD_WIDE_FLAG ...] DESCRIPTION (ALPHA) Create a Compute Engine future reservation. EXAMPLES To create a Compute Engine future reservation by specifying VM properties using an instance template, run: $ gcloud alpha compute future-reservations create \ my-future-reservation --total-count=1000 \ --start-time=2022-11-10 --end-time=2022-12-10 \ --name-prefix=prefix-reservation \ --source-instance-template=example-instance-template \ --zone=fake-zone To create a Compute Engine future reservation by directly specifying VM properties, run: $ gcloud alpha compute future-reservations create \ my-future-reservation --total-count=1000 \ --start-time=2022-11-10 --end-time=2022-12-10 \ --name-prefix=prefix-reservation --machine-type=custom-8-10240 \ --min-cpu-platform="Intel Haswell" \ --accelerator=count=2,type=nvidia-tesla-v100 \ --local-ssd=size=375,interface=scsi POSITIONAL ARGUMENTS FUTURE_RESERVATION Name of the future reservation to create. REQUIRED FLAGS --[no-]auto-delete-auto-created-reservations If specified, the auto-created reservations for a future reservation are deleted at the end time (default) or at a specified delete time. Use --auto-delete-auto-created-reservations to enable and --no-auto-delete-auto-created-reservations to disable. --total-count=TOTAL_COUNT The total number of instances for which capacity assurance is requested at a future time period. Manage the instance properties for the auto-created reservations. You must either provide a source instance template or define the instance properties. Exactly one of these must be specified: --source-instance-template=SOURCE_INSTANCE_TEMPLATE The url of the instance template that will be used to populate the fields of the reservation. Instance properties can not be defined in addition to source instance template. Define individual instance properties for the specific SKU reservation. --machine-type=MACHINE_TYPE The type of machine (name only) that has a fixed number of vCPUs and a fixed amount of memory. You can also specify a custom machine type by using the pattern custom-number_of_CPUs-amount_of_memory-for example, custom-32-29440. This flag argument must be specified if any of the other arguments in this group are specified. --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) of accelerator to attach to instances in the reservation. Use gcloud compute accelerator-types list to learn about all available accelerator types. --local-ssd=[count=COUNT],[interface=INTERFACE],[size=SIZE] Manage the size and the interface of local SSD to use. See https://cloud.google.com/compute/docs/disks/local-ssd for more information. interface The kind of disk interface exposed to the VM for this SSD. Valid values are scsi and nvme. SCSI is the default and is supported by more guest operating systems. NVME may provide higher performance. size The size of the local SSD in base-2 GB. count The number of local SSD to use per VM. Default value is 1. --maintenance-freeze-duration=MAINTENANCE_FREEZE_DURATION Specifies the amount of hours after instance creation where the instance won't be scheduled for maintenance, e.g. 4h, 2d6h. See $ gcloud topic datetimes for information on duration formats. --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 or terminations) on an individual VM. Security updates will still be applied as soon as they are available. RECURRENT VMs receive infrastructure and hypervisor updates on a periodic basis, minimizing the number of maintenance operations (live migrations or terminations) on an individual VM. This may mean a VM will take longer to receive an update than if it was configured for AS_NEEDED. Security updates will still be applied as soonas they are available. RECURRENT is used for GEN3 and Sliceof Hardware VMs. --min-cpu-platform=MIN_CPU_PLATFORM Optional minimum CPU platform of the reservation to create. Manage the time specific properties for requesting future capacity This must be specified. --start-time=START_TIME Start time of the Future Reservation. The start time must be an RFC3339 valid string formatted by date, time, and timezone or "YYYY-MM-DDTHH:MM:SSZ"; where YYYY = year, MM = month, DD = day, HH = hours, MM = minutes, SS = seconds, and Z = timezone (i.e. 2021-11-20T07:00:00Z). This flag argument must be specified if any of the other arguments in this group are specified. Exactly one of these must be specified: --duration=DURATION Alternate way of specifying time in the number of seconds to terminate capacity request relative to the start time of a request. --end-time=END_TIME End time of the Future Reservation. The end time must be an RFC3339 valid string formatted by date, time, and timezone or "YYYY-MM-DDTHH:MM:SSZ"; where YYYY = year, MM = month, DD = day, HH = hours, MM = minutes, SS = seconds, and Z = timezone (i.e. 2021-11-20T07:00:00Z). OPTIONAL FLAGS --deployment-type=DEPLOYMENT_TYPE Indicates if the reservation allocation strategy is static or dynamic. DENSE refers to a fixed size and topology, with deployment expressed in terms of blocks. FLEXIBLE indicates a non-static distribution of capacity that can change over time. Deployment is not expressed in blocks. DEPLOYMENT_TYPE must be one of: DENSE, FLEXIBLE. --description=DESCRIPTION An optional description of the future reservation to create. --enable-opportunistic-maintenance=ENABLE_OPPORTUNISTIC_MAINTENANCE Indicates if this group of VMs have opportunistic maintenance enabled. Applicable only to dense coordinated maintenance. --instance-termination-action=INSTANCE_TERMINATION_ACTION Specific termination action for running instances at the end of reservation duration, it can be DELETE or STOP. INSTANCE_TERMINATION_ACTION must be one of: DELETE, STOP. --name-prefix=NAME_PREFIX A name prefix for the auto-created reservations when capacity is delivered at the start time. Each auto-created reservation name starts with the name prefix. --planning-status=PLANNING_STATUS The planning status of the future reservation. The default value is DRAFT. While in DRAFT, any changes to the future reservation's properties will be allowed. If set to SUBMITTED, the future reservation will submit and its procurementStatus will change to PENDING_APPROVAL. Once the future reservation is pending approval, changes to the future reservation's properties will not be allowed. PLANNING_STATUS must be one of: DRAFT Default planning status value. SUBMITTED Planning status value to immediately submit the future reservation. --[no-]require-specific-reservation Indicate whether the auto-created reservations can be consumed by VMs with "any reservation" defined. If enabled, then only VMs that target the auto-created reservation by name using --reservation-affinity=specific can consume from this reservation. Auto-created reservations delivered with this flag enabled will inherit the name of the future reservation. Use --require-specific-reservation to enable and --no-require-specific-reservation to disable. --reservation-name=RESERVATION_NAME Name of reservations where the capacity is provisioned at the time of delivery of future reservations. If the reservation with the given name does not exist already, it is created automatically at the time of Approval with INACTIVE state till specified start-time. Either provide the reservation_name or a name_prefix. --scheduling-type=SCHEDULING_TYPE Indicates the maintenance type for this group of VMs. This will be set on the reservation via FR, and will be inherited for reservation blocks. SCHEDULING_TYPE must be one of: GROUPED, INDEPENDENT. --zone=ZONE Zone of the future reservation to create. If not specified and the compute/zone property isn't set, you might be prompted to select a zone (interactive mode only). To avoid prompting when this flag is omitted, you can set the compute/zone property: $ gcloud config set compute/zone ZONE A list of zones can be fetched by running: $ gcloud compute zones list To unset the property, run: $ gcloud config unset compute/zone Alternatively, the zone can be stored in the environment variable CLOUDSDK_COMPUTE_ZONE. Manage the auto-delete time properties. At most one of these can be specified: --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME Automatically deletes an auto-created reservations at a specific time. The specified time must be an RFC3339 timestamp, which must be formatted as "YYYY-MM-DDTHH:MM:SSZ" where YYYY = year, MM = month, DD = day, HH = hours, MM = minutes, SS = seconds, and Z = time zone in Coordinated Universal Time (UTC). For example, specify 2021-11-20T07:00:00Z. --auto-created-reservations-duration=AUTO_CREATED_RESERVATIONS_DURATION Automatically deletes an auto-created reservations after a specified number of days, hours, minutes, or seconds. For example, specify 30m for 30 minutes, or 1d2h3m4s for 1 day, 2 hours, 3 minutes, and 4 seconds. For more information, see $ gcloud topic datetimes. Manage the commitment info properties --commitment-name=COMMITMENT_NAME Name of commitment covering the delivered reservation at the time of delivery of future reservations. If not specified, it takes the name of the future reservation. --commitment-plan=COMMITMENT_PLAN The plan for this commitment to be created, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years). COMMITMENT_PLAN must be one of: TWELVE_MONTH, THIRTY_SIX_MONTH. --previous-commitment-terms=PREVIOUS_COMMITMENT_TERMS Applicable only if future reservation will deliver to an existing reservation with a ramp plan. When set to EXTEND, all associated parent Committed Used Discount's end-date/term will be extended to the end-time of this future reservation. Default is to extend previous commitment's time to the end_time of the reservation. PREVIOUS_COMMITMENT_TERMS must be (only one value is supported): EXTEND. Manage the properties of a shared reservation. --share-setting=SHARE_SETTING Specify if this future reservation is shared, and if so, the type of sharing. If you omit this flag, this value is local by default. SHARE_SETTING must be one of: local, projects. --share-with=PROJECT,[PROJECT,...] If this future reservation is shared, provide a comma-separated list of projects that this future reservation is shared with. The list must contain 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 this command fails with API permission errors despite specifying the correct project, you might be trying to access an API with an invitation-only early access allowlist. These variants are also available: $ gcloud compute future-reservations create $ gcloud beta compute future-reservations create