Skip to main content

raid command

Use the raid command to create, clear, and save the RAID configuration, check the drive information, convert the JBOD drives to the unconfigured good drives, and convert the unconfigured good drives to the JBOD drives.

Note
  • It is risky to change the RAID configuration because all data on the disk might not be available.

  • From V2.4.0, OneCLI supports the RAID configuration on M.2 SSD with the matching XCC level. The RAID configuration on M.2 SSD supports the following commands: add, clear, save, and show.

  • From V2.5.0, OneCLI supports Software Raid configuration with Intel RSTe Software on Linux. The Software Raid configuration with Intel RSTe Software supports the following commands: show, add, and clear.

  • From V2.8.0, OneCLI supports Broadcom RAID configuration with storcli utility on Windows and Linux. The Broadcom RAID configuration supports the following commands: show, add, save, clear, makegood, and makejbod.

  • From V3.0.0, OneCLI supports M.2 controller RAID configuration in the in-band mode on Windows and Linux. The M.2 controller RAID configuration supports the following commands: show, add, save, and clear.

  • From V3.5.1, OneCLI supports Broadcom RAID/Microchip RAID configuration through out-of-band mode for the ThinkServer servers.

Table 1. raid commands
CommandDescription
add

Create RAID configuration.

For more information, refer to add command.

addhsp

Assign the drive as hot spare.

For more information, refer to addhsp command.

changemode

Change the connector mode for Microchip RAID adapter.

For more information, refer to changemode command.

clear

Clear RAID configuration.

For more information, refer to clear command.

fwdeviceorder

Enable or disable the firmware device ordering feature of the RAID adapter.

For more information, refer to fwdeviceorder command.

init

Quickly initialize volumes.

For more information, refer to init command.

makegood

Convert the JBOD drives to the unconfigured good drives.

For more information, refer to makegood command.

makejbod

Convert the unconfigured good drives to the JBOD drives.

For more information, refer to makejbod command.

rmhsp

Remove the hot spare.

For more information, refer to rmhsp command.

save

Save RAID configuration.

For more information, refer to save command.

show

Show controller and drive information.

For more information, refer to show command.

Template policy file

The following is the template policy file for Hardware Raid configuration. For the latest template policy file, refer to RAID_HW_new.ini in OneCLI binary.

# Sample template to create hardware RAID configuration using --ctrl parameter.
#
# Change History
# 2022-07-01: Initial version.
# 2024-05-09: volume_size parameter supports "all".
# 2024-05-20: Add "RAID 5350 series controller only supports Off" for write_policy.
# 2024-07-05: change RAID policy name following redfish standard.
# 2024-08-05: Add detailed description of strip_size.
#
# USAGE NOTE
# Broadcom and Marvell controller RAID can be remotely created and configured by OneCLI running in the local
# via out-of-band mode.
# Broadcom, Microchip and Marvell controller RAID can be created and configured by OneCLI running in the local
# via inband mode.
# One or more volumes can be created in Broadcom and Microchip controller RAID, but only one volume can be
# created in Marvell controller RAID.
#
# Note:
# 1. Broadcom 5xx series cards do not have cache, so the cache related settings are not applicable, such as
# Read Policy, Write Policy and I/O Policy.
#
#
# To use this sample, uncomment and edit a block of example based on your needs.

# EXAMPLE
# Create one simple RAID1 volume for Broadcom controller RAID, one simple RAID1 volume for Microchip controller
# RAID and one simple RAID0 volume for Marvell controller RAID.
# For Broadcom controller RAID, create one RAID1 volume which consumes 200GB.
# For Microchip controller RAID, create one RAID1 volume which consumes 300GB.
# For Marvell controller RAID, create one RAID0 volume that consumes all volume capacity.
# For controller RAID on ThinkServer/WenTian, create one RAID0 volume that consumes 446GB.

# This is for Broadcom controller
# [ctrl1-vol0]
# disks=0,1
# hot_spares=2
# raid_level=1
# vol_name=volume0
# write_policy=0
# read_policy=0
# io_policy=0
# access_policy=0
# cache_policy=0
# volume_size=200GB
# strip_size=64K
# [ctrl1]
# global_hot_spares=3
#
# This is for Microchip controller
# [ctrl2-vol1]
# disks=3,4
# hot_spares=5
# raid_level=1
# vol_name=volume1
# write_policy=3
# read_policy=0
# volume_size=300GB
# strip_size=128K
#
# This is for Marvell controller
# [ctrl3]
# raid_level=0
# vol_name=m2vol
# strip_size=64K
#
# This is for Broadcom controller on ThinkServer/WenTian
# [ctrl4-vol0]
# disks=6
# raid_level=0
# vol_name=EEE
# write_policy=0
# read_policy=0
# access_policy=0
# cache_policy=0
# volume_size=446GB
# strip_size=256K
# initialization=0

# SYNTAX EXPLANATION
#
# disks
# In out-of-band mode:
# [Broadcom] [Required] Specify drive(s) index separated by ",", supporting ”rest”(case insensitive).
# Specify span(s) index separated by ":"when RAID level is 1E, 10, 50, 60 or 00.(For example, 0,1:2,3)
# [Microchip] [Required] Specify drive(s) index separated by ",". Specify span(s) index separated by ":"
# when RAID level is 10, 50, 60 or 00.(For example, 0,1:2,3)
# [Marvell] [Unsupported]
# [ThinkServer/WenTian] [Required] The same as Broadcom oob way except not supporting ”rest”.
#
# In inband mode:
# [Broadcom] [Required] The same as Broadcom oob way except not supporting ”rest”.
# [Microchip] [Required] Specify drive(s) index separated by ",".
# [Marvell] [Unsupported]
#
# [Format] disks=0,1
#
# hot_spares
# Drive group for hot spare. Specify drive(s) index separated by ",".
# In out-of-band mode:
# [Broadcom] [Optional]
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
# [ThinkServer/WenTian] [Unsupported]
#
# In inband mode:
# [Broadcom] [Optional]
# [Microchip] [Optional]
# [Marvell] [Unsupported]
#
# [Format] hot_spares=2,3
#
# raid_level
# [Required]
# In out-of-band mode:
# [Broadcom] Values: 0, 1, 5, 1E, 6, 10, 50, 60, 00.
# [Microchip] Values: 0, 1, 5, 1E, 6, 10, 50, 60, 00, 1triple, 10triple.
# [Marvell] Values: 0, 1.
# [ThinkServer/WenTian] Values: 0, 1, 5, 1E, 6, 10, 50, 60, 00 and so on.
#
# In inband mode:
# [Broadcom] Values: The same as Broadcom oob way.
# [Microchip] Values: 0, 1, 5, 1E, 6, 10, 50, 60, 00, 1triple, 10triple.
# [Marvell] Values: The same as Marvell oob way.
#
# [Format] raid_level=1
#
# vol_name
# [Required] Allowed characters: A-Z, a-z, 0-9, -(dash), .(period), and _(underscore).
# Marvell NVMe RAID: vol_name is unapplicable.
# [ThinkServer/WenTian] [Optional]
# [Format] vol_name=volume1
#
# write_policy
# Cache write policy
# In out-of-band mode:
# [Broadcom] [Optional] Values: 0-Write Through, 1-Unprotected Write Back, 2-Protected Write Back. Default value 0.
# [Microchip] [Optional] Values: 1-Unprotected Write Back, 2-Protected Write Back, 3-Off. Default value 3. RAID 5350 series controller only supports Off.
# [Marvell] [Unsupported]
# [Broadcom on ThinkServer/WenTian] [Optional] Values: 0-Write Through, 1-Unprotected Write Back. Default value 0.
# [Microchip on ThinkServer/WenTian] [Unsupported]
#
# In inband mode:
# [Broadcom] [Optional] The same as Broadcom oob way.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
#
# [Format] write_policy=0
#
# read_policy
# Cache read policy.
# In out-of-band mode:
# [Broadcom] [Optional] In System X, values: 0-Off, 1-Read Ahead, 2-Adaptive Read Ahead. Default value 0.
# In ThinkSystem, values: values: 0-Off, 1-Read Ahead. Default value 0.
# [Microchip] [Optional] Values: 0-Off, 1-Read Ahead. Default value 0.
# [Marvell] [Unsupported]
# [Broadcom on ThinkServer/WenTian] [Optional] Values: 0-Off, 1-Read Ahead. Default value 0.
# [Microchip on ThinkServer/WenTian] [Unsupported]
#
# In inband mode:
# [Broadcom] [Optional] The same as Broadcom oob way.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
#
# [Format] read_policy=0
#
# io_policy
# In out-of-band mode:
# [Broadcom] [Optional] Cache IO policy. Values: 0-Direct, 1-Cached. Default value 0.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
# [ThinkServer/WenTian] [Unsupported]
#
# In inband mode:
# [Broadcom] [Optional] The same as Broadcom oob way.
# [Microchip] [Optional] Acceleration Method. values: 0-None, 1-Controller Cache, 2-SsdIOBypass.
# [Marvell] [Unsupported]
#
# [Format] io_policy=0
#
# access_policy
# Access policy.
# In out-of-band mode:
# [Broadcom] [Optional] Values: 0-Read Write, 2-Read Only, 3-Blocked. Default value 0.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
# [ThinkServer/WenTian] [Optional] The same as Broadcom oob way.
#
# In inband mode:
# [Broadcom] [Optional] The same as Broadcom oob way.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
#
# [Format] access_policy=0
#
# cache_policy
# Disk cache policy.
# In out-of-band mode:
# [Broadcom] [Optional] 0-Unchanged, 1-Enable, 2-Disable. Default value 0.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
# [ThinkServer/WenTian] [Optional] The same as Broadcom oob way.
#
# In inband mode:
# [Broadcom] [Optional] The same as Broadcom oob way.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
#
# [Format] cache_policy=1
#
# volume_size
# New volume size. Unit: MB/GB. Specify all will use all remaining space by default.
# In out-of-band mode:
# [Broadcom] [Required] Support percentage and all.
# [Microchip] [Required] Support all.
# [Marvell] [Unsupported]
# [Marvell on ThinkServer/WenTian] [Unsupported] Marvell will use all space by default.
# [Broadcom/Mircochip on ThinkServer/WenTian] [Required] Support all.
#
# In inband mode:
# [Broadcom] [Required] Support all.
# [Microchip] [Required] Support all.
# [Marvell] [Unsupported]
#
# [Format] volume_size=50%
# volume_size=500GB
# volume_size=all
#
# strip_size
# Strip Size. Unit: K. Refer to specifications of related RAID controllers.
# In out-of-band mode:
# [Broadcom] [Optional] Values: 8K, 16K, 32K, 64K, 128K and so on. Default value 128K.
# RAID 530, 540, 545 and B540 series controllers only support 64K.
# RAID 930 and 940 series controllers support 64K, 128K, 256K, 512K and 1024K.
# [Microchip] [Optional] Values: 16K, 32K, 64K, 128K, 256K, 512K and 1024K. Default value 128K.
# [Marvell] [Required] Values: 32K, 64K, 128K, 256K, 512K.
# [ThinkServer] [Required] Values: 64K, 128K, 256K, 512K, 1024K.
#
# In inband mode:
# [Broadcom] [Optional] The same as Broadcom oob way.
# [Microchip] [Optional] The same as Microchip oob way.
# [Marvell] [Required] The same as Marvell oob way.
#
# [Format] strip_size=64K
#
# initialization
# Initialization for this volume.
# In out-of-band mode:
# [Broadcom] [Optional] 0-No, 1-Fast, 2-Full. Default value 0.
# To run full initialization on System x servers use IMM or UEFI, on ThinkSystem servers
# use XCC or LXPM, or use the vendor provided RAID setup utility tool in both cases.
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
# [Broadcom on ThinkServer/WenTian] [Optional] Values: 0-No initialization, 1-Quick initialization, 2-Full initialization.
# Default value 0.
# [Microchip on ThinkServer/WenTian] [Unsupported]
#
# In inband mode:
# [Broadcom] [Unsupported]
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
#
# [Format] initialization=0
#
# global_hot_spares
# Drive group for global hot spare. Specify drive(s) index separated by ",".
# In out-of-band mode:
# [Broadcom] [Optional]
# [Microchip] [Unsupported]
# [Marvell] [Unsupported]
# [ThinkServer] [Unsupported]
#
# In inband mode:
# [Broadcom] [Optional]
# [Microchip] [Optional]
# [Marvell] [Unsupported]
#
# [Format] global_hot_spares=2
#
# END OF FILE

The following is the template policy file for Software Raid configuration. For the latest template policy file, refer to RAID_SW_new.ini in OneCLI windows binary.

# Sample template to configure RAID volumes with Intel RSTe Software RAID and Intel(R) virtual RAID using 
# --ctrl parameter.
#
# Change History
# 2022-07-01: Initial version.
# 2024-05-09: volume_size parameter supports "all".
#
# Intel VROC and Intel Rapid Storage Technology Enterprise (Intel RSTe) were previously related products in
# the same product family.
# The SATA RAID portion of the product family was called Intel RSTe and the NVMe RAID portion was called Intel VROC.
# However, starting in Q1 2019, with the launch of Intel VROC 6.0, the Intel RSTe name was removed, and all RAID
# solutions in this product
# family were branded as Intel VROC. The SATA functionality remains, but is now branded as Intel VROC (SATA RAID).
# USAGE NOTE
# Software RAID can be created and configured by OneCLI running in the Operating System.
# If the disk count is sufficient, one array and up to two volumes of mixed RAID levels can be created.
# Ensure that the proper Intel software RAID driver is installed on Windows.
#
# To use this sample, uncomment and edit a block of example based on your needs.
# EXAMPLE 1
# For Intel VROC via out-of-band mode, create one RAID0 volume which consumes 300GB.
# [ctrl1-vol0]
# disks=1,2
# raid_level=0
# vol_name=volume1
# volume_size=300GB
# strip_size=128K
#
# EXAMPLE 2
# For Intel VROC via inband mode in windows, create one RAID0 volume which consumes 50GB and one RAID0 volume
# which consumes rest capacity.
# [ctrl0-vol0]
# disks=1,2
# raid_level=0
# vol_name=vol0
# volume_size=50GB
# strip_size=64K
# RAID_write_hole=Off
# [ctrl0-vol1]
# disks=1,2
# raid_level=0
# vol_name=vol1
# strip_size=64K
# RAID_write_hole=Off
# [ctrl0]
# global_hot_spares=3
# SYNTAX EXPLANATION
#
# disks
# [Required] Specify drive(s) index separated by ","
# [Format] disks=0,1
#
# raid_level
# [Required] Values: 0, 1, 5, 10.
# [Format] raid_level=1
#
# vol_name
# [Required] Allowed characters: A-Z, a-z, 0-9, -(dash), .(period), and _(underscore).
# [Format] vol_name=vol0
#
# volume_size
# In out-of-band mode:
# [Required] New volume size. Unit: MB / GB. Specify all will use all remaining space by default.
# [Format] volume_size=500GB
# volume_size=all
#
# In inband mode:
# [Optional] New volume size. Unit: GB. Specify all or don't specify will use all remaining space by default.
# [Format] volume_size=50GB
# volume_size=all
#
# strip_size
# In out-of-band mode:
# [Optional] Values: 4K, 8K, 16K, 32K, 64K, 128K. Default value 128K.
# [Format] strip_size=64K
#
# In inband mode:
# [Optional] Values: 4K, 8K, 16K, 32K, 64K, 128K.
# RAID1, not support the stripSize setting.
# RAID0, default value(128K).
# RAID5, default value(64K).
# RAID10, default value(64K).
# [Format] strip_size=64K
#
# global_hot_spares
# [Optional] Drive group for global hot spare,specify drive(s) index separated by ",".
# If no value is specified, there will be no global hot spare.
# [Format] global_hot_spares=3
#
# RAID_write_hole
# In inband mode:
# [Optional] Close RAID Write Hole policy(RAID5). Default value(Off), values : Off, Distributed.
# [Format] RAID_write_hole=Off
#
#
#
# END OF FILE

The following is the template policy file for Software Raid configuration. For the latest template policy file, refer to RAID_SW_new.ini in OneCLI linux binary.

# Sample template to configure RAID volumes with Intel RSTe Software RAID and Intel(R) virtual RAID using 
# --ctrl parameter.
#
# Change History
# 2022-07-01: Initial version.
# 2024-05-09: volume_size parameter supports "all".
#
# Intel VROC and Intel Rapid Storage Technology Enterprise (Intel RSTe) were previously related products
# in the same product family.
# The SATA RAID portion of the product family was called Intel RSTe and the NVMe RAID portion was called Intel VROC.
# However, starting in Q1 2019, with the launch of Intel VROC 6.0, the Intel RSTe name was removed, and all RAID
# solutions in this product
# family were branded as Intel VROC. The SATA functionality remains, but is now branded as Intel VROC (SATA RAID).
# USAGE NOTE
# Software RAID can be created and configured by OneCLI running in the Operating System.
# If the disk count is sufficient, one container and up to two volumes of mixed RAID levels can be created.
# Ensure that the proper Intel software RAID driver is installed on Linux, and the disks are visible as
# /dev/sd*,/dev/nvme*n1.
#
# To use this sample, uncomment and edit a block of example based on your needs.
# The example for Intel(R) Virtual RAID on CPU(Intel VROC)
#
# EXAMPLE 1
# For Intel VROC via out-of-band mode, create one RAID0 volume which consumes 300GB.
# [ctrl1-vol0]
# disks=1,2
# raid_level=0
# vol_name=volume1
# volume_size=300GB
# strip_size=128K
#
# EXAMPLE 2
# For Intel VROC via inband mode in linux.
# Create IMSM container of two drives with a RAID0 volume, it consumes all available space.
# Using all default parameters, default strip size of 128KB.
# [ctrl1-vol0]
# disks=/dev/sd[bc]
# raid_level=0
# vol_name=vol0
# EXAMPLE 3
# For Intel VROC via inband mode in linux.
# Create IMSM container with two drives.
# Create one VROC volume of RAID0 with strip size of 128KB.
# The volume consumes 50GB capacity.
# Create one global hot spare drive.
# [ctrl1-vol1]
# disks=/dev/sd[bc]
# raid_level=0
# vol_name=vol1
# strip_size=128K
# volume_size=50GB
# [ctrl1]
# global_hot_spares=/dev/sdd
# EXAMPLE 4
# For Intel VROC via inband mode in linux.
# Setup VROC RAID0 with Cache(RAID0 volume):
# Create two volumes of RAID0 respectively with strip size of 128KB.
# The first volume consumes 30GB capacity,The second volume consumes 50GB capacity.
# Setup vol2 as cache device(cache_id is 1)
# Attaching volume 3(core device) to cache device(cache_id is 1)
# [ctrl1-vol2]
# disks=/dev/sd[ab]
# raid_level=0
# vol_name=vol2
# strip_size=128K
# volume_size=30GB
# cache_id=1
# cache_policy=wt
# cache_line_size=64k
# [ctrl1-vol3]
# disks=/dev/sd[cd]
# vol_name=vol3
# raid_level=0
# volume_size=50GB
# strip_size=128K
# core_bind_cache_id=1
# EXAMPLE 5
# For Intel VROC via inband mode in linux.
# Setup VROC RAID0 with cache(non-RAID drive)
# Create one cache device(cache_id is 1) with a non-RAID drive.
# Create one volumes of RAID0 with strip size of 128KB and the volume consumes 50GB capacity.
# Attaching volume 5(core device) to cache device(cache_id is 1)
# [ctrl1-vol4]
# disks=/dev/sdd
# cache_id=1
# cache_policy=wt
# cache_line_size=64k
#
# [ctrl1-vol5]
# disks=/dev/sd[bc]
# vol_name=vol5
# raid_level=0
# volume_size=50GB
# strip_size=128K
# core_bind_cache_id=1
#
# SYNTAX EXPLANATION
#
# disks
# In out-of-band mode:
# [Required] Specify drive(s) index separated by ",".
# [Format] disks=0,1
#
# In inband mode:
# [Required] Name the disks to assign to the container.
# [Format] disks=/dev/sdb, /dev/sdc, /dev/sdd, /dev/sde
# disks=/dev/sd[bcde]
# disks=/dev/sd[b~e]
# disks=/dev/nvme0n1,/dev/nvme1n1
# disks=/dev/sdb
#
# raid_level
# In out-of-band mode:
# [Required] Values: 0, 1, 5, 10.
# [Format] raid_level=1
#
# In inband mode:
# [Optional] For creating one cache device with non-RAID drive, this parameter should not be specified.
# [Format] raid_level=1
# Supported RAID levels: 0, 1, 5, 10. Each RAID level has a valid range of disk count.
# RAID0 must have two to 8 disks, RAID1 must have two disks, RAID5 must have 3 to 8 disks, RAID10 must have 4 disks.
#
# vol_name
# [Required] Allowed characters: A-Z, a-z, 0-9, -(dash), .(period), and _(underscore).
# Name assigned to the volume. For creating one cache device with non-RAID drive, this parameter should not
# be specified.
# [Format] vol_name=vol0
#
# volume_size
# In out-of-band mode:
# [Required] New volume size. Unit: MB / GB. Specify all will use all remaining space by default.
# [Format] volume_size=500GB
# volume_size=all
#
# In inband mode:
# [Optional] New volume size. Unit: GB. Specify all or don't specify will use all remaining space by default.
# [Format] volume_size=300GB
# volume_size=all
#
# strip_size
# In out-of-band mode:
# [Optional] Values: 4K, 8K, 16K, 32K, 64K, 128K. Default value 128K.
# [Format] strip_size=64K
#
# In inband mode:
# [Optional] Values: 8K, 16K, 32K, 64K, 128K. The default values for raid0, raid5 and raid10 are 128k, 64k and 64k
# respectively.
# NOTE: This parameter is ignored for RAID1 (mirroring).
# [Format] strip_size=8K
#
# global_hot_spares
# [Optional] Drive group for global hot spare,specify drive(s) index separated by ",".
# If no value is specified, there will be no global hot spare.
# [Format] global_hot_spares=/dev/sdd
#
# RAID_write_hole
# In inband mode:
# [Optional] Write hole of the volume.
# [Format] RAID_write_hole=resync
# Set RAID write hole from available: {resync|ppl} ,without this parameter resync will be set by default.
# Current mdadm only support for ppl and resync policies to enable or disable the RAID5 partial parity log.
#
# cache_id
# In inband mode:
# [Optional] The id of cache instance. The volume will be setup as a cache device if specified
# [Format] cache_id=1
# Identifier of cache instance <1-16384>.
#
# cache_policy
# In inband mode:
# [Optional] The write policy of cache instance, it will only works when cache_id is specified.
# [Format] cache_policy=wt
# Valid values are wt, wo, wb, pt, wa, default is wt, if no value is specified.
# Set cache mode from available: {wt|wb|wa|pt|wo} ,without this parameter Write-Through will be set by default.
# wt - Write-Through
# wb - Write-Back
# wa - Write-Around
# pt - Pass-Through
# wo - Write-Only
#
# cache_line_size
# In inband mode:
# [Optional] The line size of cache instance, it will only works when cache_id is specified.
# [Format] cache_line_size=64k
# Valid values are 4k, 8k, 16k, 32k, 64k, default is 4k, if no value is specified.
# Set cache line size in kibibytes: {4,8,16,32,64}[KB] (default: 4)
#
# core_bind_cache_id
# In inband mode:
# [Optional] The target cache id of adding core device to the cache instance.
# [Format] core_bind_cache_id=1
#
# END OF FILE

Example of the raid command

OneCli.exe misc raid add --bmc userid:password@host--file raid.ini