CreateVolume

You can use the CreateVolume method to create a new, empty volume on the cluster. As soon as the volume creation is complete, the volume is available for connection via iSCSI.

Volumes created without specified QoS values use the default values. You can view default values for a volume by using the GetDefaultQoS method.

Parameters

This method has the following input parameters:

Name Description Type Default value Required
accountID The ID of the account that owns this volume. integer None Yes
associateWithQoSPolicy Associate the volume with the specified QoS policy. Possible values:
  • true: Associate the volume with the QoS policy specified in the QoSPolicyID parameter.
  • false: Do not associate the volume with the QoS policy specified in the QoSPolicyID parameter. When false, any existing policy association is removed, regardless of whether you specify a QoS policy in the QoSPolicy parameter.
boolean true No
attributes List of name-value pairs in JSON object format. The total attribute size must be less than 1000B, or 1KB, including JSON formatting characters. JSON object None No
enable512e Enable 512-byte sector emulation. Possible values:
  • true: The volume provides 512-byte sector emulation.
  • false: 512e emulation is not enabled.
boolean None Yes
enableSnapMirrorReplication Determines whether the volume can be used for replication with SnapMirror endpoints. Possible values:
  • true
  • false
boolean false No
name Name of the volume access group (may be user-specified). Not required to be unique, but recommended. Must be 1 to 64 characters in length. string None Yes
qos The initial quality of service settings for this volume. Default values are used if none are specified. Possible values:
  • minIOPS
  • maxIOPS
  • burstIOPS
QoS object None No
qosPolicyID The ID for the policy whose QoS settings should be applied to the specified volumes. This parameter is mutually exclusive with the qos parameter. integer None No
totalSize Total size of the volume, in bytes. Size is rounded up to the nearest megabyte. integer None Yes

Return values

This method has the following return values:

Name Description Type
volume Object containing information about the newly created volume. volume
volumeID The volumeID for the newly created volume. integer
curve The curve is a set of key-value pairs. The keys are the I/O sizes in bytes. The values represent the cost of performing an IOP at a specific I/O size. The curve is calculated relative to a 4096 byte operation set at 100 IOPS. JSON object

Request example

Requests for this method are similar to the following example:

{
   "method": "CreateVolume",
   "params": {
      "name": "mysqldata",
      "accountID": 1,
      "totalSize": 107374182400,
      "enable512e": false,
      "attributes": {
         "name1": "value1",
         "name2": "value2",
         "name3": "value3"
      },
      "qos": {
         "minIOPS": 50,
         "maxIOPS": 500,
         "burstIOPS": 1500,
         "burstTime": 60
      }
   },
   "id": 1
}

Response example

This method returns a response similar to the following example:

{
    "id": 1,
    "result": {
        "curve": {
            "4096": 100,
            "8192": 160,
            "16384": 270,
            "32768": 500,
            "65536": 1000,
            "131072": 1950,
            "262144": 3900,
            "524288": 7600,
            "1048576": 15000
        },
        "volume": {
            "access": "readWrite",
            "accountID": 1,
            "attributes": {
                "name1": "value1",
                "name2": "value2",
                "name3": "value3"
            },
            "blockSize": 4096,
            "createTime": "2016-03-31T22:20:22Z",
            "deleteTime": "",
            "enable512e": false,
            "iqn": "iqn.2010-01.com.solidfire:mysqldata.677",
            "name": "mysqldata",
            "purgeTime": "",
            "qos": {
                "burstIOPS": 1500,
                "burstTime": 60,
                "curve": {
                    "4096": 100,
                    "8192": 160,
                    "16384": 270,
                    "32768": 500,
                    "65536": 1000,
                    "131072": 1950,
                    "262144": 3900,
                    "524288": 7600,
                    "1048576": 15000
                },
                "maxIOPS": 500,
                "minIOPS": 50
            },
            "scsiEUIDeviceID": "6a796179000002a5f47acc0100000000",
            "scsiNAADeviceID": "6f47acc1000000006a796179000002a5",
            "sliceCount": 0,
            "status": "active",
            "totalSize": 107374182400,
            "virtualVolumeID": null,
            "volumeAccessGroups": [],
            "volumeID": 677,
            "volumePairs": []
        },
        "volumeID": 677
    }
}