Update a storage pool specified by the UUID
PATCH /storage/pools/{uuid}
Introduced In: 9.11
Updates the storage pool specified by the UUID with the properties in the body. This request starts a job and returns a link to that job.
Related ONTAP commands
-
storage pool rename
-
storage pool reassign
-
storage pool add
Parameters
Name | Type | In | Required | Description |
---|---|---|---|---|
uuid |
string |
path |
True |
Storage pool UUID. |
simulate |
boolean |
query |
False |
When set to "true" in conjunction with a PATCH on "capacity.disk_count", the end point returns a simulated layout of the storage pool with the additional disks, without changing system state.
|
return_timeout |
integer |
query |
False |
The number of seconds to allow the call to execute before returning. When doing a POST, PATCH, or DELETE operation on a single record, the default is 0 seconds. This means that if an asynchronous operation is started, the server immediately returns HTTP code 202 (Accepted) along with a link to the job. If a non-zero value is specified for POST, PATCH, or DELETE operations, ONTAP waits that length of time to see if the job completes so it can return something other than 202.
|
Request Body
Name | Type | Description |
---|---|---|
_links |
||
capacity |
||
health |
Properties that outline shared storage pool health. |
|
name |
string |
Storage pool name. |
nodes |
array[node_reference] |
Nodes that can use this storage pool for their aggregates. |
storage_type |
string |
Storage type for the disks used to create the storage pool. |
uuid |
string |
Storage pool UUID. |
Example request
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"capacity": {
"disks": [
{
"disk": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "1.0.1"
},
"total_size": 0,
"usable_size": 0
}
],
"remaining": 0,
"spare_allocation_units": [
{
"available_size": 0,
"node": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "node1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
},
"size": 0,
"syncmirror_pool": "string"
}
],
"total": 0,
"used_allocation_units": [
{
"aggregate": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "aggr1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
},
"current_usage": 0,
"node": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "node1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}
}
]
},
"health": {
"state": "string",
"unhealthy_reason": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
},
"name": "string",
"nodes": [
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "node1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}
],
"storage_type": "string",
"uuid": "string"
}
Response
Status: 200, Ok
Name | Type | Description |
---|---|---|
job |
||
num_records |
integer |
Number of shared storage pools in the cluster. |
records |
array[storage_pool] |
Example response
{
"job": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"uuid": "string"
},
"num_records": 1,
"records": [
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"capacity": {
"disks": [
{
"disk": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "1.0.1"
},
"total_size": 0,
"usable_size": 0
}
],
"remaining": 0,
"spare_allocation_units": [
{
"available_size": 0,
"node": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "node1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
},
"size": 0,
"syncmirror_pool": "string"
}
],
"total": 0,
"used_allocation_units": [
{
"aggregate": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "aggr1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
},
"current_usage": 0,
"node": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "node1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}
}
]
},
"health": {
"state": "string",
"unhealthy_reason": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
},
"name": "string",
"nodes": [
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "node1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}
],
"storage_type": "string",
"uuid": "string"
}
]
}
Response
Status: 202, Accepted
Error
Status: Default
ONTAP Error Response Codes
Error Code | Description |
---|---|
11211658 |
Node does not have enough spare capacity. |
11211659 |
Valid allocation unit input is required. |
11211662 |
Specified node is not part of the storage pool. |
11211663 |
Failed to reassign available capacity in the storage pool. |
11211664 |
Could not fix the broken allocation unit for the storage pool. |
11212673 |
Could not grow one or more aggregates. |
11212679 |
Adding specified number of disks will expand storage pool beyond maximum supported disk limit. |
11212680 |
Incorrect node specified. |
11212681 |
0 is an invalid value for disk_count. |
11212682 |
Adding the specified number of disks will result in the storage pool reaching the maximum disk limit reserved for RAID-TEC use only. At this limit, the storage pool can only allocate capacity to aggregates containing RAID-TEC RAID groups. Existing aggregates containing RAID groups other than RAID-TEC will not automatically grow to the new capacity. |
11212683 |
Renaming storage pool to new name failed. |
11212763 |
Storage pool add job failed. |
11215657 |
Storage pool PATCH request have missing parameters. |
11215658 |
Storage pool PATCH request for reassign is invalid. |
11215659 |
Storage pool PATCH request for reassign have invalid allocation unit count. |
11215660 |
Storage pool PATCH request for reassign have invalid node name. |
11215662 |
Storage pool PATCH request have invalid disk count. |
Name | Type | Description |
---|---|---|
error |
Example error
{
"error": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
}
Definitions
See Definitions
href
Name | Type | Description |
---|---|---|
href |
string |
_links
Name | Type | Description |
---|---|---|
self |
disk
Reference to the constituent disk object.
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
storage_pool_disk
Name | Type | Description |
---|---|---|
disk |
Reference to the constituent disk object. |
|
total_size |
integer |
Raw capacity of the disk, in bytes. |
usable_size |
integer |
Usable capacity of this disk, in bytes. |
node
Specifies what node can use this set of allocation units.
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
|
uuid |
string |
storage_pool_spare_allocation_unit
Name | Type | Description |
---|---|---|
available_size |
integer |
The usable capacity of this set of allocation units. |
count |
integer |
The number of spare allocation units on this node. |
node |
Specifies what node can use this set of allocation units. |
|
size |
integer |
Size of each allocation unit. |
syncmirror_pool |
string |
The RAID SyncMirror Pool to which this allocation unit is assigned. |
aggregate
The aggregate that is using this cache capacity.
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
|
uuid |
string |
node
The node hosting the aggregate using this set of allocation units.
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
|
uuid |
string |
storage_pool_used_allocation_unit
Name | Type | Description |
---|---|---|
aggregate |
The aggregate that is using this cache capacity. |
|
count |
integer |
The number of allocation units used by this aggregate. |
current_usage |
integer |
The amount of cache space used by this aggregate. |
node |
The node hosting the aggregate using this set of allocation units. |
capacity
Name | Type | Description |
---|---|---|
disk_count |
integer |
The number of disks in the storage pool. |
disks |
array[storage_pool_disk] |
Properties of each disk used in the shared storage pool. |
remaining |
integer |
Remaining usable capacity in the flash pool, in bytes. |
spare_allocation_units |
Properties of spare allocation units. |
|
total |
integer |
Total size of the flash pool, in bytes. |
used_allocation_units |
Information about the storage pool allocation units participating in the cache tier of an aggregate. |
error_arguments
Name | Type | Description |
---|---|---|
code |
string |
Argument code |
message |
string |
Message argument |
error
Indicates why the storage pool is unhealthy. This property is not returned for healthy storage pools.
Name | Type | Description |
---|---|---|
arguments |
array[error_arguments] |
Message arguments |
code |
string |
Error code |
message |
string |
Error message |
target |
string |
The target parameter that caused the error. |
health
Properties that outline shared storage pool health.
Name | Type | Description |
---|---|---|
is_healthy |
boolean |
Indicates whether the storage pool is able to participate in provisioning operations. |
state |
string |
The state of the shared storage pool. |
unhealthy_reason |
Indicates why the storage pool is unhealthy. This property is not returned for healthy storage pools. |
node_reference
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
|
uuid |
string |
storage_pool
Name | Type | Description |
---|---|---|
_links |
||
capacity |
||
health |
Properties that outline shared storage pool health. |
|
name |
string |
Storage pool name. |
nodes |
array[node_reference] |
Nodes that can use this storage pool for their aggregates. |
storage_type |
string |
Storage type for the disks used to create the storage pool. |
uuid |
string |
Storage pool UUID. |
job_link
Name | Type | Description |
---|---|---|
_links |
||
uuid |
string |
The UUID of the asynchronous job that is triggered by a POST, PATCH, or DELETE operation. |
error
Name | Type | Description |
---|---|---|
arguments |
array[error_arguments] |
Message arguments |
code |
string |
Error code |
message |
string |
Error message |
target |
string |
The target parameter that caused the error. |