Compute Cloud API, gRPC: DiskService.Relocate
Moves the specified disk to another availability zone
Disk must be detached from instances. To move attached
disk use InstanceService.Relocate request.
gRPC request
rpc Relocate (RelocateDiskRequest) returns (operation.Operation)
RelocateDiskRequest
{
"diskId": "string",
"destinationZoneId": "string",
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "int64"
}
}
Field |
Description |
diskId |
string Required field. ID of the disk to move. To get the disk ID, make a DiskService.List request. |
destinationZoneId |
string Required field. ID of the availability zone to move the disk to. To get the zone ID, make a ZoneService.List request. |
diskPlacementPolicy |
Placement policy configuration in target zone. Must be specified if disk has placement policy. |
DiskPlacementPolicy
Field |
Description |
placementGroupId |
string Placement group ID. |
placementGroupPartition |
int64 |
operation.Operation
{
"id": "string",
"description": "string",
"createdAt": "google.protobuf.Timestamp",
"createdBy": "string",
"modifiedAt": "google.protobuf.Timestamp",
"done": "bool",
"metadata": {
"diskId": "string",
"sourceZoneId": "string",
"destinationZoneId": "string"
},
// Includes only one of the fields `error`, `response`
"error": "google.rpc.Status",
"response": {
"id": "string",
"folderId": "string",
"createdAt": "google.protobuf.Timestamp",
"name": "string",
"description": "string",
"labels": "string",
"typeId": "string",
"zoneId": "string",
"size": "int64",
"blockSize": "int64",
"productIds": [
"string"
],
"status": "Status",
// Includes only one of the fields `sourceImageId`, `sourceSnapshotId`
"sourceImageId": "string",
"sourceSnapshotId": "string",
// end of the list of possible fields
"instanceIds": [
"string"
],
"diskPlacementPolicy": {
"placementGroupId": "string",
"placementGroupPartition": "int64"
},
"hardwareGeneration": {
// Includes only one of the fields `legacyFeatures`, `generation2Features`
"legacyFeatures": {
"pciTopology": "PCITopology"
},
"generation2Features": "Generation2HardwareFeatures"
// end of the list of possible fields
},
"kmsKey": {
"keyId": "string",
"versionId": "string"
}
}
// end of the list of possible fields
}
An Operation resource. For more information, see Operation.
Field |
Description |
id |
string ID of the operation. |
description |
string Description of the operation. 0-256 characters long. |
createdAt |
Creation timestamp. |
createdBy |
string ID of the user or service account who initiated the operation. |
modifiedAt |
The time when the Operation resource was last modified. |
done |
bool If the value is |
metadata |
Service-specific metadata associated with the operation. |
error |
The error result of the operation in case of failure or cancellation. Includes only one of the fields The operation result. |
response |
The normal response of the operation in case of success. Includes only one of the fields The operation result. |
RelocateDiskMetadata
Field |
Description |
diskId |
string ID of the disk that is being moved. |
sourceZoneId |
string ID of the availability zone that the disk is being moved from. |
destinationZoneId |
string ID of the availability zone that the disk is being moved to. |
Disk
A Disk resource. For more information, see Disks.
Field |
Description |
id |
string ID of the disk. |
folderId |
string ID of the folder that the disk belongs to. |
createdAt |
|
name |
string Name of the disk. 1-63 characters long. |
description |
string Description of the disk. 0-256 characters long. |
labels |
string Resource labels as |
typeId |
string ID of the disk type. |
zoneId |
string ID of the availability zone where the disk resides. |
size |
int64 Size of the disk, specified in bytes. |
blockSize |
int64 Block size of the disk, specified in bytes. |
productIds[] |
string License IDs that indicate which licenses are attached to this resource. The correct license ID is generated by the platform. IDs are inherited by new resources created from this resource. If you know the license IDs, specify them when you create the image. |
status |
enum Status Current status of the disk.
|
sourceImageId |
string ID of the image that was used for disk creation. Includes only one of the fields |
sourceSnapshotId |
string ID of the snapshot that was used for disk creation. Includes only one of the fields |
instanceIds[] |
string Array of instances to which the disk is attached. |
diskPlacementPolicy |
Placement policy configuration. |
hardwareGeneration |
If specified, forces the same HardwareGeneration features to be applied to the instance |
kmsKey |
Key encryption key info. |
DiskPlacementPolicy
Field |
Description |
placementGroupId |
string Placement group ID. |
placementGroupPartition |
int64 |
HardwareGeneration
A set of features, specific to a particular Compute hardware generation.
They are not necessary supported by every host OS or distro, thus they are fixed to an image
and are applied to all instances created with it as their boot disk image.
These features significantly determine how the instance is created, thus cannot be changed after the fact.
Field |
Description |
legacyFeatures |
Includes only one of the fields |
generation2Features |
Includes only one of the fields |
LegacyHardwareFeatures
A first hardware generation, by default compatible with all legacy images.
Allows switching to PCI_TOPOLOGY_V2 and back.
Field |
Description |
pciTopology |
enum PCITopology
|
Generation2HardwareFeatures
A second hardware generation, which by default assumes PCI_TOPOLOGY_V2
and UEFI boot (with UEFI related features).
Field |
Description |
Empty |
KMSKey
Field |
Description |
keyId |
string ID of KMS symmetric key |
versionId |
string Version of KMS symmetric key |