Determining pdisk-group fault-tolerance

You can obtain a synopsis of the current layout for user and system data by running this command:

mmlsrecoverygroup RecoveryGroupName -L
The output of this command includes a synopsis for the following:
  • configuration data rebuild space
  • configuration data recovery group descriptor layout
  • configuration data system index layout
  • user data vdisk layout
Note: The actual and maximum pdisk-group fault-tolerance values are point-in-time calculations based on the available disk space and current disk hardware configuration. These values could change whenever a rebuild or rebalance operation occurs.
Here is some sample output:

config data         declustered array   VCD spares     actual rebuild spare space         remarks
------------------  ------------------  -------------  ---------------------------------  ----------------
rebuild space       da0                 2              1 enclosure                        limited by VCD spares

config data         max disk group fault tolerance     actual disk group fault tolerance  remarks
------------------  ---------------------------------  ---------------------------------  ----------------
rg descriptor       1 enclosure + 1 pdisk              1 enclosure + 1 pdisk
system index        2 enclosure                        1 enclosure                        limited by rebuild space

vdisk               max disk group fault tolerance     actual disk group fault tolerance  remarks
------------------  ---------------------------------  ---------------------------------  ----------------
rg00log             2 enclosure                        1 enclosure                        limited by rebuild space
rg00meta            3 enclosure                        1 enclosure                        limited by rebuild space
rg00data            1 enclosure                        1 enclosure
This sample output from the mmlsrecoverygroup RecoveryGroupName -L command includes:
  • a config data section with a rebuild space entry, which shows the available rebuild space that can be used to restore redundancy of the configuration data after disk failure
  • a config data section with:
    • an rg descriptor entry, which shows the recovery group descriptor layout
    • a system index entry, which shows the system index layout
  • a vdisk section, which shows a set of user-defined vdisk layouts.
This sample output lists the exact type of failure we would have survived in the actual disk group fault tolerance column:

 vdisk         max disk group fault tolerance  actual disk group fault tolerance  remarks
 ----------  ---------------------------------   ----------------------------  --------------
 .
 .
 .
 rg00data       1 enclosure                      1 enclosure
For the rg00data vdisk, the output shows that we could survive one enclosure failure in the actual disk group fault tolerance column.
Note that for some vdisks in the sample output, there is a difference in maximum versus actual disk group fault tolerance:

 vdisk       max disk group fault tolerance   actual disk group fault tolerance  remarks
 ----------  ------------------------------  ---------------------------------  ----------------
 .
 .
 .
 rg00meta   3 enclosure                     1 enclosure                        limited by rebuild space
 

This example indicates that even though the rg00meta vdisk has a layout that ensures its data is protected from three enclosure failures, as shown in the max disk group fault tolerance column, its actual disk group fault tolerance is one enclosure and it is being limited by rebuild space dependency. Effectively, the configuration data rebuild space is not sufficient and is limiting the disk group fault tolerance of its vdisk dependent.

In cases where the actual disk group fault tolerance is less than the maximum disk group fault tolerance, it is best to examine the dependency change that is shown in the remarks column. For this example, you would examine the rebuild space entry under the config data section:

 config data    declustered array   VCD spares     actual rebuild spare space      remarks
 -----------  ------------------  -------------  -----------------------------  ----------------
 rebuild space    da0               2              1 enclosure                  limited by VCD spares

This section indicates that we are being limited by the VCD spares. It is possible to increase the VCD spares and thus increase the actual rebuild spare space. If the rebuild space increases above 1 enclosure, it would no longer be the limiting dependency factor for the rg00meta vdisk. See Increasing VCD spares for more information.

Note that the initial allocation during vdisk creation and subsequent redistribution of strips of the redundancy code in the event of failure or disk group changes is a dynamic operation. As such, it must work within the space available to it during the operation. The goals of this operation are always to minimize unnecessary movement, while at the same time balancing fault tolerance for all user and configuration data. Because of the vagaries of available space during initial allocation versus redistribution and because of the wide possible range of vdisk redundancy codes within the system, an initial fault tolerance state might not be repeatable after disk group faults and rebuilds occur.

For more information about mmlsrecoverygroup command output, see mmlsrecoverygroup command.