Array Builder elements and associated rules

Different elements in the dialog have associated rules that define what actions can be performed on the various elements. These rules define what actions can or cannot be performed on the various elements, which in turn drive the activation or deactivation of the various controls and menu buttons on the dialog and also display warnings.

For example, if moving an array upward in the list will cause an invalid configuration, the Move Up control is disabled, or a warning dialog is displayed.

Controllers

Controllers icon Controller elements contain variable condition elements. Controllers can be one of several configuration types:
  • The embedded controller
  • A controller in slot “X”
  • Any controller with exactly “X” disks
  • Any controller with “X” disks or more
  • All remaining controllers

When launching Array Builder from a “Create configuration file” selection in the deployment action, a default controller is created.

When a controller is created, a default variable condition, array, and disks are created to ensure a valid configuration. You can choose to leave the controller unconfigured – with disks set to non-RAID, or you can add arrays or do other actions.

When a controller node is selected, the following controls are available:
New Controller
  • You can add as many controllers as you like, with the following restrictions:
    • You cannot have more than one “All remaining controllers” node. The selection for that type is disabled if one already exists.
    • You cannot have two identical controller configurations (two controllers that specify the same quantity of disks). If there were duplicates, the program would not know which configuration to pick and would never pick the second configuration. If you attempt to enter a duplicate configuration, a warning dialog appears.

      A controller that has the same number of disks as an existing controller is not allowed, even if the comparison ( “exactly” or “at least”) is different.

    • You cannot create a controller that matches zero (0) disks.
  • When adding a controller, you can optionally define a specific variable condition to create for the controller. When the controller is added, this variable condition is created in addition to the default “No variable conditions defined” condition.
Edit Controller
Changes the configuration of the controller to another type or modifies the number of associated disks. The same restrictions apply as in creating a new controller.
Delete Controller
Deleting a controller deletes all variable conditions, arrays and all disks contained within that controller.

Deleting the last controller causes a new default controller to be created in the display. You cannot have a configuration of zero (0) controllers.

New Variable Condition
Because the default variable condition (“No variable conditions defined”) was created when the controller was created, this selection creates a new variable with a specific definition and adds it to the controller configuration. The new variable condition is displayed above the default condition and cannot be moved below the default condition.
Move Up / Move Down
If there is only one controller, neither selection is enabled.

If there are two controllers, and the last one is the “All Remaining Controllers,” neither selection is enabled. If “All Remaining Controllers” exists, it is the default and must be last in the order.

If the “All Remaining Controllers” is listed, the controller above it does not have the “Move Down” selection enabled.

If the first controller in the list is selected, “Move Up” is not enabled.

If the last controller in the list is selected, “Move Down” is not enabled.

If any other controller is selected, both selections are enabled.

Variable Conditions

Variable Conditions icon To provide the ability to use the same hardware configuration in multiple logical configurations, variable evaluation is provided so that a different configuration for arrays and logical drives can be applied to different situations.

Variable condition elements contain arrays and global hot spares, and are available in two types:
  • No variables defined. This is the default configuration, inserted with every controller, and cannot be removed or moved from last in the order.
  • Variables defined. This is where any variable is compared to a value using one of the pre-defined operators.
When a variable node is selected, the following controls are available:
New Variable Condition
Displays the Variable Condition Configuration dialog where you can select the criteria for the condition. When a new variable condition is created, a default logical drive and set of disks is created. If the controller specifies the number of disks, that many disks are created. Otherwise, the “All remaining disks” node is used.
You can add as many variable conditions as you like, with the following restrictions:
  • You cannot have more than one default variable condition node. The selection for that type is disabled if one already exists.
  • You cannot have two identical variable conditions. If there are duplicates, the program does not know which configuration to pick and would never pick the second configuration. If you attempt to enter a duplicate configuration, a warning dialog appears.
Edit Variable Condition
Not enabled when the default variable condition is selected.

Displays the Variable Condition Configuration dialog where you can edit the criteria for the condition. The same restrictions apply as in creating a new variable condition.

Delete Variable Condition
Not enabled when the default variable condition is selected.

Deleting a variable condition deletes all arrays and all disks contained within that variable condition.

New Array
See Arrays (also known as disk groups) for details.
Move Up / Move Down
If there is only one variable, neither selection is enabled.

If there are two variables, and the last one is the default variable, neither selection is enabled. If the default variable exists, it is the default and must be last in the order.

If the default variable is listed, the variable above it does not have the “Move Down” selection enabled.

If the first variable in the list is selected, “Move Up” is not enabled

If the last variable in the list is selected, “Move Down” is not enabled.

If any other variable is selected, both selections are enabled.

Arrays (also known as disk groups)

Array icons Array nodes include both RAID arrays and non-RAID disk groups (indicated by “Non-RAID disks” and the different array icon). By default, a non-RAID disk group is created when a controller is created. If the controller configuration specifies a number of disks required, that many disks are added to the non-RAID group.

Arrays can be added, modified, or deleted depending on the controller configuration and number of disks available.

Array elements contain logical drives and physical disks.

When an array node is selected, the following controls are enabled:
New Array
  • Adds another array to the controller under the same variable condition. Adding an array also adds a default number of disks to meet the requirements of the array.

    For example, adding a RAID 5 array adds three disks automatically. You are not allowed to remove disks below the RAID requirement.

  • Some arrays (RAID 1 and RAID 10) require an even number of disks. In these instances, you are not allowed to create a situation where an odd number of disks exists.

    For example, if you add a disk to a two-disk RAID 1 set, the program adds another disk to ensure an even number. If you delete a disk, the program deletes a total of two disks. Status messages inform you of these actions as appropriate.

    Hot spares do not count in the total array disk numbers, so it is possible to have an odd number of disks appear under the array node.

  • If the controller defines an exact number of disks and you attempt to add an array, the program attempts to move disks from the Non-RAID disks set to the new array.

    If there are not enough disks in the non-RAID set, you cannot add the array.

Change Array
Arrays can be changed from one RAID type to another. For example, you can decide to configure the controller with a RAID 5 array instead of a RAID 1 array by simply changing the array type.

Changing the array results in an evaluation of disk requirements. If the array does not contain enough disks to meet the RAID requirement, the appropriate number of disks are added and you are notified of the action. If the new RAID level requires fewer disks, no disks are removed.

If the controller defines an exact number of disks and you attempt to change an array and the new array requires more disks than the existing array, the program attempts to move disks from the Non-RAID disks set to the new array. If there are not enough disks in the non-RAID set, you cannot change the array.

If you change an array to a type that requires an even number of disks, another disk is added or removed if necessary to meet that requirement.

Changing from one array type to the same array type is disabled on the menu.

Delete Array
You cannot delete the “Non-RAID disks” node.

Deleting an array results in deletion of all disks in that array, except where the controller defines an exact number of disks. That is, the program moves the array disks to the Non-RAID disks set.

New Logical Drive
Creates a new logical drive in addition to the default logical drive. See Logical Drives (also known as virtual disks) for more information.
New Disk
Adds one or more new disks to the array. You can add a single disk, multiple disks at once, a hot spare disk, a hot spare assigned to the last drive on the controller, or “all remaining disks.”

See Physical Disks (also known as array disks) for complete rules information.

If the controller defines an exact number of disks, the New Disk button is disabled.

If the array or the controller already contains an “all remaining disks” element, this choice is disabled on the New Disk menu.

Move Up / Move Down

If an array can be moved up or down on the controller, those menu selections are enabled.

Moving array controllers results in the following:
  • Array names (i.e. “A”, “B”, etc.) are modified so that the arrays are listed in alphabetical order.
  • Disks are renumbered so that disks are listed in order on the controller. This also helps you specify which disks are used in which array by re-ordering the arrays on the controller.

The “Non-RAID Disks” node is always listed last.

Logical Drives (also known as virtual disks)

logical drives icon Logical drives that are contained with arrays (or the Non-RAID disks node) are configured to a specific size (in GB) or to consume all available (or remaining) space in the array. By default, a single logical drive is created for all new arrays, and set to consume all available space.

When specific-size logical drives are defined, the “using all remaining space” logical drive consumes any leftover space after the other logical drives have allocated their space on the array.

When a logical drive node is selected, the following controls are enabled:
New Logical Drive
When you create a new logical drive, it is placed before the default “using all remaining space” logical drive (if it exists).
Edit Logical Drive
You can modify the settings of the currently-selected logical drive, including changing the allocated size, or changing it from maximum size to a specified size or vice versa.

If a logical drive using all remaining space already exists, you cannot change another logical drive to that type.

Delete Logical Drive
Removes the selected logical drive.

You cannot remove the last remaining logical drive.

Move Up /Move Down
If a logical drive can be moved up or down on the controller, those menu selections are enabled.

Moving logical drives will cause logical drive numbers to be modified so that the logical drives are listed in numerical order.

The “using all remaining space” node is always listed last.

Physical Disks (also known as array disks)

physical disks icon Disks are contained with arrays (or the Non-RAID disks node) and take several forms:

Standard disks
The basic, non-defined disk type that makes up the storage on arrays.
Hot spares
Disks that provide online redundancy in case a RAID disk fails, and are assigned to a specific array.
All remaining disks
You can define an array without specifying exactly how many disks are in it. A good example is when RAID 1 is set as the first two disks, and the rest (an unknown number between 1 and 6) can be utilized in the best manner possible. In this case, you would define the RAID 1 array, and then create a dynamic array containing the “All Remaining Disks” element.

If the controller configuration specifies a number of disks required, that many disks are added to the non-RAID group. If the controller specifies an exact quantity, disks cannot be added or removed from the controller – they can only be moved from array to array (or the non-RAID group).

If the controller specifies a minimum number of disks, you can add or remove disks. Removing disks beyond the lower limit of the controller configuration is not allowed.

Controls
When a disk node is selected, the following controls are enabled:
New Disk
Users can add as many new disks as they like to any configuration except where an exact number of disks is specified. In that case, the “New Disk” menu item is disabled.

If an “all remaining disks” element exists in the array or on the controller, that menu selection is disabled.

Change Disk
If changing a disk from one type to another invalidates an array or a controller configuration, you get a warning dialog and the change is not allowed.

Allowed changes include:

Changing from a standard disk to a hot spare (which reduces the number of disks in the array) – unless an “all remaining disks” is in the array

Changing from an “all remaining disks” to a standard disk or a hot spare (unless enough other standard disks exist in the array)

If an “all remaining disks” element exists in the array or on the controller, that menu selection is disabled.

Changing from one disk type to the same type is disabled on the menu.

Delete Disk
If deleting a disk invalidates an array or a controller configuration, you will get a warning dialog and the deletion is not allowed.

If you are deleting an “all remaining disks” node, and there are not enough disks left in the array, you must add disks before you can delete the “all remaining disks” node.

Move Up / Move Down
Only applicable if moving the hot spare disks among the standard disks.

Global Hot Spares

Global Hot Spares icon Global hot spares assign a failover disk across multiple arrays. This enables more efficiency in using disk resources, but also provides less protection in case of a multiple-disk failure.

Some manufacturers either do not support global hot spares or limit the number of global hot spares that you can assign. In these cases, this functionality is reduced or unavailable as appropriate.

When a global hot spare node is selected, the following controls are enabled:
New Disk > Global Hot Spare (all other disk types disabled)
Adds another global hot spare if additional disks are allowed.
Change Disk
Changing a disk from a global hot spare to another type displays a dialog to select the array where you wish to move the disk.
Delete Disk
If deleting a disk invalidates a controller configuration, a warning dialog is displayed and the deletion is not allowed.
Move Up / Move Down
Not applicable