Stay organized with collections Save and categorize content based on your preferences.
You can use a Hyperdisk Balanced, Hyperdisk Extreme or Hyperdisk Throughput volume with your Compute Engine instance by completing the following tasks:
For Hyperdisk Balanced volumes, you can also create boot disks as well as data disks.
For general information about Hyperdisk, see About Hyperdisk.
To add a Hyperdisk Balanced High Availability disk to your instance, use the following procedures:
Before you beginSelect the tab for how you plan to use the samples on this page:
ConsoleWhen you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloudAfter installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Note: If you installed the gcloud CLI previously, make sure you have the latest version by runninggcloud components update
.To use the Go samples on this page in a local development environment, install and initialize the gcloud CLI, and then set up Application Default Credentials with your user credentials.
Install the Google Cloud CLI.
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
To initialize the gcloud CLI, run the following command:
gcloud init
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
For more information, see Set up authentication for a local development environment.
JavaTo use the Java samples on this page in a local development environment, install and initialize the gcloud CLI, and then set up Application Default Credentials with your user credentials.
Install the Google Cloud CLI.
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
To initialize the gcloud CLI, run the following command:
gcloud init
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
For more information, see Set up authentication for a local development environment.
Node.jsTo use the Node.js samples on this page in a local development environment, install and initialize the gcloud CLI, and then set up Application Default Credentials with your user credentials.
Install the Google Cloud CLI.
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
To initialize the gcloud CLI, run the following command:
gcloud init
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
For more information, see Set up authentication for a local development environment.
RESTTo use the REST API samples on this page in a local development environment, you use the credentials you provide to the gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
For more information, see Authenticate for using REST in the Google Cloud authentication documentation.
To get the permissions that you need to add a Hyperdisk volume to your instance, ask your administrator to grant you the following IAM roles on the project:
roles/compute.instanceAdmin.v1
)roles/iam.serviceAccountUser
)For more information about granting roles, see Manage access to projects, folders, and organizations.
These predefined roles contain the permissions required to add a Hyperdisk volume to your instance. To see the exact permissions that are required, expand the Required permissions section:
Required permissionsThe following permissions are required to add a Hyperdisk volume to your instance:
compute.disks.create
on the project compute.instances.attachDisk
on the instance compute.disks.use
on the volume that you want to attach to the instance compute.instances.setMetadata
on the instanceYou might also be able to get these permissions with custom roles or other predefined roles.
Supported values for Hyperdisk volumes Size limitsThe size you specify for a Hyperdisk volume must be within the ranges listed in following table.
Hyperdisk type Minimum size Maximum size Default size Hyperdisk Balanced 4 GiB 64 TiB 100 GiB Hyperdisk Balanced High Availability 4 GiB 64 TiB 100 GiB Hyperdisk Extreme 64 GiB 64 TiB 1 TiB Hyperdisk ML 4 GiB 64 TiB 100 GiB Hyperdisk Throughput 2 TiB 32 TiB 2 TiBHowever, the size of a Hyperdisk volume that's attached to a VM can't exceed the Hyperdisk limits for the VM.
Performance limitsThe following table lists the limits for the performance that you can specify for each Hyperdisk type. However, the IOPS and throughput levels you can specify also depend on the volume's size. For a detailed summary of each limit, see the Size and performance limits section for Hyperdisk Balanced, Hyperdisk Balanced High Availability, Hyperdisk Extreme, Hyperdisk ML, and Hyperdisk Throughput.
Hyperdisk type IOPS limit Throughput limit (MiB/s) Hyperdisk Balanced 160,000 2,400 Hyperdisk Balanced High Availability 100,000 1,200 Hyperdisk Extreme 350,000 You can't provision a throughput level for Hyperdisk Extreme volumes. Each volume gets 250 MiB/s of throughput with every 1,000 IOPS, up to 5,000 MiB/s. Hyperdisk ML You can't provision an IOPS level, but each MiB/s of provisioned throughput comes with 16 IOPS, up to 19,200,000 IOPS. 1,200,000 Hyperdisk Throughput You can't provision an IOPS level, but each MiB/s of provisioned throughput comes with 4 IOPS, up to 2,400 IOPS. 600 Hyperdisk type variablesThe following table lists the reference values of each Hyperdisk type. When creating a Hyperdisk volume with the Google Cloud CLI, REST, or the Cloud Client Libraries for Compute Engine indicate the Hyperdisk type to create by providing its corresponding value from the table.
Disk type Reference name Hyperdisk Balancedhyperdisk-balanced
Hyperdisk Balanced High Availability hyperdisk-balanced-high-availability
Hyperdisk Extreme hyperdisk-extreme
Hyperdisk Throughput hyperdisk-throughput
Hyperdisk ML hyperdisk-ml
Add a Hyperdisk volume to your instance
You can create and attach a Hyperdisk volume by using the Google Cloud console, Google Cloud CLI, or REST.
The size, throughput, and IOPS that you specify when creating a Hyperdisk volume must be in the range of supported values.
When you create a Hyperdisk Balanced volume, you can optionally allow multiple instances to access the disk concurrently by creating the disk in multi-writer mode.
ConsoleGo to the VM instances page.
Click the name of the instance where you want to add a disk.
On the VM instance details page, click Edit.
Under the heading Additional disks, click Add new disk.
Specify a name for the disk, and optionally add a description. Select Blank disk as the Disk source type.
Under Disk settings, choose a disk type from the following list. The values that you specify must be in the range of supported values.
Optional: For Hyperdisk Balanced volumes, you can enable attaching the disk to multiple instances by creating the disk in multi-writer mode. Under Access mode, select Multiple VMs read write.
Click Save.
To apply your changes to the instance, click Save.
Use the gcloud compute disks create
command to create the Hyperdisk volume.
gcloud compute disks create DISK_NAME \ --zone=ZONE \ --size=DISK_SIZE \ --type=DISK_TYPE \ --provisioned-iops=IOPS_LIMIT --provisioned-throughput=THROUGHPUT_LIMIT --access-mode=DISK_ACCESS_MODE
Replace the following:
DISK_NAME
: the name of the new disk.ZONE
: the name of zone where the new disk is being created.DISK_SIZE
: Optional: The size of the new disk. The value must be a whole number followed by a size unit of GB for gibibyte, or TB for tebibyte. If no size unit is specified, 100 GB is used as the default value. The accepted values for the disk size are:
DISK_TYPE
: the type of disk. Use one of the following values: hyperdisk-balanced
, hyperdisk-extreme
, hyperdisk-ml
, or hyperdisk-throughput
IOPS_LIMIT
: Optional: For Hyperdisk Balanced or Hyperdisk Extreme disks, this is the number of I/O operations per second (IOPS) that the disk can handle.THROUGHPUT_LIMIT
: Optional: For Hyperdisk Balanced, Hyperdisk ML, or Hyperdisk Throughput volumes, this is an integer that represents the maximum throughput, measured in MiB per second, that the disk can provide.DISK_ACCESS_MODE
: Optional: How compute instances can access the data on the disk. Supported values are:
READ_WRITE_SINGLE
, for read-write access from one instance. This is the default.READ_WRITE_MANY
, (Hyperdisk Balanced and Hyperdisk Balanced High Availability only) for concurrent read-write access from multiple instances.READ_ONLY_MANY
, (Hyperdisk ML only) for concurrent read-only access from multiple instances.To set the access mode for Hyperdisk Balanced High Availability disks, see Create a regional disk.
Optional: Use the gcloud compute disks describe DISK_NAME
command to see a description of your disk.
After you create the disk, you can attach the disk to an instance.
Construct a POST
request to create a zonal Hyperdisk by using the disks.insert
method. Include the name
, sizeGb
, type
, provisionedIops
, and provisionedThroughput
properties. To create this disk as an empty and unformatted non-boot disk, don't specify a source image or a source snapshot.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks { "name": "DISK_NAME", "sizeGb": "DISK_SIZE", "type": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE", "provisionedIops": "IOPS_LIMIT", "provisionedThroughput": "THROUGHPUT_LIMIT", "accessMode": "DISK_ACCESS_MODE" }
Replace the following:
PROJECT_ID
: your project IDZONE
: the zone where your instance and new disk are locatedDISK_NAME
: the name of the new diskDISK_SIZE
: Optional: The size of the new disk. The value must be a whole number followed by a size unit of GB for gibibytes or TB for tebibytes.DISK_TYPE
: the type of disk. To create a Hyperdisk volume, use one of the following values: hyperdisk-balanced
, hyperdisk-extreme
, hyperdisk-ml
, or hyperdisk-throughput
.IOPS_LIMIT
: Optional: For Hyperdisk Balanced and Hyperdisk Extreme, this is the number of I/O operations per second that the disk can handle.THROUGHPUT_LIMIT
: Optional: For Hyperdisk Balanced, Hyperdisk ML, or Hyperdisk Throughput volumes, this is an integer that represents the maximum throughput, measured in MiB per second, that the disk can provide.DISK_ACCESS_MODE
: Optional: How compute instances can access the data on the disk. Supported values are:
READ_WRITE_SINGLE
, for read-write access from one instance. This is the default.READ_WRITE_MANY
, (Hyperdisk Balanced and Hyperdisk Balanced High Availability only) for concurrent read-write access from multiple instances.READ_ONLY_MANY
, (Hyperdisk ML only) for concurrent read-only access from multiple instances.To set the access mode for Hyperdisk Balanced High Availability disks, see Create a regional disk.
Optional: Use the compute.disks.get
method to see a description of your disk.
After you create the disk, you can attach the disk to any running or stopped instance.
After you create the disk, you can attach the disk to any running or stopped instance.
Format and mount the diskAfter you create and attach the new disk to an instance, you must format and mount the disk, so that the operating system can use the available storage space.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-07-02 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-02 UTC."],[[["Hyperdisk volumes can be added to Compute Engine instances as blank, non-boot, and zonal disks, and they can be attached during or after instance creation, with Hyperdisk Balanced volumes additionally supporting boot disks."],["Before adding a Hyperdisk volume, it is essential to review the Hyperdisk limitations and set up authentication for Google Cloud services and APIs if you haven't already."],["You can create a Hyperdisk volume using the Google Cloud console, gcloud CLI, or REST, ensuring that the size, throughput, and IOPS specified are within the supported ranges."],["After creating and attaching a Hyperdisk volume, it must be formatted and mounted to allow the operating system to utilize the available storage, following procedures for Linux or Windows as required."],["To maintain data integrity, you should regularly back up Hyperdisk volumes using snapshots and understand how to customize the IOPS and throughput of the disk."]]],[]]
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4