< Back

Add-iBMCVolume

Tue Jan 14, 2020 2:42 am

NAME Add-iBMCVolume



SYNOPSIS

Create a new volume for a server.





SYNTAX

Add-iBMCVolume [-Session] <RedfishSession[]> [-StorageId] <String[]> [-RAIDLevel] {RAID0 | RAID1 | RAID5 | RAID6 |

RAID10 | RAID50 | RAID60} [-Drives] <Int32[][]> [[-CacheCade] <Boolean[]>] [[-VolumeName] <String[]>]

[[-StripSize] {Size64KB | Size128KB | Size256KB | Size512KB | Size1MB}] [[-CapacityMB] <Int32[]>]

[[-DefaultReadPolicy] {NoReadAhead | ReadAhead}] [[-DefaultWritePolicy] {WriteThrough | WriteBackWithBBU |

WriteBack}] [[-DefaultCachePolicy] {CachedIO | DirectIO}] [[-AccessPolicy] {ReadWrite | ReadOnly | Blocked}]

[[-DriveCachePolicy] {Unchanged | Enabled | Disabled}] [[-InitMode] {UnInit | QuickInit | FullInit}]

[[-SpanNumber] <Int32[]>] [<CommonParameters>]





DESCRIPTION

Create a new volume for a server.

This cmdlet works only after BIOS boot is complete when the RAID controller card supports out-of-band management

or after iBMA 2.0 has been installed and started.





PARAMETERS

-Session <RedfishSession[]>

iBMC redfish session object which is created by Connect-iBMC cmdlet.

A session object identifies an iBMC server to which this cmdlet will be executed.



Required? true

Position? 1

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-StorageId <String[]>

Indicates the identifier of the storage which the volume will be attached to.

The Id properties of "Get-iBMCRAIDControllers" cmdlet's return value represents Storage ID.



Required? true

Position? 2

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-RAIDLevel

Indicates the RAID level of volume.

Available Value Set: RAID0, RAID1, RAID5, RAID6, RAID10, RAID50, RAID60.



Notes:

- This parameter must be RAID0 or RAID1 when creating a CacheCade volume.

- You do not need to set this parameter when adding a volume to an existing drive group



Required? true

Position? 3

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-Drives <Int32[][]>

Indicates the member disk list.

example: $Drives = ,@(DriveID-1, DriveID-2, ..)



Notes:

- All the member disks must have the same type of interfaces and storage media.

- When adding a volume to an existing drive group, enter the ID of any drive of the drive group.

- The DriveID is represented by the Id properties of "Get-iBMCDrives" cmdlet's return value.

- The FirmwareStatus property of the drive should be "UnconfiguredGood".



Required? true

Position? 4

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-CacheCade <Boolean[]>

Indicates whether it is a CacheCade volume.

Support values are powershell boolean value: $true(1), $false(0).

- Set it to $true when creating a CacheCad volume.

- Set it to $false when the volume to be created is not a CacheCade volume



Required? false

Position? 5

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-VolumeName <String[]>

Indicates the Volume name.

It is a string of up to 15 bytes.

Value range: ASCII code corresponding to 0x20 to 0x7E.



Required? false

Position? 6

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-StripSize

Indicates the stripe size of volume.



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 7

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-CapacityMB <Int32[]>

Indicates the Capacity size of volume. The size unit is MB.



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 8

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-DefaultReadPolicy

Indicates the default read policy of the volume.

Available Value Set: NoReadAhead, ReadAhead.

- ReadAhead: The RAID controller pre-reads sequential data or the data predicted to be used and saves it in

the cache.

- NoReadAhead: disables the Read Ahead feature.



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 9

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-DefaultWritePolicy

Indicates the default write policy of the volume.

Available Value Set: WriteThrough, WriteBackWithBBU, WriteBack.

- WriteThrough: After the drive receives all data, the controller sends the host a message indicating that

data transmission is complete.

- WriteBackWithBBU: When no battery backup unit (BBU) is configured or the configured BBU is faulty, the RAID

controller automatically switches to the WriteThrough mode.

- WriteBack: After the controller cache receives all data, the controller sends the host a message indicating

that data transmission is complete.



NOTE: This parameter cannot be WriteBack when a CacheCade volume is created.



Required? false

Position? 10

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-DefaultCachePolicy

Indicates the default cache policy of the volume.

- CachedIO: All the read and write requests are processed by the cache of the RAID controller.

Select this value only when CacheCade 1.1 is configured.

- DirectIO: This value has different meanings in read and write scenarios.

* In read scenarios, data is directly read from physical drives.

(If Read Policy is set to Read Ahead, data read requests are processed by the cache of the RAID

controller.)

* In write scenarios, data write requests are processed by the cache of the RAID controller.

(If Write Policy is set to WriteThrough, data is directly written to physical drives.)



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 11

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-AccessPolicy

Indicates the volume access policy.

Available Value Set: ReadWrite, ReadOnly, Blocked.

- ReadWrite: Read and write operations are allowed.

- ReadOnly: It is read-only.

- Blocked: Access is denied.



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 12

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-DriveCachePolicy

Indicates the cache policy for member disks.

Available Value Set: Unchanged, Enabled, Disabled.

- Unchanged: uses the default cache policy.

- Enabled: writes data to the cache before writing data to the hard drive.

This option improves data write performance.

However, data will be lost if there is no protection mechanism against power failures.

- Disabled: writes data to a hard drive without caching the data.

Data is not lost if power failures occur.



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 13

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-InitMode

Indicates the volume initialization mode.

Available Value Set: UnInit, FullInit, CancelInit.

- UnInit: Initialization is not performed.

- QuickInit: writes zeros to the first and last 10 MB of the logical drive.

Then, the logical drive status changes to Optimal.

- FullInit: initializes the logical drive. Before the initialization is complete,

the logical drive status is initialization.



Note: This parameter is redundant when creating a CacheCade volume.



Required? false

Position? 14

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



-SpanNumber <Int32[]>

Indicates the number of spans of the volume.

- Set this parameter to 1 when creating a RAID0, RAID1, RAID5, or RAID6 array.

- Set this parameter to a value from 2 to 8 when creating a RAID10, RAID50, or RAID60 array.



NOTE: You do not need to set this parameter when creating a CacheCade volume or adding a volume to an existing

drive group.



Required? false

Position? 15

Default value

Accept pipeline input? true (ByValue, ByPropertyName)

Accept wildcard characters? false



<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,

ErrorAction, ErrorVariable, WarningAction, WarningVariable,

OutBuffer, PipelineVariable, and OutVariable. For more information, see

about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216).



INPUTS



OUTPUTS

PSObject[]

Returns the add volume task array if cmdlet executes successfully.

In case of an error or warning, exception will be returned.





-------------------------- EXAMPLE 1 --------------------------



PS C:\\>$credential = Get-Credential



PS C:\\> $Session = Connect-iBMC -Address 10.1.1.2 -Credential $credential -TrustCert

PS C:\\> $Drives = ,@(0, 1)

PS C:\\> $Volumes = Add-iBMCVolume -Session $session -StorageId RAIDStorage0 `

-CacheCade $false -RAIDLevel RAID1 -Drives $Drives



Host : 10.1.1.2

Id : 4

Name : volume creation task

ActivityName : [10.1.1.2] volume creation task

TaskState : Completed

StartTime : 2019-01-07T09:37:15+00:00

EndTime : 2019-01-07T09:37:29+00:00

TaskStatus : OK

TaskPercent :



This example show how to create a none CacheCade volume with only required options









-------------------------- EXAMPLE 2 --------------------------



PS C:\\>$credential = Get-Credential



PS C:\\> $Session = Connect-iBMC -Address 10.1.1.2 -Credential $credential -TrustCert

PS C:\\> $Drives = ,@(0, 1)

PS C:\\> $Volumes = Add-iBMCVolume -Session $session -StorageId RAIDStorage0 `

-CacheCade $false -RAIDLevel RAID1 -Drives $Drives `

-VolumeName Volume2 -StripSize Size1MB -CapacityMB 1048576 -DefaultCachePolicy DirectIO `

-AccessPolicy ReadWrite -InitMode QuickInit -SpanNumber 1 -DriveCachePolicy Unchanged `

-DefaultWritePolicy WriteBackWithBBU -DefaultReadPolicy NoReadAhead



Host : 10.1.1.2

Id : 4

Name : volume creation task

ActivityName : [10.1.1.2] volume creation task

TaskState : Completed

StartTime : 2019-01-07T09:37:15+00:00

EndTime : 2019-01-07T09:37:29+00:00

TaskStatus : OK

TaskPercent :



This example show how to create a none CacheCade volume with all options









-------------------------- EXAMPLE 3 --------------------------



PS C:\\>$credential = Get-Credential



PS C:\\> $Session = Connect-iBMC -Address 10.1.1.2 -Credential $credential -TrustCert

PS C:\\> $Drives = ,@(0, 1)

PS C:\\> $Volumes = Add-iBMCVolume -Session $session -StorageId RAIDStorage0 `

-CacheCade $true -RAIDLevel RAID1 -Drives $Drives -DefaultWritePolicy WriteBackWithBBU



Host : 10.1.1.2

Id : 4

Name : volume creation task

ActivityName : [10.1.1.2] volume creation task

TaskState : Completed

StartTime : 2019-01-07T09:37:15+00:00

EndTime : 2019-01-07T09:37:29+00:00

TaskStatus : OK

TaskPercent :



This example show how to create a CacheCade volume











RELATED LINKS

https://github.com/Huawei/Huawei-iBMC-Cmdlets



Get-iBMCVolume

Connect-iBMC

Disconnect-iBMC