6.2.12.14 mkvolume
Create a volume or clone a volume snapshot.
Purpose
The mkvolume command allows you to create a new Exascale volume, clone a volume snapshot, or directly clone an existing volume.
Syntax
To create a new volume:
mkvolume size --vault vault [ --attributes attribute=value[,attribute=value] ... ]To clone a volume snapshot:
mkvolume --attributes volumeSnapshot=parent_snapshot_id[,name=clone_name][,iopsProvisioned=integer_value][,iopsInherited={true|false}]To directly clone an existing volume:
mkvolume --attributes volumeSource=parent_volume_id[,name=clone_name][,iopsProvisioned=integer_value][,iopsInherited={true|false}]Note:
To directly clone an existing volume, you must use Oracle Exadata System Software release 25.1.0 or later.
Command Options
The options for the mkvolume command are:
-
size: Specifies the size of the volume. The size can be specified using suffixes
K,KB,M,MB,G,GB,T,TB. The suffix is not case-sensitive.Note:
If you intend to use the volume to support Oracle ACFS, note that ACFS requires a minimum volume size of 512 MB. -
--vault: Specifies the vault that the volume is created in. -
--attributes: Optionally specifies attributes for the volume.Use the
describe mkvolumecommand to view details about all the volume attributes you can set withmkvolume.
Usage Notes
-
You can optionally specify up to two volume owners by setting the
ownersattribute to the name(s) of the Exascale user(s) that you want to own the volume.To set a sole owner, use:
@> mkvolume ... --attributes owners=owner1To set two owners, use:
@> mkvolume ... --attributes owners=owner1,owner2 -
The following usage notes apply only when the
mkvolumecommand is used to clone a volume.-
When cloning a volume snapshot,
volumeSnapshot=parent_snapshot_ididentifies the volume snapshot that you want to clone. -
When directly cloning an existing volume,
volumeSource=parent_volume_ididentifies the volume that you want to clone. -
When cloning a volume, either directly or using a volume snapshot, you can optionally specify the following attribute settings. No additional command options or attribute settings are required or permitted.
-
name=clone_name: Optionally specifies the name of the volume clone, which makes it easier for you to identify later. If not specified, a system-generated name is assigned. -
iopsProvisioned=integer_value: Optionally specifies the I/O bandwidth provisioned for the volume clone. The I/O bandwidth is expressed as the number of I/Os per second (IOPS). -
iopsInherited={true|false}: Optionally specifies whether the volume clone inherits I/O bandwidth from the nearest ancestor in the volume hierarchy with provisioned (not inherited) I/O bandwidth.
-
-
When cloning a volume, either directly or using a volume snapshot, the following describes the relationship between the
iopsProvisionedandiopsInheritedattribute settings:-
If
iopsProvisionedis unspecified andiopsInheritedis not set tofalse(iopsInheritedis unspecified oriopsInherited=true), then:-
The volume clone inherits I/O bandwidth from its nearest ancestor.
-
The volume clone has the setting:
iopsInherited=true.
-
-
If
iopsProvisionedis unspecified andiopsInherited=false, then:-
The volume clone is provisioned with unlimited
iopsProvisioned. -
The volume clone has the setting:
iopsInherited=false.
-
-
If you specify a value for
iopsProvisionedandiopsInheritedis not set totrue(iopsInheritedis unspecified oriopsInherited=false), then:-
The volume clone is governed by the specified
iopsProvisionedvalue. -
The volume clone has the setting:
iopsInherited=false.
-
-
An error occurs if you specify a value for
iopsProvisionedandiopsInherited=true. This is an invalid combination.
-
-
Examples
Example 6-171 Create a Volume
This example shows creating a volume that is 100 MB in size and located
in the vault named MYVOLS.
@> mkvolume 100m --vault MYVOLS
Example 6-172 Create a Volume with Attribute Settings
This example shows creating a volume that is 200 MB in size and located in the vault named MYVOLS. The example also includes the following specific attribute settings:
-
The volume name is set to
vol2. -
The volume is provisioned with 1000 IOPS (IOs per second).
-
The volume is created with two owners (Exascale users named
scottanddave).
@> mkvolume 200m --vault MYVOLS --attributes name=vol2,iopsProvisioned=1000,owners=scott,dave
Parent topic: Block Store Management