Create RAID volume (manual drive select)
The create volume command creates a new volume group and volume, and lets you specify the drives for the volume.
Supported Arrays
This command applies to an individual DE2000H, DE4000H, DE4000F, DE6000H, or DE6000F storage array.
Roles
To execute this command on an storage array, you must have the Storage Admin role.
Syntax
create volume drives=(trayID1,[drawerID1,]slotID1 ... trayIDn,[drawerIDn,]slotIDn)
[volumeGroupUserLabel="volumeGroupName"]
raidLevel=(0 | 1 | 3 | 5 | 6)
userLabel="volumeName"
[capacity=volumeCapacity]
[owner=(a|b)]
[cacheReadPrefetch=(TRUE | FALSE)]
[segmentSize=segmentSizeValue]
[usageHint=(fileSystem | dataBase | multiMedia)]
[trayLossProtect=(TRUE | FALSE)]
[drawerLossProtect=(TRUE | FALSE)]
[dssPreAllocate=(TRUE | FALSE)]
[securityType=(none | capable | enabled )]
[dataAssurance=(none | enabled)]
Parameters
Parameter | Description |
---|---|
drives | The drives that you want to assign to the volume that you want to create. For high-capacity drive trays, specify the tray ID value, the drawer ID value, and the slot ID value for the drive. For low-capacity drive trays, specify the tray ID value and the slot ID value for the drive. Tray ID values are 0 to 99 . Drawer ID values are 1 to 5 . All slot ID maximums are 24. Slot ID values either begin at 0 or 1, depending on the tray model. Drive trays compatible with DE2000H, DE4000H, DE4000F, DE6000H, and DE6000F controllers have slot ID numbers starting at 0. Enclose the tray ID value, the drawer ID value, and the slot ID value in square brackets ([ ]). |
volumeGroupUserLabel | The name that you want to give the new volume group. Enclose the volume group name in double quotation marks (" "). Note If you do not specify a user label for the volume group, the controller firmware assigns it a number. |
raidLevel | The RAID level of the volume group that contains the volume. Valid values are 0 , 1 , 3 , 5 , or 6 . |
userLabel | The name that you want to give the new volume. Enclose the new volume name in double quotation marks (" "). Note This parameter is required. |
capacity | The size of the volume that you are adding to the storage array. Size is defined in units of bytes , KB , MB , GB , or TB . |
owner | The controller that owns the volume. Valid controller identifiers are a or b , where a is the controller in slot A , and b is the controller in slot B . If you do not specify an owner, the controller firmware determines the owner. |
cacheReadPrefetch | The setting to turn on or turn off cache read prefetch. To turn off cache read prefetch, set this parameter to FALSE . To turn on cache read prefetch, set this parameter to TRUE . |
segmentSize | The amount of data (in KB) that the controller writes on a single drive in a volume before writing data on the next drive. Valid values are 4 (SSD only) 8 , 16 , 32 , 64 , 128 , 256 , or 512 . |
usageHint | The settings for both the cacheReadPrefetch parameter and the segmentSize parameter to be default values. The default values are based on the typical I/O usage pattern of the application that is using the volume. Valid values are fileSystem , dataBase , or multiMedia . |
trayLossProtect | The setting to enforce tray loss protection when you create the repository. To enforce tray loss protection, set this parameter to TRUE . The default value is FALSE . |
drawerLossProtect | The setting to enforce drawer loss protection when you create the mirrored repository volume. To enforce drawer loss protection, set this parameter to TRUE . The default value is FALSE . |
dssPreAllocate | The setting to make sure that reserve capacity is allocated for future segment size increases. This default value is TRUE . |
securityType | The setting to specify the security level when creating the volume groups and all associated volumes. These settings are valid:
|
Notes
The drives parameter supports both high-capacity drive trays and low-capacity drive trays. A high-capacity drive tray has drawers that hold the drives. The drawers slide out of the drive tray to provide access to the drives. A low-capacity drive tray does not have drawers. For a high-capacity drive tray, you must specify the identifier (ID) of the drive tray, the ID of the drawer, and the ID of the slot in which a drive resides. For a low-capacity drive tray, you need only specify the ID of the drive tray and the ID of the slot in which a drive resides. For a low-capacity drive tray, an alternative method for identifying a location for a drive is to specify the ID of the drive tray, set the ID of the drawer to 0 , and specify the ID of the slot in which a drive resides.
If you set the raidLevel parameter to RAID level 1:
There are an even number of drives in the group, by RAID 1 definition
The first half of the group, in listed order (and in stripe order), are primary drives
The second half of the group, in listed order (and in stripe order), are the corresponding mirror drives
You can use any combination of alphanumeric characters, underscore (_), hyphen (-), and pound (#) for the names. Names can have a maximum of 30 characters.
The owner parameter defines which controller owns the volume. The preferred controller ownership of a volume is the controller that currently owns the volume group.
If you do not specify a capacity using the capacity parameter, all of the drive capacity that is available in the volume group is used. If you do not specify capacity units, bytes is used as the default value.
Tray loss protection and drawer loss protection
For tray loss protection to work, your configuration must adhere to the following guidelines:
Level | Criteria for Shelf Loss Protection | Minimum number of shelves required |
---|---|---|
Pool | The pool contains no more than two drives in a single shelf. | 6 |
RAID 6 | The volume group contains no more than two drives in a single shelf. | 3 |
RAID 3 or RAID 5 | Each drive in the volume group is located in a separate shelf. | 3 |
RAID 1 | Each drive in a RAID 1 pair must be located in a separate shelf. | 2 |
RAID 0 | Cannot achieve Shelf Loss Protection. | Not applicable |
For drawer loss protection to work (in high density enclosure environments), your configuration must adhere to the following guidelines:
Level | Criteria for drawer loss protection | Minimum number of drawers required |
---|---|---|
Pool | The pool includes drives from all five drawers and there are an equal number of drives in each drawer. A 60-drive shelf can achieve Drawer Loss Protection when the pool contains 15, 20, 25, 30, 35, 40, 45, 50, 55, or 60 drives. | 5 |
RAID 6 | The volume group contains no more than two drives in a single drawer. | 3 |
RAID 3 or RAID 5 | Each drive in the volume group is located in a separate drawer. | 3 |
RAID 1 | Each drive in a mirrored pair must be located in a separate drawer. | 2 |
RAID 0 | Cannot achieve Drawer Loss Protection. | Not applicable |
Segment size
The size of a segment determines how many data blocks that the controller writes on a single drive in a volume before writing data on the next drive. Each data block stores 512 bytes of data. A data block is the smallest unit of storage. The size of a segment determines how many data blocks that it contains. For example, an 8-KB segment holds 16 data blocks. A 64-KB segment holds 128 data blocks.
When you enter a value for the segment size, the value is checked against the supported values that are provided by the controller at run time. If the value that you entered is not valid, the controller returns a list of valid values. Using a single drive for a single request leaves other drives available to simultaneously service other requests. If the volume is in an environment where a single user is transferring large units of data (such as multimedia), performance is maximized when a single data transfer request is serviced with a single data stripe. (A data stripe is the segment size that is multiplied by the number of drives in the volume group that are used for data transfers.) In this case, multiple drives are used for the same request, but each drive is accessed only once.
For optimal performance in a multiuser database or file system storage environment, set your segment size to minimize the number of drives that are required to satisfy a data transfer request.
Usage Hint
Usage hint | Segment size setting | Dynamic cache read prefetch setting |
---|---|---|
File system | 128 KB | Enabled |
Database | 128 KB | Enabled |
Multimedia | 256 KB | Enabled |
Cache read prefetch
Cache read prefetch lets the controller copy additional data blocks into cache while the controller reads and copies data blocks that are requested by the host from the drive into cache. This action increases the chance that a future request for data can be fulfilled from cache. Cache read prefetch is important for multimedia applications that use sequential data transfers. Valid values for the cacheReadPrefetch parameter are TRUE or FALSE . The default is TRUE .
You do not need to enter a value for the cacheReadPrefetch parameter or the segmentSize parameter. If you do not enter a value, the controller firmware uses the usageHint parameter with fileSystem as the default value. Entering a value for the usageHint parameter and a value for the cacheReadPrefetch parameter or a value for the segmentSize parameter does not cause an error. The value that you enter for the cacheReadPrefetch parameter or the segmentSize parameter takes priority over the value for the usageHint parameter.
Security type
Use the securityType parameter to specify the security settings for the storage array.
Before you can set the securityType parameter to enabled , you must create a storage array security key. Use the create storageArray securityKey command to create a storage array security key. These commands are related to the security key:
- create storageArray securityKey
- export storageArray securityKey
- import storageArray securityKey
- set storageArray securityKey
- enable volumeGroup [volumeGroupName] security
- enable diskPool [diskPoolName] security