Create a FlexCache volume in the cluster
POST /storage/flexcache/flexcaches
Introduced In: 9.6
Creates a FlexCache in the cluster.
Required properties
-
name
- Name of FlexCache volume. -
origins.volume.name
ororigins.volume.uuid
- Name or UUID of origin volume. -
origins.svm.name
- Name of origin Vserver. -
svm.name
orsvm.uuid
- Name or UUID of Vserver where FlexCache will be created.
Recommended optional properties
-
path
- Path to mount the FlexCache volume -
prepopulate.dir_paths
- List of directory-paths to be prepopulated for the FlexCache volume. -
prepopulate.exclude_dir_paths
- List of directory-paths to be excluded from prepopulation for he FlexCache volume.
Default property values
If not specified in POST, the following default property values are assigned:
-
size
- 10% of origin volume size or 1GB per constituent, whichever is greater. -
guarantee.type
- none. FlexCache is thin provisioned by default. -
constituents_per_aggregate
- 4 if aggregates.name or aggregates.uuid is used. -
use_tiered_aggregate
- false if aggr-list is not used. This property is only used when auto-provisioning a FlexCache volume. -
is_disconnected_mode_off_for_locks
- false. This property specifies if the origin will honor the cache side locks when doing the lock checks in the disconnected mode. -
dr_cache
- false if FlexCache is not a DR cache. This property is used to create a DR FlexCache. -
global_file_locking_enabled
- false. This property specifies whether global file locking is enabled on the FlexCache volume.
Related ONTAP commands
-
volume flexcache create
-
volume flexcache prepopulate start
Learn more
Parameters
Name | Type | In | Required | Description |
---|---|---|---|---|
return_timeout |
integer |
query |
False |
The number of seconds to allow the call to execute before returning. When doing a POST, PATCH, or DELETE operation on a single record, the default is 0 seconds. This means that if an asynchronous operation is started, the server immediately returns HTTP code 202 (Accepted) along with a link to the job. If a non-zero value is specified for POST, PATCH, or DELETE operations, ONTAP waits that length of time to see if the job completes so it can return something other than 202.
|
return_records |
boolean |
query |
False |
The default is false. If set to true, the records are returned.
|
Request Body
Name | Type | Description |
---|---|---|
_links |
||
aggregates |
array[aggregates] |
|
constituents_per_aggregate |
integer |
Number of FlexCache constituents per aggregate when the 'aggregates' field is mentioned. |
dr_cache |
boolean |
If set to true, a DR cache is created. |
global_file_locking_enabled |
boolean |
Specifies whether or not a FlexCache volume has global file locking mode enabled. Global file locking mode is a mode where protocol read locking semantics are enforced across all FlexCaches and origins of a FlexCache volume. When global file locking mode is enabled, the "is_disconnected_mode_off_for_locks" flag is always set to "true". |
guarantee |
||
name |
string |
FlexCache name |
origins |
array[flexcache_relationship] |
|
path |
string |
The fully-qualified path in the owning SVM's namespace at which the FlexCache is mounted. The path is case insensitive and must be unique within a SVM's namespace. Path must begin with '/' and must not end with '/'. Only one FlexCache be mounted at any given junction path. |
prepopulate |
FlexCache prepopulate |
|
size |
integer |
Physical size of the FlexCache. The recommended size for a FlexCache is 10% of the origin volume. The minimum FlexCache constituent size is 1GB. |
svm |
FlexCache SVM |
|
use_tiered_aggregate |
boolean |
Specifies whether or not a Fabricpool-enabled aggregate can be used in FlexCache creation. The use_tiered_aggregate is only used when auto-provisioning a FlexCache volume. |
uuid |
string |
FlexCache UUID. Unique identifier for the FlexCache. |
Example request
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"aggregates": [
{
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "aggr1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}
],
"guarantee": {
"type": "string"
},
"name": "vol1",
"origins": [
{
"cluster": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "cluster1",
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
},
"create_time": "2018-06-04T19:00:00Z",
"ip_address": "10.10.10.7",
"size": 0,
"state": "string",
"svm": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "svm1",
"uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
},
"volume": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "volume1",
"uuid": "028baa66-41bd-11e9-81d5-00a0986138f7"
}
}
],
"path": "/user/my_fc",
"prepopulate": {
"dir_paths": [
"/dir1"
],
"exclude_dir_paths": [
"/dir1/dir2"
]
},
"svm": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "svm1",
"uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
},
"uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}
Response
Status: 202, Accepted
Name | Type | Description |
---|---|---|
job |
Example response
{
"job": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"uuid": "string"
}
}
Error
Status: Default
ONTAP Error Response Codes
Error Code | Description |
---|---|
66846870 |
Either the SVM name or origin volume name is missing |
66846871 |
Constituents per aggregate are specified but aggregate name is missing |
66846872 |
More than one origin volume is specified |
66846873 |
The specified SVM UUID is incorrect for the specified SVM name |
66846874 |
The specified aggregate UUID is incorrect for the specified aggregate name |
66846875 |
The specified aggregate name does not exist |
66846876 |
The specified SVM does not exist or is not peered |
66846877 |
The specified origin SVM name is of zero length |
66846878 |
The specified SVM UUID is invalid |
66846730 |
Failed to create a FlexCache volume |
66846760 |
The specified SVM is not a data Vserver |
66846787 |
The specified aggregate is a SnapLock aggregate |
66846812 |
The specified aggregate is a Composite aggregate |
66846812 |
The specified junction path is under a FlexCache volume |
66846834 |
FlexCache encryption requires a cluster version of 9.6 or higher |
66846835 |
A volume encryption license is not found |
Name | Type | Description |
---|---|---|
error |
Example error
{
"error": {
"arguments": [
{
"code": "string",
"message": "string"
}
],
"code": "4",
"message": "entry doesn't exist",
"target": "uuid"
}
}
Definitions
See Definitions
href
Name | Type | Description |
---|---|---|
href |
string |
_links
Name | Type | Description |
---|---|---|
self |
aggregates
Aggregate
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
|
uuid |
string |
guarantee
Name | Type | Description |
---|---|---|
type |
string |
The type of space guarantee of this volume in the aggregate. |
cluster
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
|
uuid |
string |
svm
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the SVM. |
uuid |
string |
The unique identifier of the SVM. |
volume
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the volume. |
uuid |
string |
Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move.
|
flexcache_relationship
Name | Type | Description |
---|---|---|
cluster |
||
create_time |
string |
Creation time of the relationship. |
ip_address |
string |
Cluster managerment IP of the remote cluster. |
size |
integer |
Size of the remote volume. |
state |
string |
Volume state |
svm |
||
volume |
prepopulate
FlexCache prepopulate
Name | Type | Description |
---|---|---|
dir_paths |
array[string] |
|
exclude_dir_paths |
array[string] |
|
recurse |
boolean |
Specifies whether or not the prepopulate action should search through the |
svm
FlexCache SVM
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the SVM. |
uuid |
string |
The unique identifier of the SVM. |
flexcache
Defines the cache endpoint of FlexCache.
Name | Type | Description |
---|---|---|
_links |
||
aggregates |
array[aggregates] |
|
constituents_per_aggregate |
integer |
Number of FlexCache constituents per aggregate when the 'aggregates' field is mentioned. |
dr_cache |
boolean |
If set to true, a DR cache is created. |
global_file_locking_enabled |
boolean |
Specifies whether or not a FlexCache volume has global file locking mode enabled. Global file locking mode is a mode where protocol read locking semantics are enforced across all FlexCaches and origins of a FlexCache volume. When global file locking mode is enabled, the "is_disconnected_mode_off_for_locks" flag is always set to "true". |
guarantee |
||
name |
string |
FlexCache name |
origins |
array[flexcache_relationship] |
|
path |
string |
The fully-qualified path in the owning SVM's namespace at which the FlexCache is mounted. The path is case insensitive and must be unique within a SVM's namespace. Path must begin with '/' and must not end with '/'. Only one FlexCache be mounted at any given junction path. |
prepopulate |
FlexCache prepopulate |
|
size |
integer |
Physical size of the FlexCache. The recommended size for a FlexCache is 10% of the origin volume. The minimum FlexCache constituent size is 1GB. |
svm |
FlexCache SVM |
|
use_tiered_aggregate |
boolean |
Specifies whether or not a Fabricpool-enabled aggregate can be used in FlexCache creation. The use_tiered_aggregate is only used when auto-provisioning a FlexCache volume. |
uuid |
string |
FlexCache UUID. Unique identifier for the FlexCache. |
job_link
Name | Type | Description |
---|---|---|
_links |
||
uuid |
string |
The UUID of the asynchronous job that is triggered by a POST, PATCH, or DELETE operation. |
error_arguments
Name | Type | Description |
---|---|---|
code |
string |
Argument code |
message |
string |
Message argument |
error
Name | Type | Description |
---|---|---|
arguments |
array[error_arguments] |
Message arguments |
code |
string |
Error code |
message |
string |
Error message |
target |
string |
The target parameter that caused the error. |