Create a volume using iSCSI
You can use this workflow to create a volume accessed through iSCSI.
Choose the workflow to use based on the type of Cloud Volumes ONTAP deployment:
Create a volume using iSCSI for a single node
You can use this workflow to create a volume using iSCSI protocol for a single node system.
There are two workflows available depending on whether a new or existing iGroup is used. You need to select the correct workflow:
Create a volume using iSCSI with a new iGroup
|
|
If the properties aggregateName and maxNumOfDisksApprovedToAdd are not provided on the REST API call, the response will fail with a suggested name for the aggregate and the number of disks needed to fulfill the request.
|
1. Select the system
Perform the workflow Get systems and choose the publicId value for the workingEnvironmentId parameter and the svmName value for the svmName parameter. From the capacityFeatures field in the response, choose the value of "Blob" for the capacityTier parameter.
2. Select the aggregate
Perform the workflow Get aggregates and choose the name for the aggregateName value. From the providerVolumes field in the response, you must also choose the value of the providerVolumeType parameter, the value of null for the iops parameter, and the value of null for the throughput parameter.
3. Choose the size for the disk
Choose the size value for the size:size parameter. The size:unit must be one of the following: TB, GB, MB, KB, or Byte.
4. Choose the iscsiInfo parameters
You must choose the following values for the REST API call:
-
A unique igroup name for
igroupCreationRequest→igroupNameparameter -
The required iqn’s to
igroupCreationRequest→initiatorsparameter. -
The required operating system for the
osNameparameter from one of the following:-
windows
-
linux
-
vmware
-
windows_2008
-
windows_gpt
-
5. Create the quote
Perform the workflow Create a quote.This is a recommended step but is not mandatory.
6. Create the volume
| HTTP method | Path |
|---|---|
POST |
/occm/api/azure/vsa/volumes |
- curl example
curl --location --request POST 'https://api.bluexp.netapp.com/occm/api/azure/vsa/volumes' --header 'Content-Type: application/json' --header 'x-agent-id: <AGENT_ID>' --header 'Authorization: Bearer <ACCESS_TOKEN>' --d @JSONinput
- Input
-
The JSON input example includes the minimum list of input parameters, including:
-
<WORKING_ENV_ID>
(workingEnvironmentId)string -
<SVM_NAME>
(svmName)string -
<AGGR_NAME>
(aggregateName)string
*
-
If aggregate name does not exist, you can set the createAggregateIfNotFound query parameter to true which allows the aggregate not-found condition.
- JSON input example
{
"workingEnvironmentId": "VsaWorkingEnvironment-SfpVUZSc",
"svmName": "svm_zivaws02we01",
"aggregateName": "aggr1",
"name": "volume_ha_iscsi",
"size": {
"size": 100,
"unit": "GB"
},
"snapshotPolicyName": "default",
"iscsiInfo": {
"igroupCreationRequest": {
"igroupName": "zivIgroup",
"initiators": [
"iqn.1994-05.com.redhat:00xx00000000",
"iqn.1994-05.com.redhat:00xx00000000"
]
},
"osName": "linux"
},
"enableThinProvisioning": true,
"enableCompression": true,
"enableDeduplication": true,
"maxNumOfDisksApprovedToAdd": 0,
"evCapacityApprovedToAdd": null,
"verifyNameUniqueness": true,
"providerVolumeType": "Premium_LRS",
"iops": null,
"throughput": null,
"capacityTier": "Blob",
"tieringPolicy": "auto",
"minimumCoolingDays": 31,
"volumeTags": []
}
- Output
-
None
Create a volume using iSCSI with an existing iGroup
|
|
If the properties aggregateName and maxNumOfDisksApprovedToAdd are not provided on the REST API call, the response will fail with a suggested name for the aggregate and the number of disks needed to fulfill the request.
|
1. Select the system
Perform the workflow Get systems and choose the publicId value for the workingEnvironmentId parameter and the svmName value for the svmName parameter.
2. Select the aggregate
Perform the workflow Get aggregates and choose the name for the aggregateName value.
3. Choose the size for the disk
Choose the size value for the size:size parameter. The size:unit must be one of the following: TB, GB, MB, KB, or byte.
4. Choose the iGroup
Perform the workflow Get iGroups and choose the igroups for the iscasiInfo → igroups value. Also select the osType value for the iscasiInfo → osName.
5. Create the quote
Perform the workflow Create a quote. This is a recommended step but is not mandatory.
6. Create the volume
| HTTP method | Path |
|---|---|
POST |
/occm/api/azure/vsa/volumes |
- curl example
curl --location --request POST 'https://api.bluexp.netapp.com/occm/api/azure/vsa/volumes' --header 'Content-Type: application/json' --header 'x-agent-id: <AGENT_ID>' --header 'Authorization: Bearer <ACCESS_TOKEN>' --d @JSONinput
- Input
-
The JSON input example includes the minimum list of input parameters, including:
-
<WORKING_ENV_ID>
(workingEnvironmentId)string -
<SVM_NAME>
(svmName)string -
<AGGR_NAME>
(aggregateName)string
-
If an aggregate name does not exist, you can set the createAggregateIfNotFound query parameter to true which allows the aggregate not-found condition.
- JSON input example
{
"workingEnvironmentId": "VsaWorkingEnvironment-UvFmWXoD",
"svmName": "svm_zivaws01we01",
"aggregateName": "aggr1",
"name": "zivaws01we01vol05Iscsi",
"size": {
"size": 100,
"unit": "GB"
},
"iscsiInfo": {
"igroups": ["zivIgroup1"],
"osName": "linux"
},
"snapshotPolicyName": "default",
"enableThinProvisioning": true,
"enableCompression": true,
"enableDeduplication": true,
"maxNumOfDisksApprovedToAdd": 0
}
- Output
-
None
Create a volume using iSCSI for a high availability pair
You can use this workflow to create a volume using iSCSI protocol for an HA system.
There are two workflows available depending on whether a new or existing iGroup is used. You need to select the correct workflow:
Create a volume using iSCSI with a new iGroup
|
|
If the properties aggregateName and maxNumOfDisksApprovedToAdd are not provided on the REST API call, the response will fail with a suggested name for the aggregate and the number of disks needed to fulfill the request.
|
1. Select the system
Perform the workflow Get systems and choose the publicId value for the workingEnvironmentId parameter and the svmName value for the svmName parameter. From the capacityFeatures field in the response, choose the value of Blob for the capacityTier parameter.
2. Select the aggregate
Perform the workflow Get aggregates and choose the name for the aggregateName value. From the providerVolumes field in the response, you must also choose the value of the providerVolumeType parameter, the value of null for the iops parameter, and the value of null for the throughput parameter.
3. Choose the size for the disk
Choose the size value for the size:size parameter. The size:unit must be one of the following: TB, GB, MB, KB, or byte.
4. Choose the iscsiInfo parameters
You must choose the following values for the REST API call:
-
A unique igroup name for
igroupCreationRequest→igroupNameparameter -
The required iqn’s to
igroupCreationRequest→initiatorsparameter. -
The required operating system for the
osNameparameter from one of the following:-
windows
-
linux
-
vmware
-
windows_2008
-
windows_gpt
-
5. Create the quote
Perform the workflow Create a quote.This is a recommended step but is not mandatory.
6. Create the volume
| HTTP method | Path |
|---|---|
POST |
/occm/api/azure/ha/volumes |
- curl example
curl --location --request POST 'https://api.bluexp.netapp.com/occm/api/azure/ha/volumes?createAggregateIfNotFound=false' --header 'Content-Type: application/json' --header 'x-agent-id: <AGENT_ID>' --header 'Authorization: Bearer <ACCESS_TOKEN>' --d @JSONinput
- Input
-
The JSON input example includes the minimum list of input parameters, including:
-
<WORKING_ENV_ID>
(workingEnvironmentId)string -
<SVM_NAME>
(svmName)string -
<AGGR_NAME>
(aggregateName)string
-
If aggregate name does not exist, you can set the createAggregateIfNotFound query parameter to true which allows the aggregate not-found condition.
- JSON input example
{
"workingEnvironmentId": "VsaWorkingEnvironment-SfpVUZSc",
"svmName": "svm_name",
"aggregateName": "aggr1",
"name": "volume_ha_iscsi",
"size": {
"size": 100,
"unit": "GB"
},
"snapshotPolicyName": "default",
"iscsiInfo": {
"igroupCreationRequest": {
"igroupName": "myIgroup",
"initiators": [
"iqn.1994-05.com.redhat:00xx00000000",
"iqn.1994-05.com.redhat:00xx00000000"
]
},
"osName": "linux"
},
"enableThinProvisioning": true,
"enableCompression": true,
"enableDeduplication": true,
"maxNumOfDisksApprovedToAdd": 0,
"evCapacityApprovedToAdd": null,
"verifyNameUniqueness": true,
"providerVolumeType": "Premium_LRS",
"iops": null,
"throughput": null,
"capacityTier": "Blob",
"tieringPolicy": "auto",
"minimumCoolingDays": 31,
"volumeTags": []
}
- Output
-
None
Create a volume using iSCSI with an existing iGroup
|
|
If the properties aggregateName and maxNumOfDisksApprovedToAdd are not provided on the REST API call, the response will fail with a suggested name for the aggregate and the number of disks needed to fulfill the request.
|
1. Select the system
Perform the workflow Get systems and choose the publicId value for the workingEnvironmentId parameter and the svmName value for the svmName parameter.
2. Select the aggregate
Perform the workflow Get aggregates and choose the name for the aggregateName value.
3. Choose the size for the disk
Choose the size value for the size:size parameter. The size:unit must be one of the following: TB, GB, MB, KB, or byte.
4. Choose the iGroup
Perform the workflow Get iGroups and choose the igroups for the iscasiInfo → igroups value. Also select the osType value for the iscasiInfo → osName.
5. Create the quote
Perform the workflow Create a quote. This is a recommended step but is not mandatory.
6. Create the volume
| HTTP method | Path |
|---|---|
POST |
/occm/api/azure/ha/volumes |
- curl example
curl --location --request POST 'https://api.bluexp.netapp.com/occm/api/azure/ha/volumes' --header 'Content-Type: application/json' --header 'x-agent-id: <AGENT_ID>' --header 'Authorization: Bearer <ACCESS_TOKEN>' --d @JSONinput
- Input
-
The JSON input example includes the minimum list of input parameters, including:
-
<WORKING_ENV_ID>
(workingEnvironmentId)string -
<SVM_NAME>
(svmName)string -
<AGGR_NAME>
(aggregateName)string
-
If an aggregate name does not exist, you can set the createAggregateIfNotFound query parameter to true which allows the aggregate not-found condition.
- JSON input exmaple
{
"workingEnvironmentId": "VsaWorkingEnvironment-UvFmWXoD",
"svmName": "svm_zivaws01we01",
"aggregateName": "aggr1",
"name": "zivaws01we01vol05Iscsi",
"size": {
"size": 100,
"unit": "GB"
},
"iscsiInfo": {
"igroups": ["zivIgroup1"],
"osName": "linux"
},
"snapshotPolicyName": "default",
"enableThinProvisioning": true,
"enableCompression": true,
"enableDeduplication": true,
"maxNumOfDisksApprovedToAdd": 0
}
- Output
-
None