To modify the capacity of the Everpure Cloud Dedicated array, you can use the array
cloud-capacity endpoint in CLI or REST. This will trigger a backend process that will update the Everpure Cloud Dedicated array capacity. The array capacity can be updated only to values defined by the capacity steps endpoint. When an existing capacity update request is in progress, any new request to update of the capacity will receive an error response. To be able to perform the Capacity Upgrade, the user must have the Array_admin policy associated.
For non-Everpure Cloud Dedicated arrays, this feature is not supported and requests will receive an error response.
Using CLI
The capacity upgrade can be achieved using the cloud-capacity endpoint.
purearray cloud-capacity --help
usage: purearray cloud-capacity [-h] {list,setattr}
{list,setattr}
list get current capacity or list supported capacities
setattr update the capacity
options:
-h, --help show this help message and exit
1. Check the status of the capacity update. It can be on of the following values:
- idle - default state, no update is in progress, updates are allowed
- expanding - update is in progress, further updates are not allowed
purearray cloud-capacity list
Output Example:
pureuser@cbspv2> purearray cloud-capacity list
Requested Capacity Current Capacity Status Details
47.75T 47.75T idle
2. List the available capacity point, the values are in RAW capacity in Bytes. You can map RAW to Usable capacity in the Capacity Points Section.
purearray cloud-capacity list --supported
Output Example (V20 i3en based Model):
pureuser@cbspv2> purearray cloud-capacity list --supported
Supported Capacity
47.75T
95.50T
3. Request a capacity upgrade, use the
setattr --requested-capacity flag. The <raw-capacity> attribute indicates the total RAW capacity the array will have after the expansion is complete.
purearray cloud-capacity setattr --requested-capacity <raw-capacity>
Output Example:
pureuser@cbspv2> purearray cloud-capacity setattr --requested-capacity 95.50T
Requested Capacity Current Capacity Status Details
95.50T 47.75T expanding
4. If you check the status of the capacity upgrade after requesting the capacity. You will be getting updates under Details.
pureuser@cbspv2> purearray cloud-capacity list
Requested Capacity Current Capacity Status Details
95.50T 47.75T expanding Capacity update in progress
Using REST API
The capacity upgrade can also be achieved using the cloud-capacity endpoint via REST.
1.
GET arrays/cloud-capacity
List Everpure Cloud Dedicated array capacity status, including the progress of the capacity update.
Example using cURL:
curl -X GET -H "Authorization: Bearer $TOKEN" https://my-array/api/2.29/arrays/cloud-capacity
Response:
{
"items": [
{
"id": "0f58952a-13e4-4182-b1dd-76914257a1f1",
"name": "PAWS-array",
"requested_capacity": 52499666960384,
"current_capacity": 52499666960384,
"status": "idle",
"detail": null
}
],
}
2.
GET /arrays/cloud-capacity/supported-steps List the available Everpure Cloud Dedicated capacity points
Example using cURL:
curl -X GET -H "Authorization: Bearer $TOKEN" https://my-array/api/2.29/arrays/cloud-capacity/supported-steps"
Response:
{
"items": [
{
"supported_capacity": 52499666960384,
},
{
"supported_capacity": 10995116277760,
},
...
],
}
3.
PATCH /arrays/cloud-capacity Update the (raw) requested capacity. Requested capacity indicates the total raw capacity the array will have after the expansion is complete.
Example using cURL:
curl -X PATCH -H "Authorization: Bearer $TOKEN" "https://my-array/api/2.29/arrays/cloud-capacity" -d "{ \"requested_capacity\": 10995116277760}"
Response:
{
"items": [
{
"id": "0f58952a-13e4-4182-b1dd-76914257a1f1",
"name": "my-array",
"requested_capacity": 52499666960384,
"current_capacity": 52499666960384,
"status": "idle",
"detail": null
}
],
}
GET Request (after triggering the capacity expansion)
{
"items": [
{
"requested_capacity": 21990232555520,
"current_capacity": 10995116277760,
"status": "expanding",
"detail": null
}
],
}