[Yandex Cloud documentation](../../../index.md) > [Yandex Compute Cloud](../../index.md) > [Step-by-step guides](../index.md) > Reserved instance pools > Creating a reserved instance pool

# Creating a reserved instance pool

{% note warning %}

Reserved instance pools are billable: you pay for the whole unused volume of reserved computing resources of VMs, GPU clusters, and software accelerated networks according to the [Yandex Compute Cloud pricing policy](../../pricing.md). For more information, see [Using reserved instance pools](../../pricing.md#pool).

{% endnote %}

_The reserved instance pool feature is at the [Preview stage](../../../overview/concepts/launch-stages.md)._

To create a [reserved instance pool](../../concepts/reserved-pools.md):

{% list tabs group=instructions %}

- Management console {#console}

  1. In the [management console](https://console.yandex.cloud), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) you want to create a reserved instance pool in.
  1. Navigate to **Compute Cloud**.
  1. In the left-hand panel, select ![image](../../../_assets/console-icons/folder-lock.svg) **VM reserve pools**.
  1. Click **Create pool**.
  1. Select the [availability zone](../../../overview/concepts/geo-scope.md) you want to reserve [computing resources](../../concepts/vm.md#types) in.
  1. Select the pool type:

      * **Standard**: Number of linked VMs is limited by the pool size.
      * **With oversubscription**: You can [link any number of VMs](../../concepts/reserved-pools.md#oversubscription). The number of running VMs is limited by the pool size.
  1. Specify **Pool size**, which is the maximum number of VMs in the pool.
  1. Under **VM computing resources**, select one of the preset configurations or create a custom one. To create a custom configuration:

      * Go to the **Custom** tab.
      * Select a [platform](../../concepts/vm-platforms.md).
      * Specify the [guaranteed performance](../../concepts/performance-levels.md) and required number of vCPUs, as well as RAM size.
      * Enable a [software accelerated network](../../concepts/software-accelerated-network.md) if needed.
  1. Under **General information about the pool**:

      * Enter a name for the pool. The naming requirements are as follows:

          * Length: between 3 and 63 characters.
          * It can only contain lowercase Latin letters, numbers, and hyphens.
          * It must start with a letter and cannot end with a hyphen.

      * Optionally, add a description of the pool.
      * Optionally, add pool [labels](../../../resource-manager/concepts/labels.md).
  1. Click **Create**.

- CLI {#cli}

  If you do not have the Yandex Cloud CLI yet, [install and initialize it](../../../cli/quickstart.md#install).

  The folder used by default is the one specified when [creating](../../../cli/operations/profile/profile-create.md) the CLI profile. To change the default folder, use the `yc config set folder-id <folder_ID>` command. You can also specify a different folder for any command using `--folder-name` or `--folder-id`. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.

  1. See the description of the [Yandex Cloud CLI](../../../cli/index.md) command for creating a reserved instance pool:

      ```bash
      yc compute reserved-instance-pool create --help
      ```
  1. Create a reserved instance pool in the default folder:

      ```bash
      yc compute reserved-instance-pool create \
        --name <pool_name> \
        --description <pool_description> \
        --zone-id <availability_zone_ID> \
        --size <pool_size> \
        --platform <platform_ID> \
        --cores <number_of_vCPUs> \
        --memory <RAM_size> \
        --gpus <number_of_GPUs> \
        --gpu-cluster-id <GPU_cluster_ID> \
        --allow-oversubscription
      ```

      Where:
      * `--name`: Name of the new pool. The naming requirements are as follows:

          * Length: between 3 and 63 characters.
          * It can only contain lowercase Latin letters, numbers, and hyphens.
          * It must start with a letter and cannot end with a hyphen.

      * `--description`: Description of the new pool. This is an optional setting.
      * `--zone-id`: ID of the [availability zone](../../../overview/concepts/geo-scope.md) to reserve [computing resources](../../concepts/vm.md#types) in.
      * `--size`: Number of slots per pool. This is an optional setting. The default value is `0`.
      * `--platform`: [Platform](../../concepts/vm-platforms.md) where the computing resources are reserved. This is an optional setting. The default value is `standard-v2` (`Intel Cascade Lake`).
      * `--cores`: Number of vCPUs for VMs in the new pool. This is an optional setting. The default value is `2`.
      * `--memory`: Amount of RAM for VMs in the new pool. This is an optional setting. The default value is `2 GB`.
      * `--gpus`: Number of [GPUs](../../concepts/gpus.md) for VMs in the new pool. This is an optional setting. This parameter is only available if you select a platform with [GPU support](../../concepts/gpus.md#config).
      * `--gpu-cluster-id`: GPU [cluster](../../concepts/gpus.md#gpu-clusters) ID. This is an optional setting.
      * `--allow-oversubscription`: Parameter enabling the [oversubscription mode](../../concepts/reserved-pools.md#oversubscription) for the pool. In this mode, you can attach VMs beyond the pool capacity. This is an optional parameter. The oversubscription mode is off by default.

      Result:

      ```text
      done (8s)
      id: fv4vnl1ncbja********
      zone_id: ru-central1-a
      cloud_id: b1gia87mbaom********
      folder_id: b1gt6g8ht345********
      name: test-pool
      description: sample description
      created_at: "2025-08-12T07:58:57Z"
      platform_id: standard-v2
      resources_spec:
        memory: "2147483648"
        cores: "2"
        core_fraction: "100"
      gpu_settings: {}
      network_settings:
        type: STANDARD
      size: "2"
      committed_size: "2"
      slot_stats:
        total: "2"
        unavailable: "2"
      instance_stats: {}
      ```

      For more information about the `yc compute reserved-instance-pool create` command, see the [Yandex Cloud CLI reference](../../../cli/cli-ref/compute/cli-ref/reserved-instance-pool/create.md).

- API {#api}

  Use the [create](../../api-ref/ReservedInstancePool/create.md) REST API method for the [ReservedInstancePool](../../api-ref/ReservedInstancePool/index.md) resource or the [ReservedInstancePoolService/Create](../../api-ref/grpc/ReservedInstancePool/create.md) gRPC API call.

{% endlist %}

#### See also {#see-also}

* [Managing VMs in a reserved instance pool](manage-pool-vms.md)
* [Reserved instance pools in Compute Cloud](../../concepts/reserved-pools.md)