Help Center/ Elastic Volume Service/ API Reference/ API/ Disk Management/ Creating EVS Disks (Deprecated)
Updated on 2024-02-27 GMT+08:00

Creating EVS Disks (Deprecated)

Function

This API is used to create one or multiple EVS disks. This API call exists for compatibility reasons only and is not meant to be used. Use another API.

Calling Method

For details, see Calling APIs.

URI

POST /v2/{project_id}/cloudvolumes

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

The project ID.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

A token obtained from IAM is valid for 24 hours. When using a token for authentication, cache it to avoid frequently calling the API.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

volume

Yes

CreateDiskOption object

The information of the disk to be created.

Table 4 CreateDiskOption

Parameter

Mandatory

Type

Description

availability_zone

Yes

String

The AZ where you want to create the disk.

backup_id

No

String

The backup ID. This parameter is mandatory when you create the disk from a backup.

count

No

Integer

The number of disks to be created in a batch. If this parameter is not specified, only one disk will be created. You can create a maximum of 100 disks in a batch. If the disk is created from a backup, batch creation is not possible, and this parameter must be set to 1.

If the specified value is a decimal number, the number part will be used by default.

description

No

String

The disk description. You can enter up to 85 characters.

enterprise_project_id

No

String

The enterprise project ID. This ID is associated with the disk during the disk creation.

imageRef

No

String

The image ID. If this parameter is specified, the disk is created from an image.

metadata

No

Map<String,String>

The disk metadata information. The value can be as follows: __system__cmkid:

The encryption CMK ID in metadata. This parameter is used together with __system__encrypted for encryption. The length of cmkid is fixed at 36 bytes.

NOTE:

For details about how to obtain the key ID, see Querying the Key List.

__system__encrypted:

The encryption field in metadata. The value can be 0 (does not encrypt) or 1 (encrypts). If this parameter is not specified, the encryption attribute of the disk is the same as that of the data source. If the disk is not created from a data source, the disk is not encrypted by default.

[full_clone]

If the disk is created from a snapshot and linked cloning needs to be used, set this parameter to 0.

[hw:passthrough]

  • If this parameter value is true, the disk device type is SCSI, which allows ECS OSs to directly access the underlying storage media and supports SCSI reservation commands.

  • If this parameter value is false, the disk device type is VBD, which supports only simple SCSI read/write commands.

  • If this parameter is not available, the disk device type is VBD.

multiattach

No

Boolean

Whether the disk is shareable. The value can be true (shareable) or false (non-shareable).

name

No

String

The disk name.

If you create one disk, the name value is the disk name, which can contain a maximum of 64 characters.

If you create multiple disks (the count value greater than 1), the system automatically adds a hyphen followed by a four-digit incremental number, such as -0000, to the end of each disk name. Example disk name: volume-0001 or volume-0002

shareable

No

String

Whether the disk is shareable. The value can be true (shareable) or false (non-shareable). \n This field has been deprecated. Use multiattach.

size

Yes

Integer

The disk size, in GiB. The restrictions are as follows:

  • System disk: 1 GiB to 1,024 GiB

  • Data disk: 10 GiB to 32,768 GiB

  • This parameter is mandatory when you create an empty disk or use an image or a snapshot to create a disk. If you use an image or a snapshot to create a disk, the disk size cannot be smaller than the image or snapshot size.

  • This parameter is optional if you create the disk from a backup. If not specified, the disk size is the same as the backup size.

snapshot_id

No

String

The snapshot ID. If this parameter is specified, the disk is created from a snapshot.

volume_type

Yes

String

The disk type.

The value can be SATA, SAS, GPSSD, SSD, ESSD, GPSSD2, or ESSD2.

  • SATA: the common I/O type (sold out)

  • SAS: the high I/O type

  • GPSSD: the general purpose SSD type

  • SSD: the ultra-high I/O type

  • ESSD: the extreme SSD type

  • GPSSD2: the general purpose SSD V2 type

  • ESSD2: the extreme SSD V2 type

If the specified disk type is not available in the AZ, the disk will fail to be created.

NOTE:

When you create a disk from a snapshot, ensure that the disk type of the new disk is consistent with that of the snapshot's source disk.

NOTE:

For details about disk types, see

Disk Types and Performance.

Enumeration values:

  • SATA

  • SAS

  • GPSSD

  • SSD

  • ESSD

  • GPSSD2

  • ESSD2

tags

No

Map<String,String>

The disk tag information.

sys_tags

No

Map<String,String>

The disk system tag information.

Response Parameters

Status code: 202

Table 5 Response body parameters

Parameter

Type

Description

job_id

String

The task ID. This parameter is returned when the disk is billed on a pay-per-use basis. > > >You can query whether the disk creation task is complete by task ID. For details, see Querying Task Status.

volume_ids

Array of strings

The IDs of the disks to be created. >>If 404 is returned when you query the details of a disk by disk ID, the disk is being created or has failed to be created. >You can query whether the disk creation task is complete by task ID. For details, see Querying Task Status.

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

error

Error object

The error message returned if an error occurs. For details, seeParameters in the error field.

Table 7 Error

Parameter

Type

Description

code

String

The error code returned if an error occurs. For the error codes and their meanings, see Error Codes.

message

String

The error message returned if an error occurs.

Example Requests

{
  "volume" : {
    "backup_id" : null,
    "count" : 1,
    "availability_zone" : "az1.dc1",
    "description" : "test_volume_1",
    "size" : 120,
    "name" : "test_volume_1",
    "imageRef" : null,
    "volume_type" : "SSD",
    "metadata" : {
      "__system__encrypted" : "0",
      "__system__cmkid" : null
    }
  }
}

Example Responses

Status code: 202

Accepted

{
  "job_id" : "70a599e0-31e7-49b7-b260-868f441e862b"
}

Status code: 400

Bad Request

{
  "error" : {
    "message" : "XXXX",
    "code" : "XXX"
  }
}

Status Codes

Status Code

Description

202

Accepted

400

Bad Request

Error Codes

See Error Codes.