Expanding volumes

Virtual Storage Platform One SDS Block Storage Administrator Guide

Version
1.17.x
Audience
anonymous
Part Number
MK-24VSP1SDS002-04

You can only expand a nomal volume whose status is "Normal" or "ExpansionFailed", and "volumeType" is "Normal."

  • If you expand a volume whose "status" is "Normal", the volume is expanded by the capacity specified in the parameter "additionalCapacity."

  • If you expand a volume whose status is "ExpansionFailed", the volume expansion is performed again.

Note:
  • Snapshot volumes cannot be expanded. To expand volumes whose volumeType is "Snapshot" and whose snapshotAttribute is "P-VOL", delete all the snapshot volumes created from the applicable volumes. Volumes whose volumeType is "Snapshot" and whose snapshotAttribute is "P/S-VOL" or "S-VOL" cannot be expanded.

  • Volumes whose universalReplicatorAttribute is "P-VOL" or "S-VOL" cannot be expanded. To expand volumes whose universalReplicatorAttribute is "P-VOL" or "S-VOL", perform Universal Replicator pair split, volume expansion, and Universal Replicator pair resynchronization in sequence.

  • Volumes whose volumeType is "Journal" cannot be expanded. To expand volumes whose volumeType is "Journal", add a volume that has required capacity as a reserve journal volume, and then replace the journal volume with the reserve journal volume.

  • Volumes whose volumeType is "FormerJournal" cannot be expanded.

In a command for expanding volumes, specify the capacity to be expanded in units of MiB for "additionalCapacity." However, the expanded capacity must also have additional management area. Therefore, the upper limit value that can be specified for "additionalCapacity" is logicalLimit minus the capacity for additional management area.

The upper limit value that can be specified for "additionalCapacity" = logicalLimit [MiB] – ((168 [MiB] × n) + 42 [MiB])

  • n = Logical capacity of a volume to be added to the expanded volume [MiB] / 3,145,548 [MiB] (A decimal is rounded up to the nearest integer.)

  • To verify the value of logicalLimit, run either of the following commands.

    REST API: GET /v1/objects/storage-controllers

    CLI: storage_controller_list

CAUTION:
  • If the event log KARS06170-C is issued and no actions are taken, verify to take actions for KARS06170-C before the operations on the volume.
  • Volume capacity is managed in units of 42 MiB. Accordingly, even if the value of logicalLimit is 0, unused capacity might exist. In this case, volume capacity can be expanded to the upper limit of the management unit (a maximum of 41 MiB) in some cases.
  • If expansion of a volume causes it to become over-provisioned, write I/Os for the capacity equal to or more than allocatableCapacity [MiB] of the storage controller that manages the volume become unavailable.

    Also, if a capacity is depleted while a single volume is over-provisioned, drive addition becomes necessary. See Adding drives to add storage pool capacity.

  • Required role: Storage

  • When expanding volumes in a VPS: Scope of the VPS

  1. When expanding volumes in a VPS, verify the VPS ID and conditions set for the VPS (upper limit for volume capacity and upper limit for a single volume capacity).

    If you want to specify a VPS by its name in the CLI, verify the VPS name.

    REST API: GET /v1/objects/virtual-private-storages

    CLI: vps_list

  2. Check the ID of the volume you want to extend.

    If you use the CLI to specify a volume by name, check the name of the volume.

    It also checks the status and volumeType of the volume to expand the capacity of the volume.

    REST API: GET /v1/objects/volumes

    CLI: volume_list

    When "status" of the volume to be expanded is "Normal" or "ExpansionFailed", and "volumeType" is "Normal", go to the next step.

  3. Expand the volume capacity.

    Run one of the following commands with the capacity to be added to the volume specified for additionalCapacity. Run the command with a value specified if the status of the volume is "Normal", or with no value specified if the status is "ExpansionFailed."

    Run either of the following commands with the volume ID specified.

    If you use the CLI, you can specify a name instead of the ID of the volume.

    REST API: POST /v1/objects/volumes/<id>/actions/expand/invoke

    CLI: volume_expand

    Verify the job ID which is displayed after the command is run.

  4. Verify the state of the job.

    Run either of the following commands with the job ID specified.

    REST API: GET /v1/objects/jobs/<jobId>

    CLI: job_show

    If the job state is "Succeeded", the job is completed.

  5. Obtain volume information to verify that the volume capacity is expanded.

    Run either of the following commands with the volume ID specified.

    If you use the CLI, you can specify the name of the volume instead of its ID.

    REST API: GET /v1/objects/volumes/<id>

    CLI: volume_show

  6. (Bare metal) Back up the configuration information.

    Perform this step by referring to Backing up the configuration information (Bare metal).

    If you continue operations with other procedures, you must back up the configuration information after you have completed all operations.