Create an application
POST /application/applications
Introduced In: 9.6
Creates an application.
Template properties
The application APIs appear to be complex and long in this documentation because we document every possible template, of which there are currently 14. When creating an application, only a single template is used, so it is best to focus only on the template of interest. Other than the properties for the chosen template, only the name
and svm
of the application must be provided. The following three sections provided guidelines on using the properties of the templates, but the whole idea behind the templates is to automatically follow the best practices of the given application, so the only way to determine the exact list of required properties and default values is to dig in to the model section of the template. The templates are all top level properties of the application object with names matching the values returned by GET /application/templates .
Required properties
-
svm.uuid
orsvm.name
- The existing SVM in which to create the application. -
name
- The name for the application. -
<template>
- Properties for one template must be provided. In general, the following properties are required, however the naming of these may vary slightly from template to template.-
<template>.name
- The generic templates require names for the components of the application. Other templates name the components automatically. -
<template>.application_component.size
- This generally refers to the size of an application component, which may be spread across multiple underlying storage objects (volumes, LUNs, etc…). -
One of the following must be specified:
-
-
nas.nfs_access
or an identifier (name or id) of an existingexport-policy
. -
nas.cifs_access
-
san.application_application.igroup_name
-
To specify that a NAS application is not to be exposed via NFS nor CIFS:
-
-
nas.application_component.export_policy.name
is 'none', and -
nas.application.cifs_share_name
is 'none'.-
The name of the CIFS share can be provided through the
nas.application.cifs_share_name
attribute. If not provided, the CIFS share name will be the same as thenas.application_component.name
attribute, including any suffix applied due to creating multiple application components in one post. -
san.os_type
- All SAN applications require an os_type to be specified in some way. Some templates refer to this as thehypervisor
.
-
Recommended optional properties
-
<template>
- The following properties are available in some templates.-
san.new_igroups.*
- SAN applications can use existing initiator groups or create new ones. When creating new initiator groups,new_igroups.name
is required and the other properties may be used to fully specify the new initiator group.
-
Default property values
If not specified in POST, the follow default property values are assigned. It is recommended that most of these properties be provided explicitly rather than relying upon the defaults. The defaults are intended to make it as easy as possible to provision and connect to an application.
-
template.name
- Defaults to match the<template>
provided. If specified, the value of this property must match the provided template properties. -
<template>
- The majority of template properties have default values. The defaults may vary from template to template. See the model of each template for complete details. In general the following patterns are common across all template properties. The location of these properties varies from template to template.-
<template>.storage_service.name
- value -
<template>.protection_type.local_rpo
- hourly (Hourly Snapshot copies) -
<template>.protection_type.remote_rpo
- none (Not MetroCluster) -
san.new_igroups.os_type
- Defaults to match theos_type
provided for the application, but may need to be provided explicitly when using virtualization.
-
Optional components
A common pattern across many templates are objects that are optional, but once any property in the object is specified, other properties within the object become required. Many applications have optional components. For example, provisioning a database without a component to store the logs is supported. If the properties related to the logs are omitted, no storage will be provisioned for logs. But when the additional component is desired, the size is required. Specifying any other property of a component without specifying the size is not supported. In the model of each template, the required components are indicated with a red '*'. When a size
property is listed as optional, that means the component itself is optional, and the size should be specified to include that component in the application.
POST body examples
-
Create a generic SAN application that exposes four LUNs to an existing initiator group, igroup_1.
{ "name": "app1", "svm": { "name": "svm1" }, "san": { "os_type": "linux", "application_components": [ { "name": "component1", "total_size": "10GB", "lun_count": 4, "igroup_name": "igroup_1" } ] } }
-
Create an SQL application that can be accessed via initiator iqn.2017-01.com.example:foo from a new initiator group, igroup_2.
{ "name": "app2", "svm": { "name": "svm1" }, "sql_on_san": { "db": { "size": "5GB" }, "log": { "size": "1GB" }, "temp_db": { "size": "2GB" }, "igroup_name": "igroup_2", "new_igroups": [ { "name": "igroup_2", "initiators": [ "iqn.2017-01.com.example:foo" ] } ] } }
-
The following body creates the exact same SQL application, but manually provides all the defaults that were excluded from the previous call.
The model of a sql_on_san application documents all these default values. |
{ "name": "app3", "svm": { "name": "svm1" }, "template": { "name": "sql_on_san" }, "sql_on_san": { "os_type": "windows_2008", "server_cores_count": 8, "db": { "size": "5GB", "storage_service": { "name": "value" } }, "log": { "size": "1GB", "storage_service": { "name": "value" } }, "temp_db": { "size": "2GB", "storage_service": { "name": "value" } }, "igroup_name": "igroup_2", "new_igroups": [ { "name": "igroup_2", "protocol": "mixed", "os_type": "windows", "initiators": [ "iqn.a.new.initiator" ] } ], "protection_type": { "local_rpo": "none" } } }
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 |
||
creation_timestamp |
string |
The time when the application was created. |
delete_data |
boolean |
Should application storage elements be deleted? An application is considered to use storage elements from a shared storage pool. Possible values are 'true' and 'false'. If the value is 'true', the application will be deleted in its entirety. If the value is 'false', the storage elements will be disassociated from the application and preserved. The application will then be deleted. |
generation |
integer |
The generation number of the application. This indicates which features are supported on the application. For example, generation 1 applications do not support Snapshot copies. Support for Snapshot copies was added at generation 2. Any future generation numbers and their feature set will be documented. |
mongo_db_on_san |
MongoDB using SAN. |
|
name |
string |
Application Name. This field is user supplied when the application is created. |
nas |
A generic NAS application. |
|
nvme |
An NVME application. |
|
oracle_on_nfs |
Oracle using NFS. |
|
oracle_on_san |
Oracle using SAN. |
|
oracle_rac_on_nfs |
Oracle RAC using NFS. |
|
oracle_rac_on_san |
Oracle RAC using SAN. |
|
protection_granularity |
string |
Protection granularity determines the scope of Snapshot copy operations for the application. Possible values are "application" and "component". If the value is "application", Snapshot copy operations are performed on the entire application. If the value is "component", Snapshot copy operations are performed separately on the application components. |
rpo |
||
s3_bucket |
A generic S3 bucket application. |
|
san |
A generic SAN application. |
|
smart_container |
boolean |
Identifies if this is a smart container or not. |
sql_on_san |
Microsoft SQL using SAN. |
|
sql_on_smb |
Microsoft SQL using SMB. |
|
state |
string |
The state of the application. For full functionality, applications must be in the online state. Other states indicate that the application is in a transient state and not all operations are supported. |
statistics |
||
svm |
||
template |
||
uuid |
string |
Application UUID. This field is generated when the application is created. |
vdi_on_nas |
A VDI application using NAS. |
|
vdi_on_san |
A VDI application using SAN. |
|
vsi_on_nas |
A VSI application using NAS. |
|
vsi_on_san |
A VSI application using SAN. |
Example request
{
"_links": {
"self": {
"href": "/api/resourcelink"
},
"snapshots": {
"href": "/api/resourcelink"
}
},
"creation_timestamp": "string",
"generation": 0,
"name": "string",
"nas": {
"application_components": [
{
}
],
"cifs_access": [
{
"access": "string",
"user_or_group": "string"
}
],
"cifs_share_name": "string",
"exclude_aggregates": [
{
"name": "string",
"uuid": "string"
}
],
"nfs_access": [
{
"access": "string",
"host": "string"
}
],
"protection_type": {
"local_policy": "string",
"local_rpo": "string",
"remote_rpo": "string"
}
},
"nvme": {
"components": [
{
"name": "string",
"os_type": "string",
"performance": {
"storage_service": {
"name": "string"
}
},
"qos": {
"policy": {
"name": "string",
"uuid": "string"
}
},
"subsystem": {
"hosts": [
{
"nqn": "string"
}
],
"name": "string",
"os_type": "string",
"uuid": "string"
},
"tiering": {
"control": "string",
"object_stores": [
{
"name": "string"
}
],
"policy": "string"
}
}
],
"os_type": "string",
"rpo": {
"local": {
"name": "string",
"policy": "string"
}
}
},
"protection_granularity": "string",
"rpo": {
"components": [
{
"name": "string",
"rpo": {
"local": {
"description": "string",
"name": "string"
},
"remote": {
"description": "string",
"name": "string"
}
},
"uuid": "string"
}
],
"local": {
"description": "string",
"name": "string"
},
"remote": {
"description": "string",
"name": "string"
}
},
"s3_bucket": {
"application_components": [
{
"access_policies": [
{
"actions": [
"string"
],
"conditions": [
{
"delimiters": [
"string"
],
"max_keys": [
"integer"
],
"operator": "string",
"prefixes": [
"string"
],
"source_ips": [
"string"
],
"usernames": [
"string"
]
}
],
"effect": "string",
"principals": [
"string"
],
"resources": [
"string"
],
"sid": "string"
}
],
"bucket_endpoint_type": "string",
"comment": "string",
"exclude_aggregates": [
{
"name": "string",
"uuid": "string"
}
],
"name": "string",
"nas_path": "string",
"qos": {
"policy": {
"name": "string",
"uuid": "string"
}
},
"storage_service": {
"name": "string"
},
"uuid": "string",
"versioning_state": "string"
}
]
},
"san": {
"application_components": [
{
"igroup_name": "string",
"name": "string",
"os_type": "string",
"qos": {
"policy": {
"name": "string",
"uuid": "string"
}
},
"storage_service": {
"name": "string"
},
"tiering": {
"control": "string",
"object_stores": [
{
"name": "string"
}
],
"policy": "string"
}
}
],
"exclude_aggregates": [
{
"name": "string",
"uuid": "string"
}
],
"new_igroups": [
{
"comment": "string",
"igroups": [
{
"name": "string",
"uuid": "string"
}
],
"initiator_objects": [
{
"comment": "string",
"name": "string"
}
],
"initiators": [
"string"
],
"name": "string",
"os_type": "string",
"protocol": "string"
}
],
"os_type": "string",
"protection_type": {
"local_policy": "string",
"local_rpo": "string",
"remote_rpo": "string"
}
},
"state": "string",
"statistics": {
"components": [
{
"iops": {
"per_tb": 0,
"total": 0
},
"latency": {
"average": 0,
"raw": 0
},
"name": "string",
"snapshot": {
"reserve": 0,
"used": 0
},
"space": {
"available": 0,
"logical_used": 0,
"provisioned": 0,
"reserved_unused": 0,
"savings": 0,
"used": 0,
"used_excluding_reserves": 0,
"used_percent": 0
},
"storage_service": {
"name": "string",
"uuid": "string"
},
"uuid": "string"
}
],
"iops": {
"per_tb": 0,
"total": 0
},
"latency": {
"average": 0,
"raw": 0
},
"snapshot": {
"reserve": 0,
"used": 0
},
"space": {
"available": 0,
"logical_used": 0,
"provisioned": 0,
"reserved_unused": 0,
"savings": 0,
"used": 0,
"used_excluding_reserves": 0,
"used_percent": 0
}
},
"svm": {
"name": "string",
"uuid": "string"
},
"template": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"name": "string",
"protocol": "string",
"version": 0
},
"uuid": "string"
}
Response
Status: 202, Accepted
Name | Type | Description |
---|---|---|
job |
Example response
{
"job": {
"_links": {
"self": {
"href": "/api/resourcelink"
}
},
"uuid": "string"
}
}
Headers
Name | Description | Type |
---|---|---|
Location |
Useful for tracking the resource location |
string |
Error
Status: Default, Error
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 |
||
snapshots |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the database. |
dataset
Name | Type | Description |
---|---|---|
element_count |
integer |
The number of storage elements (LUNs for SAN) of the database to maintain. Must be an even number between 2 and 16. Odd numbers will be rounded up to the next even number within range. |
replication_factor |
integer |
The number of data bearing members of the replicaset, including 1 primary and at least 1 secondary. |
size |
integer |
The size of the database. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
igroups
Name | Type | Description |
---|---|---|
name |
string |
The name of an igroup to nest within a parent igroup. Mutually exclusive with initiators and initiator_objects. |
uuid |
string |
The UUID of an igroup to nest within a parent igroup Usage: <UUID> |
initiator_objects
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
name |
string |
The WWPN, IQN, or Alias of the initiator. Mutually exclusive with nested igroups and the initiators array. |
mongo_db_on_san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
os_type |
string |
The name of the host OS accessing the application. The default value is the host OS that is running the application. |
protocol |
string |
The protocol of the new initiator group. |
protection_type
Name | Type | Description |
---|---|---|
local_rpo |
string |
The local RPO of the application. |
remote_rpo |
string |
The remote RPO of the application. |
secondary_igroups
Name | Type | Description |
---|---|---|
name |
string |
The name of the initiator group for each secondary. |
mongo_db_on_san
MongoDB using SAN.
Name | Type | Description |
---|---|---|
dataset |
||
new_igroups |
array[mongo_db_on_san_new_igroups] |
The list of initiator groups to create. |
os_type |
string |
The name of the host OS running the application. |
primary_igroup_name |
string |
The initiator group for the primary. |
protection_type |
||
secondary_igroups |
array[secondary_igroups] |
export_policy
Name | Type | Description |
---|---|---|
id |
integer |
The ID of an existing NFS export policy. |
name |
string |
The name of an existing NFS export policy. |
component
Name | Type | Description |
---|---|---|
name |
string |
Name of the source component. |
svm
Name | Type | Description |
---|---|---|
name |
string |
Name of the source SVM. |
origin
Name | Type | Description |
---|---|---|
component |
||
svm |
flexcache
Name | Type | Description |
---|---|---|
dr_cache |
boolean |
Dr-cache is a FlexCache volume create time option that has the same flexgroup-msid as that of the origin of a FlexCache volume. By default, dr-cache is disabled. The flexgroup-msid of the FlexCache volume does not need to be same as that of the origin of a FlexCache volume. |
origin |
policy
Name | Type | Description |
---|---|---|
name |
string |
The name of an existing QoS policy. |
uuid |
string |
The UUID of an existing QoS policy. Usage: <UUID> |
qos
Name | Type | Description |
---|---|---|
policy |
retention
Name | Type | Description |
---|---|---|
default |
string |
Specifies the default retention period that is applied to files while committing them to the WORM state without an associated retention period. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, months, and days is represented in the ISO-8601 format as quot;Plt;num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string "infinite" to set an infinite retention period and the string "unspecified" to set an unspecified retention period. |
maximum |
string |
Specifies the maximum allowed retention period for files committed to the WORM state on the volume. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, months, and days is represented in the ISO-8601 format as "P<num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string "infinite" to set an infinite retention period. |
minimum |
string |
Specifies the minimum allowed retention period for files committed to the WORM state on the volume. The retention value represents a duration and must be specified in the ISO-8601 duration format. The retention period can be in years, months, days, hours, and minutes. A duration specified for years, month,s and days is represented in the ISO-8601 format as "P<num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The retention string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the duration field also accepts the string "infinite" to set an infinite retention period. |
snaplock
Name | Type | Description |
---|---|---|
append_mode_enabled |
boolean |
Specifies if the volume append mode is enabled or disabled. When it is enabled, all the files created with write permissions on the volume are, by default, WORM appendable files. The user can append the data to a WORM appendable file but cannot modify the existing contents of the file nor delete the file until it expires. |
autocommit_period |
string |
Specifies the autocommit period for SnapLock volume. All files which are not modified for a period greater than the autocommit period of the volume are committed to the WORM state. The autocommit period value represents a duration and must be specified in the ISO-8601 duration format. The autocommit period can be in years, months, days, hours, and minutes. A period specified for years, months, and days is represented in the ISO-8601 format as "P<num>Y", "P<num>M", "P<num>D" respectively, for example "P10Y" represents a duration of 10 years. A duration in hours and minutes is represented by "PT<num>H" and "PT<num>M" respectively. The period string must contain only a single time element that is, either years, months, days, hours, or minutes. A duration which combines different periods is not supported, for example "P1Y10M" is not supported. Apart from the duration specified in the ISO-8601 format, the autocommit field also accepts the string "none". |
retention |
||
snaplock_type |
string |
The SnapLock type of the smart container. |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the application component. |
object_stores
Name | Type | Description |
---|---|---|
name |
string |
The name of the object-store to use. |
nas_application_components_tiering
application-components.tiering
Name | Type | Description |
---|---|---|
control |
string |
Storage tiering placement rules for the container(s) |
object_stores |
array[object_stores] |
|
policy |
string |
The storage tiering type of the application component. |
application_components
Name | Type | Description |
---|---|---|
export_policy |
||
flexcache |
||
name |
string |
The name of the application component. |
qos |
||
scale_out |
boolean |
Denotes a Flexgroup. |
share_count |
integer |
The number of shares in the application component. |
snaplock |
||
storage_service |
||
tiering |
application-components.tiering |
|
total_size |
integer |
The total size of the application component, split across the member shares. Usage: {<integer>[KB|MB|GB|TB|PB]} |
app_cifs_access
The list of CIFS access controls. You must provide either 'user_or_group' or 'access' to enable CIFS access.
Name | Type | Description |
---|---|---|
access |
string |
The CIFS access granted to the user or group. |
user_or_group |
string |
The name of the CIFS user or group that will be granted access. |
exclude_aggregates
Name | Type | Description |
---|---|---|
name |
string |
The name of the aggregate to exclude. Usage: <aggregate name> |
uuid |
string |
The ID of the aggregate to exclude. Usage: <UUID> |
app_nfs_access
The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access.
Name | Type | Description |
---|---|---|
access |
string |
The NFS access granted. |
host |
string |
The name of the NFS entity granted access. |
protection_type
Name | Type | Description |
---|---|---|
local_policy |
string |
The Snapshot copy policy to apply to each volume in the smart container. This property is only supported for smart containers. Usage: <snapshot policy> |
local_rpo |
string |
The local RPO of the application. |
remote_rpo |
string |
The remote RPO of the application. |
nas
A generic NAS application.
Name | Type | Description |
---|---|---|
application_components |
array[application_components] |
|
cifs_access |
array[app_cifs_access] |
The list of CIFS access controls. You must provide either 'user_or_group' or 'access' to enable CIFS access. |
cifs_share_name |
string |
The name of the CIFS share. Usage: <Share> |
exclude_aggregates |
array[exclude_aggregates] |
|
nfs_access |
array[app_nfs_access] |
The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access. |
protection_type |
performance
Name | Type | Description |
---|---|---|
storage_service |
hosts
Name | Type | Description |
---|---|---|
nqn |
string |
The host NQN. |
zapp_nvme_components_subsystem
components.subsystem
Name | Type | Description |
---|---|---|
hosts |
array[hosts] |
|
name |
string |
The name of the subsystem accessing the component. If neither the name nor the UUID is provided, the name defaults to <application-name>_<component-name>, whether that subsystem already exists or not. |
os_type |
string |
The name of the host OS accessing the component. The default value is the host OS that is running the application. |
uuid |
string |
The UUID of an existing subsystem to be granted access to the component. |
zapp_nvme_components_tiering
application-components.tiering
Name | Type | Description |
---|---|---|
control |
string |
Storage tiering placement rules for the container(s) |
object_stores |
array[object_stores] |
|
policy |
string |
The storage tiering type of the application component. |
components
Name | Type | Description |
---|---|---|
name |
string |
The name of the application component. |
namespace_count |
integer |
The number of namespaces in the component. |
os_type |
string |
The name of the host OS running the application. |
performance |
||
qos |
||
subsystem |
components.subsystem |
|
tiering |
application-components.tiering |
|
total_size |
integer |
The total size of the component, spread across member namespaces. Usage: {<integer>[KB|MB|GB|TB|PB]} |
local
Name | Type | Description |
---|---|---|
name |
string |
The local RPO of the application. |
policy |
string |
The Snapshot copy policy to apply to each volume in the smart container. This property is only supported for smart containers. Usage: <snapshot policy> |
rpo
Name | Type | Description |
---|---|---|
local |
zapp_nvme
An NVME application.
Name | Type | Description |
---|---|---|
components |
array[components] |
|
os_type |
string |
The name of the host OS running the application. |
rpo |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the archive log. |
archive_log
Name | Type | Description |
---|---|---|
size |
integer |
The size of the archive log. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
db
Name | Type | Description |
---|---|---|
size |
integer |
The size of the database. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the ORACLE_HOME storage volume. |
ora_home
Name | Type | Description |
---|---|---|
size |
integer |
The size of the ORACLE_HOME storage volume. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the redo log group. |
redo_log
Name | Type | Description |
---|---|---|
mirrored |
boolean |
Specifies whether the redo log group should be mirrored. |
size |
integer |
The size of the redo log group. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
oracle_on_nfs
Oracle using NFS.
Name | Type | Description |
---|---|---|
archive_log |
||
db |
||
nfs_access |
array[app_nfs_access] |
The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access. |
ora_home |
||
protection_type |
||
redo_log |
oracle_on_san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
os_type |
string |
The name of the host OS accessing the application. The default value is the host OS that is running the application. |
protocol |
string |
The protocol of the new initiator group. |
oracle_on_san
Oracle using SAN.
Name | Type | Description |
---|---|---|
archive_log |
||
db |
||
igroup_name |
string |
The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. |
new_igroups |
array[oracle_on_san_new_igroups] |
The list of initiator groups to create. |
ora_home |
||
os_type |
string |
The name of the host OS running the application. |
protection_type |
||
redo_log |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the Oracle grid binary storage volume. |
grid_binary
Name | Type | Description |
---|---|---|
size |
integer |
The size of the Oracle grid binary storage volume. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the Oracle CRS volume. |
oracle_crs
Name | Type | Description |
---|---|---|
copies |
integer |
The number of CRS volumes. |
size |
integer |
The size of the Oracle CRS/voting storage volume. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
oracle_rac_on_nfs
Oracle RAC using NFS.
Name | Type | Description |
---|---|---|
archive_log |
||
db |
||
grid_binary |
||
nfs_access |
array[app_nfs_access] |
The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access. |
ora_home |
||
oracle_crs |
||
protection_type |
||
redo_log |
db_sids
Name | Type | Description |
---|---|---|
igroup_name |
string |
The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. |
oracle_rac_on_san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
os_type |
string |
The name of the host OS accessing the application. The default value is the host OS that is running the application. |
protocol |
string |
The protocol of the new initiator group. |
oracle_rac_on_san
Oracle RAC using SAN.
Name | Type | Description |
---|---|---|
archive_log |
||
db |
||
db_sids |
array[db_sids] |
|
grid_binary |
||
new_igroups |
The list of initiator groups to create. |
|
ora_home |
||
oracle_crs |
||
os_type |
string |
The name of the host OS running the application. |
protection_type |
||
redo_log |
local
Name | Type | Description |
---|---|---|
description |
string |
A detailed description of the local RPO. This will include details about the Snapshot copy schedule. |
name |
string |
The local RPO of the component. This indicates how often component Snapshot copies are automatically created. |
remote
Name | Type | Description |
---|---|---|
description |
string |
A detailed description of the remote RPO. |
name |
string |
The remote RPO of the component. A remote RPO of zero indicates that the component is synchronously replicated to another cluster. |
rpo
Name | Type | Description |
---|---|---|
local |
||
remote |
components
Name | Type | Description |
---|---|---|
name |
string |
Component Name. |
rpo |
||
uuid |
string |
Component UUID. |
local
Name | Type | Description |
---|---|---|
description |
string |
A detailed description of the local RPO. This will include details about the Snapshot copy schedule. |
name |
string |
The local RPO of the application. This indicates how often application Snapshot copies are automatically created. |
remote
Name | Type | Description |
---|---|---|
description |
string |
A detailed description of the remote RPO. |
name |
string |
The remote RPO of the application. A remote RPO of zero indicates that the application is synchronously replicated to another cluster. |
rpo
Name | Type | Description |
---|---|---|
components |
array[components] |
|
is_supported |
boolean |
Is RPO supported for this application? Generation 1 applications did not support Snapshot copies or MetroCluster. |
local |
||
remote |
zapp_s3_bucket_application_components_access_policies_conditions
conditions
Name | Type | Description |
---|---|---|
delimiters |
array[string] |
|
max_keys |
array[integer] |
|
operator |
string |
Policy Condition Operator. |
prefixes |
array[string] |
|
source_ips |
array[string] |
|
usernames |
array[string] |
zapp_s3_bucket_application_components_access_policies
The list of S3 objectstore policies to be created.
Name | Type | Description |
---|---|---|
actions |
array[string] |
|
conditions |
array[zapp_s3_bucket_application_components_access_policies_conditions] |
conditions. |
effect |
string |
Allow or Deny Access. |
principals |
array[string] |
|
resources |
array[string] |
|
sid |
string |
Statement Identifier Usage: <(size 1..256)> |
zapp_s3_bucket_application_components
The list of application components to be created.
Name | Type | Description |
---|---|---|
access_policies |
array[zapp_s3_bucket_application_components_access_policies] |
The list of S3 objectstore policies to be created. |
bucket_endpoint_type |
string |
The type of bucket. |
capacity_tier |
boolean |
Prefer lower latency storage under similar media costs. |
comment |
string |
Object Store Server Bucket Description Usage: <(size 1..256)> |
exclude_aggregates |
array[exclude_aggregates] |
|
name |
string |
The name of the application component. |
nas_path |
string |
The path to which the bucket corresponds to. |
qos |
||
size |
integer |
The total size of the S3 Bucket, split across the member components. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
||
uuid |
string |
Object Store Server Bucket UUID Usage: <UUID> |
versioning_state |
string |
Bucket Versioning State. For nas type buckets, this field is not set. For s3 type buckets, the default value is disabled. |
zapp_s3_bucket
A generic S3 bucket application.
Name | Type | Description |
---|---|---|
application_components |
The list of application components to be created. |
san_application_components_tiering
application-components.tiering
Name | Type | Description |
---|---|---|
control |
string |
Storage tiering placement rules for the container(s) |
object_stores |
array[object_stores] |
|
policy |
string |
The storage tiering type of the application component. |
application_components
Name | Type | Description |
---|---|---|
igroup_name |
string |
The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. |
lun_count |
integer |
The number of LUNs in the application component. |
name |
string |
The name of the application component. |
os_type |
string |
The name of the host OS running the application. |
qos |
||
storage_service |
||
tiering |
application-components.tiering |
|
total_size |
integer |
The total size of the application component, split across the member LUNs. Usage: {<integer>[KB|MB|GB|TB|PB]} |
san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
os_type |
string |
The name of the host OS accessing the application. The default value is the host OS that is running the application. |
protocol |
string |
The protocol of the new initiator group. |
san
A generic SAN application.
Name | Type | Description |
---|---|---|
application_components |
array[application_components] |
|
exclude_aggregates |
array[exclude_aggregates] |
|
new_igroups |
array[san_new_igroups] |
The list of initiator groups to create. |
os_type |
string |
The name of the host OS running the application. |
protection_type |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the DB. |
db
Name | Type | Description |
---|---|---|
size |
integer |
The size of the DB. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the log DB. |
log
Name | Type | Description |
---|---|---|
size |
integer |
The size of the log DB. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
sql_on_san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
os_type |
string |
The name of the host OS accessing the application. The default value is the host OS that is running the application. |
protocol |
string |
The protocol of the new initiator group. |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the temp DB. |
temp_db
Name | Type | Description |
---|---|---|
size |
integer |
The size of the temp DB. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
sql_on_san
Microsoft SQL using SAN.
Name | Type | Description |
---|---|---|
db |
||
igroup_name |
string |
The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. |
log |
||
new_igroups |
array[sql_on_san_new_igroups] |
The list of initiator groups to create. |
os_type |
string |
The name of the host OS running the application. |
protection_type |
||
server_cores_count |
integer |
The number of server cores for the DB. |
temp_db |
access
Name | Type | Description |
---|---|---|
installer |
string |
SQL installer admin user name. |
service_account |
string |
SQL service account user name. |
sql_on_smb
Microsoft SQL using SMB.
Name | Type | Description |
---|---|---|
access |
||
db |
||
log |
||
protection_type |
||
server_cores_count |
integer |
The number of server cores for the DB. |
temp_db |
iops
Name | Type | Description |
---|---|---|
per_tb |
integer |
The number of IOPS per terabyte of logical space currently being used by the application component. |
total |
integer |
The total number of IOPS being used by the application component. |
latency
Name | Type | Description |
---|---|---|
average |
integer |
The cumulative average response time in microseconds for this component. |
raw |
integer |
The cumulative response time in microseconds for this component. |
snapshot
Name | Type | Description |
---|---|---|
reserve |
integer |
The amount of space reserved by the system for Snapshot copies. |
used |
integer |
The amount of spacing currently in use by the system to store Snapshot copies. |
space
Name | Type | Description |
---|---|---|
available |
integer |
The available amount of space left in the application component. Note that this field has limited meaning for SAN applications. Space may be considered used from ONTAP's perspective while the host filesystem still considers it available.
|
logical_used |
integer |
The amount of space that would currently be used if no space saving features were enabled. For example, if compression were the only space saving feature enabled, this field would represent the uncompressed amount of space used. |
provisioned |
integer |
The originally requested amount of space that was provisioned for the application component. |
reserved_unused |
integer |
The amount of space reserved for system features such as Snapshot copies that has not yet been used. |
savings |
integer |
The amount of space saved by all enabled space saving features. |
used |
integer |
The amount of space that is currently being used by the application component. Note that this includes any space reserved by the system for features such as Snapshot copies. |
used_excluding_reserves |
integer |
The amount of space that is currently being used, excluding any space that is reserved by the system for features such as Snapshot copies. |
used_percent |
integer |
The percentage of the originally provisioned space that is currently being used by the application component. |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service name. AFF systems support the extreme storage service. All other systems only support value. |
uuid |
string |
The storage service UUID. |
components
Name | Type | Description |
---|---|---|
iops |
||
latency |
||
name |
string |
Component Name. |
shared_storage_pool |
boolean |
An application component is considered to use a shared storage pool if storage elements for for other components reside on the same aggregate as storage elements for this component. |
snapshot |
||
space |
||
statistics_incomplete |
boolean |
If not all storage elements of the application component are currently available, the returned statistics might only include data from those elements that were available. |
storage_service |
||
uuid |
string |
Component UUID. |
iops
Name | Type | Description |
---|---|---|
per_tb |
integer |
The number of IOPS per terabyte of logical space currently being used by the application. |
total |
integer |
The total number of IOPS being used by the application. |
latency
Name | Type | Description |
---|---|---|
average |
integer |
The cumulative average response time in microseconds for this application. |
raw |
integer |
The cumulative response time in microseconds for this application. |
space
Name | Type | Description |
---|---|---|
available |
integer |
The available amount of space left in the application. Note that this field has limited meaning for SAN applications. Space may be considered used from ONTAP's perspective while the host filesystem still considers it available.
|
logical_used |
integer |
The amount of space that would currently be used if no space saving features were enabled. For example, if compression were the only space saving feature enabled, this field would represent the uncompressed amount of space used. |
provisioned |
integer |
The originally requested amount of space that was provisioned for the application. |
reserved_unused |
integer |
The amount of space reserved for system features such as Snapshot copies that has not yet been used. |
savings |
integer |
The amount of space saved by all enabled space saving features. |
used |
integer |
The amount of space that is currently being used by the application. Note that this includes any space reserved by the system for features such as Snapshot copies. |
used_excluding_reserves |
integer |
The amount of space that is currently being used, excluding any space that is reserved by the system for features such as Snapshot copies. |
used_percent |
integer |
The percentage of the originally provisioned space that is currently being used by the application. |
statistics
Name | Type | Description |
---|---|---|
components |
array[components] |
|
iops |
||
latency |
||
shared_storage_pool |
boolean |
An application is considered to use a shared storage pool if storage elements for multiple components reside on the same aggregate. |
snapshot |
||
space |
||
statistics_incomplete |
boolean |
If not all storage elements of the application are currently available, the returned statistics might only include data from those elements that were available. |
svm
Name | Type | Description |
---|---|---|
name |
string |
SVM Name. Either the SVM name or UUID must be provided to create an application. |
uuid |
string |
SVM UUID. Either the SVM name or UUID must be provided to create an application. |
self_link
Name | Type | Description |
---|---|---|
self |
template
Name | Type | Description |
---|---|---|
_links |
||
name |
string |
The name of the template that was used to provision this application. |
protocol |
string |
The protocol access of the template that was used to provision this application. |
version |
integer |
The version of the template that was used to provision this application. The template version changes only if the layout of the application changes over time. For example, redo logs in Oracle RAC templates were updated and provisioned differently in DATA ONTAP 9.3.0 compared to prior releases, so the version number was increased. If layouts change in the future, the changes will be documented along with the corresponding version numbers.
|
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the desktops. |
desktops
Name | Type | Description |
---|---|---|
count |
integer |
The number of desktops to support. |
size |
integer |
The size of the desktops. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
hyper_v_access
Name | Type | Description |
---|---|---|
service_account |
string |
Hyper-V service account. |
vdi_on_nas
A VDI application using NAS.
Name | Type | Description |
---|---|---|
desktops |
||
hyper_v_access |
||
nfs_access |
array[app_nfs_access] |
The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access. |
protection_type |
vdi_on_san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
protocol |
string |
The protocol of the new initiator group. |
vdi_on_san
A VDI application using SAN.
Name | Type | Description |
---|---|---|
desktops |
||
hypervisor |
string |
The name of the hypervisor hosting the application. |
igroup_name |
string |
The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. |
new_igroups |
array[vdi_on_san_new_igroups] |
The list of initiator groups to create. |
protection_type |
storage_service
Name | Type | Description |
---|---|---|
name |
string |
The storage service of the datastore. |
datastore
Name | Type | Description |
---|---|---|
count |
integer |
The number of datastores to support. |
size |
integer |
The size of the datastore. Usage: {<integer>[KB|MB|GB|TB|PB]} |
storage_service |
vsi_on_nas
A VSI application using NAS.
Name | Type | Description |
---|---|---|
datastore |
||
hyper_v_access |
||
nfs_access |
array[app_nfs_access] |
The list of NFS access controls. You must provide either 'host' or 'access' to enable NFS access. |
protection_type |
vsi_on_san_new_igroups
The list of initiator groups to create.
Name | Type | Description |
---|---|---|
comment |
string |
A comment available for use by the administrator. |
igroups |
array[igroups] |
|
initiator_objects |
array[initiator_objects] |
|
initiators |
array[string] |
|
name |
string |
The name of the new initiator group. |
protocol |
string |
The protocol of the new initiator group. |
vsi_on_san
A VSI application using SAN.
Name | Type | Description |
---|---|---|
datastore |
||
hypervisor |
string |
The name of the hypervisor hosting the application. |
igroup_name |
string |
The name of the initiator group through which the contents of this application will be accessed. Modification of this parameter is a disruptive operation. All LUNs in the application component will be unmapped from the current igroup and re-mapped to the new igroup. |
new_igroups |
array[vsi_on_san_new_igroups] |
The list of initiator groups to create. |
protection_type |
application
Applications
Name | Type | Description |
---|---|---|
_links |
||
creation_timestamp |
string |
The time when the application was created. |
delete_data |
boolean |
Should application storage elements be deleted? An application is considered to use storage elements from a shared storage pool. Possible values are 'true' and 'false'. If the value is 'true', the application will be deleted in its entirety. If the value is 'false', the storage elements will be disassociated from the application and preserved. The application will then be deleted. |
generation |
integer |
The generation number of the application. This indicates which features are supported on the application. For example, generation 1 applications do not support Snapshot copies. Support for Snapshot copies was added at generation 2. Any future generation numbers and their feature set will be documented. |
mongo_db_on_san |
MongoDB using SAN. |
|
name |
string |
Application Name. This field is user supplied when the application is created. |
nas |
A generic NAS application. |
|
nvme |
An NVME application. |
|
oracle_on_nfs |
Oracle using NFS. |
|
oracle_on_san |
Oracle using SAN. |
|
oracle_rac_on_nfs |
Oracle RAC using NFS. |
|
oracle_rac_on_san |
Oracle RAC using SAN. |
|
protection_granularity |
string |
Protection granularity determines the scope of Snapshot copy operations for the application. Possible values are "application" and "component". If the value is "application", Snapshot copy operations are performed on the entire application. If the value is "component", Snapshot copy operations are performed separately on the application components. |
rpo |
||
s3_bucket |
A generic S3 bucket application. |
|
san |
A generic SAN application. |
|
smart_container |
boolean |
Identifies if this is a smart container or not. |
sql_on_san |
Microsoft SQL using SAN. |
|
sql_on_smb |
Microsoft SQL using SMB. |
|
state |
string |
The state of the application. For full functionality, applications must be in the online state. Other states indicate that the application is in a transient state and not all operations are supported. |
statistics |
||
svm |
||
template |
||
uuid |
string |
Application UUID. This field is generated when the application is created. |
vdi_on_nas |
A VDI application using NAS. |
|
vdi_on_san |
A VDI application using SAN. |
|
vsi_on_nas |
A VSI application using NAS. |
|
vsi_on_san |
A VSI application using SAN. |
_links
Name | Type | Description |
---|---|---|
self |
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. |