Use the mkmdiskgrp command to create a new storage pool.
Syntax
mkmdiskgrp [ -namepool_name ] [ -mdisk { mdisk_id_list | mdisk_name_list } ] [ -tier { tier0_flash | tier1_flash | tier_enterprise | tier_nearline } ] { -extextent_size | -sizemdiskgrp_size -parentmdiskgrp { mdiskgrp_id | mdiskgrp_name } } [ -warning { disk_size | disk_size_percentage% } [ -unit { b | kb | mb | gb | tb | pb } ] ] [ -easytier { auto | on | off | measure } ] [ -ownerowner_type ] [ -encrypt { yes | no } ] [ -datareduction { yes | no } ]
Parameters
- -namepool_name
- (Optional) Specifies a name to assign to the new pool.
- -mdiskmdisk_id_list | mdisk_name_list
- (Optional) Specifies a colon-separated list of managed disk IDs or names to add to the
storage pool. You can create an empty storage pool by not specifying the
-mdisk parameter.
- -tiertier0_flash | tier1_flash | tier_enterprise |
tier_nearline
- (Optional) Specifies the tier of the MDisk or MDisks being added.
- tier0_flash
- Specifies a tier0_flash hard disk drive or an external MDisk for the
newly discovered or external volume.
- tier1_flash
- Specifies an tier1_flash (or flash drive) hard disk drive or an
external MDisk for the newly discovered or external volume.
- tier_enterprise
- Specifies a tier_enterprise hard disk drive or an external MDisk for
the newly discovered or external volume.
- tier_nearline
- Specifies a tier_nearline hard disk drive or an external MDisk for the
newly discovered or external volume.
If you do not specify a tier, the current tier value of the MDisk is retained. The
default value for an external MDisk is enterprise.
Note: Since Release 8.1.0, the tier of MDisks mapped from
certain types of IBMSystem Storage Enterprise Flash is
fixed to tier0_flash, and cannot be changed.
- -extextent_size
- (Required) Specifies the size of the extents for this group in MB. The
ext parameter must have one of the following values:
16, 32, 64, 128,
256, 512, 1024, 2048,
4096, or 8192 (MB).
- -sizemdiskgrp_size
- (Optional) Specifies the child pool capacity. The value must be a numeric value (and an
integer multiple of the extent size).
- -parentmdiskgrpmdiskgrp_id | mdiskgrp_name
- (Optional) Specifies the parent pool from which the volume extents of the child pool are
allocated when you create a child pool. The value must be an mdiskgrp_id or
mdiskgrp_name.
- -warningdisk_size | disk_size_percentage%
- (Optional) Generates a warning when the used disk capacity in the storage pool first
exceeds the specified threshold. You can specify a disk_size
integer, which defaults to megabytes (MB) unless the -unit parameter
is specified; or you can specify a disk_size%, which is a
percentage of the storage pool size. To disable warnings, specify 0 or
0%. The default value is 0.
- -unitb | kb | mb | gb | tb | pb
- (Optional) Specifies the data units for the -warning
parameter.
- -easytieron | off | auto | measure
- (Optional) Specifies if the Easy Tier function
is active for this storage pool, or if it is automatically determined. auto
is the default value. -easytier is active in storage
pools with multiple tiers and is balance with single tiers.
Note: - If -easytier is set to auto, the system
automatically enables Easy Tier functions when the
storage pool contains MDisk from more than one tier, and enables automatic rebalancing when
the storage pool contains an MDisk from only one tier.
- If -easytier is set to on, then Easy Tier functions are
active.
- If -easytier is set to off, then Easy Tier functions are
inactive.
- If -easytier is set to measureEasy Tier statistics are
collected but Easy Tier
management is disabled. (No extents are moved by Easy Tier).
auto equates to:
- on if Easy Tier is licensed or no
license is required.
- off if Easy Tier is not licensed
and a license is required.
Specifying
-easytier on enables
Easy Tier:
- Management of both single-tier and multitier pools
- Auto rebalance
Extents are moved to balance the I/O load on the MDisks in the pool.
- -ownerowner_type
- (Optional) Specifies the owner type. The value must be
vvol_child_pool.
- -encryptyes | no
- (Optional) Specifies the encryption status for this storage pool. The values are
yes or no.
Remember: - If you do not specify -encrypt and encryption is enabled, the
system defaults to -encrypt yes (the default encryption setting).
- When you create a child pool in an encrypted parent pool, the value must not be
no. (All other permutations are permitted).
- -datareductionyes | no
- (Optional) Specifies whether the storage pool is a data reduction storage pool. The values
are yes or no. A value of no specifies that
the storage pool is a standard storage pool.
Description
Table 1. Parameter differences for child pools and storage poolsParameter |
Child pool usage |
Storage pool usage |
-name |
Optional |
Optional for both parent pools and child pools |
-mdisk |
Cannot be used with child pools. |
Optional |
-tier |
Cannot be used with child pools. |
Optional |
-easytier |
Cannot be used with child pools. |
Optional |
-size |
Mandatory |
Cannot be used with parent pools. |
-parentmdiskgrp |
Mandatory |
Cannot be used with parent pools. |
-ext |
Cannot be used for child pools. |
Mandatory |
-unit |
Optional |
Optional for both parent pools and child pools |
-warning |
Optional |
Optional for both parent pools and child pools |
-encrypt |
Optional |
Optional for both parent pools and child pools |
-datareduction |
Cannot be used with -parentmdiskgrp Note: A child pool cannot be created from a data reduction pool.
|
Data reduction pools must be a parent pool. |
The mkmdiskgrp command creates a new storage pool and assigns the
storage pool name if specified. The ID of the new storage pool is returned if the command is
successful. Storage pools are collections of managed disks. Each storage pool is divided into
chunks, called extents, which are used to create volumes.
Optionally, you can specify a
list of managed disks that are added to this storage pool. These managed disks cannot belong to
another storage pool, and they must have a mode of unmanaged. Use the
lsmdiskcandidate command to get a list of suitable candidates. If
-tier is specified, it applies to all of the MDisks.
Each managed
disk that is a member of this group is split into extents. The storage that is available on
these disks is added to a pool of extents that is available in this group. When a volume is
created from this group, free extents from the pool are used, in accordance with the policy used
when the volume was first created.
Subsequently, all managed disks added to this group are
split into extents of the same size as the size that is assigned to the group.
When you
choose an extent size, be aware of the amount of storage you want to virtualize in this group.
The system maintains a mapping of extents between volumes and managed disks. The system can only
manage a finite number of extents (4 194 304). One system can virtualize the following number of
extents:
- 64 TB – if all storage pools have extent sizes of 16 MB.
- 2 PB – if all storage pools have extent sizes of 512 MB.
- 32 PB – if all storage pools have extent sizes of 8192 MB.
Important: The extent size for the storage pool can also limit volume size.
Consider the maximum volume size that you want to use when you create storage pools. Refer to
the information on creating storage pools for a comparison of the maximum volume capacity for
each extent size. The maximum is different for thin-provisioned volumes.
Note: When an
image mode volume is created, the storage pool increases in capacity by the size of the image
mode volume (not the MDisk capacity) because the image mode volume might be smaller than the
MDisk itself. If an extent is migrated from the image mode volume or MDisk to elsewhere in the
group, the volume becomes a striped volume (no longer image mode). At this point, the available
capacity might increase because the extra capacity available on the MDisk (for example, the
capacity that was not part of the image mode volume) becomes available.
Remember: When you use the -mdisk parameter, the
storage pool is not created if one of the MDisks is a SAS MDisk.
When you specify
-name pool_name if you do not also specify
-parentmdiskgrp, you create a parent pool where
pool_name is the name of the new storage pool. When you specify
-name pool_name, if you also specify
-parentmdiskgrp and a size for it, you create a child pool where
pool_name is the name of the new storage pool.
Note: A data reduction pool is created by using the
-datareduction parameter set to yes. The pool can be
used to create fully allocated, thin or compressed volumes, or volume copies.
There is a maximum number of four data reduction pools in a system. When this limit is
reached, creating any further pools with -datareduction set to
yes is not possible.
The -datareduction parameter cannot be used to create a child pool.
Creating a child pool whose parent is already a data reduction pool is not allowed.
An invocation example
This example adds a list of MDisks to the storage
pool.
mkmdiskgrp -mdisk mdisk0:mdisk1:mdisk2:mdisk3 -ext 32
The
resulting output:
MDisk Group, id [0], successfully created
An invocation example
This example specifies tier and Easy Tier information when you
add a list of MDisks to the storage
pool.
mkmdiskgrp -mdisk mdisk13:mdisk16 -ext 512 -tier tier_nearline -easytier measure
The
resulting output:
MDisk Group, id [13], successfully created
An invocation example
This example creates a
child pool from a parent
pool.
mkmdiskgrp -size 100 -unit tb -parentmdiskgrp phypool
The
resulting output:
MDisk Group, id [3], successfully created
An invocation example
This example creates a
child pool from a parent pool and specifies an owner
type.
mkmdiskgrp -parentmdiskgrp p0 -size 100 -unit gb -owner vvol_child_pool
The
resulting output:
MDisk Group, id [3], successfully created
An invocation example
This example creates an encrypted child pool from a parent pool.
mkmdiskgrp -parentmdiskgrp 2 -name _my_encrypted_child_pool -encrypt yes -size 10 -unit gb
The resulting output:
MDisk Group, id [5], successfully created
An invocation example
This example creates an empty data reduction pool.
mkmdiskgrp -ext 512 -datareduction yes
The resulting output:
MDisk Group, id [16], successfully created
An invocation example
This example creates a data reduction pool with MDisks.
mkmdiskgrp -ext 512 -mdisk 3:5:6 -datareduction yes
The resulting output:
MDisk Group, id [17], successfully created