Adding new disks in the declustered array of the recovery group

This topic describes the procedure for adding new disks in declustered array of recovery group. The newly added disks must meet the IBM Storage Scale Erasure Code Edition hardware requirements and considerations.

For more information, see Planning for recovery group space and scale up.

Note: Any new hardware (especially disks) used for below section must be tested before put into production to make sure the hardware quality.
Note: The following steps show the process of adding one disk per node in the recovery group. It is recommended to add at least two disks per node each time.

Use the following steps to add new disks in the declustered array of the recovery group.

  1. Verify the current disk topology of the server by running the following command:
    # mmvdisk server list --nc nc_1 --disk-topology

    The system displays the following output:

     node                                       needs    matching
    number  server                            attention   metric   disk topology
    ------  --------------------------------  ---------  --------  -------------
         5  node5.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 2 HDD
         1  node1.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 2 HDD
         2  node2.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 2 HDD
         3  node3.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 2 HDD
         4  node4.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 2 HDD
  2. Check the details of the declustered array that needs to be expanded.

    In the following example, DA2 is the declustering array (DA) that would be expanded. DA2 currently has 10 disks.

    # mmvdisk rg list --da

    The system displays the following output:

                    declustered   needs                       capacity             pdisks
    recovery group     array     service  type  trim  total raw free raw free%  total spare  background task
    --------------  -----------  -------  ----  ----  --------- -------- -----  ----- -----  ---------------
    rg_1            DA1          no       NVMe  yes    7095 GiB  725 GiB   10%     10     2  scrub (41%)
    rg_1            DA2          no       HDD   no     4414 GiB  459 GiB   10%     10     2  scrub (41%)
    rg_1            DA3          no       SSD   no     7866 GiB  796 GiB   10%     20     2  scrub (39%)
    
    mmvdisk: Total capacity is the raw space before any vdisk set definitions.
    mmvdisk: Free capacity is what remains for additional vdisk set definitions.
  3. Insert new disks into the slots on each server.
    # mmvdisk server list --nc nc_1 --disk-topology

    The system displays the following output:

     node                                       needs    matching
    number  server                            attention   metric   disk topology
    ------  --------------------------------  ---------  --------  -------------
         5  node5.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 3 HDD
         1  node1.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 3 HDD
         2  node2.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 3 HDD
         3  node3.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 3 HDD
         4  node4.ibm.com                     no          100/100  ECE 6 SSD/NVMe and 3 HDD
  4. Verify that the slot location of the newly inserted disks is correct. For more information, see Mapping NVMe disk slot location and Mapping LMR disk location.
  5. Add new disks in the declustered array by running the following command:
    # mmvdisk rg resize --rg rg_1
    mmvdisk: Obtaining pdisk information for recovery group 'rg_1'.
    mmvdisk: Analyzing disk topology for node 'c72f4m5u19-ib0'.
    mmvdisk: Analyzing disk topology for node 'c72f4m5u13-ib0'.
    mmvdisk: Analyzing disk topology for node 'c72f4m5u21-ib0'.
    mmvdisk: Analyzing disk topology for node 'c72f4m5u17-ib0'.
    mmvdisk: Analyzing disk topology for node 'c72f4m5u11-ib0'.
    mmvdisk: Validating existing pdisk locations for recovery group 'rg_1'.
    mmvdisk: The resized server disk topology is 'ECE 6 SSD/NVMe and 3 HDD'.
    mmvdisk: Validating declustered arrays for recovery group 'rg_1'.
    mmvdisk: Adding new pdisks to recovery group 'rg_1'.
    mmvdisk: Updating declustered array attributes for recovery group 'rg_1'.
    mmvdisk: Successfully resized recovery group 'rg_1'.
  6. Check the declustered array information.

    In this example, DA2 has 15 disks now.

    # mmvdisk rg list --da

    The system displays the following output:

                    declustered   needs                       capacity             pdisks
    recovery group     array     service  type  trim  total raw free raw free%  total spare  background task
    --------------  -----------  -------  ----  ----  --------- -------- -----  ----- -----  ---------------
    rg_1            DA1          no       NVMe  yes    7095 GiB  725 GiB   10%     10     2  scrub (46%)
    rg_1            DA2          no       HDD   no     7174 GiB 3219 GiB   44%     15     2  scrub (46%)
    rg_1            DA3          no       SSD   no     7866 GiB  796 GiB   10%     20     2  scrub (45%)
    
    mmvdisk: Total capacity is the raw space before any vdisk set definitions.
    mmvdisk: Free capacity is what remains for additional vdisk set definitions.
  7. Use mmvdisk command to create vdisks and NSDs as required.

    For more information on the management of the recovery groups, see the topic Recovery group management in the IBM Storage Scale RAID: Administration and Programming Reference Guide.