Skip to main content
A newer release of this product is available.

Create an NVMe subsystem

Contributors

POST /protocols/nvme/subsystems

Creates an NVMe subsystem.

Required properties

  • svm.uuid or svm.name - Existing SVM in which to create the NVMe subsystem.

  • name - Name for NVMe subsystem. Once created, an NVMe subsytem cannot be renamed.

  • os_type - Operating system of the NVMe subsystem's hosts.

  • vserver nvme subsystem create

Request Body

Name Type Description

_links

_links

comment

string

A configurable comment for the NVMe subsystem. Optional in POST and PATCH.

hosts

array[hosts]

io_queue

io_queue

The properties of the submission queue used to submit I/O commands for execution by the NVMe controller.

name

string

The name of the NVMe subsystem. Once created, an NVMe subsystem cannot be renamed. Required in POST.

os_type

string

The host operating system of the NVMe subsystem's hosts. Required in POST.

serial_number

string

The serial number of the NVMe subsystem.

subsystem_maps

array[subsystem_maps]

The NVMe namespaces mapped to the NVMe subsystem.

There is an added cost to retrieving property values for subsystem_maps. They are not populated for either a collection GET or an instance GET unless explicitly requested using the fields query parameter. See DOC Requesting specific fields to learn more.

svm

svm

SVM, applies only to SVM-scoped objects.

target_nqn

string

The NVMe qualified name (NQN) used to identify the NVMe storage target.

uuid

string

The unique identifier of the NVMe subsystem.

Example request
{
  "_links": {
    "self": {
      "href": "/api/resourcelink"
    }
  },
  "comment": "string",
  "hosts": {
    "_links": {
      "self": {
        "href": "/api/resourcelink"
      }
    },
    "nqn": "nqn.1992-01.example.com:string"
  },
  "io_queue": {
    "default": {
      "count": 4,
      "depth": 16
    }
  },
  "name": "subsystem1",
  "os_type": "hyper_v",
  "serial_number": "wCVsgFMiuMhVAAAAAAAB",
  "subsystem_maps": {
    "_links": {
      "self": {
        "href": "/api/resourcelink"
      }
    },
    "anagrpid": "00103050h",
    "namespace": {
      "_links": {
        "self": {
          "href": "/api/resourcelink"
        }
      },
      "name": "/vol/vol1/namespace1",
      "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
    },
    "nsid": "00000001h"
  },
  "svm": {
    "_links": {
      "self": {
        "href": "/api/resourcelink"
      }
    },
    "name": "svm1",
    "uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
  },
  "target_nqn": "nqn.1992-01.example.com:string",
  "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
}

Response

Status: 201, Created
Name Type Description

_links

_links

num_records

integer

Number of records.

records

array[nvme_subsystem]

Example response
{
  "_links": {
    "next": {
      "href": "/api/resourcelink"
    },
    "self": {
      "href": "/api/resourcelink"
    }
  },
  "records": {
    "_links": {
      "self": {
        "href": "/api/resourcelink"
      }
    },
    "comment": "string",
    "hosts": {
      "_links": {
        "self": {
          "href": "/api/resourcelink"
        }
      },
      "nqn": "nqn.1992-01.example.com:string"
    },
    "io_queue": {
      "default": {
        "count": 4,
        "depth": 16
      }
    },
    "name": "subsystem1",
    "os_type": "hyper_v",
    "serial_number": "wCVsgFMiuMhVAAAAAAAB",
    "subsystem_maps": {
      "_links": {
        "self": {
          "href": "/api/resourcelink"
        }
      },
      "anagrpid": "00103050h",
      "namespace": {
        "_links": {
          "self": {
            "href": "/api/resourcelink"
          }
        },
        "name": "/vol/vol1/namespace1",
        "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
      },
      "nsid": "00000001h"
    },
    "svm": {
      "_links": {
        "self": {
          "href": "/api/resourcelink"
        }
      },
      "name": "svm1",
      "uuid": "02c9e252-41be-11e9-81d5-00a0986138f7"
    },
    "target_nqn": "nqn.1992-01.example.com:string",
    "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
  }
}

Error

Status: Default

ONTAP Error Response Codes

Error Code Description

2621462

The supplied SVM does not exist.

2621706

The specified svm.uuid and svm.name do not refer to the same SVM.

2621707

The svm.uuid or svm.name must be provided.

72090029

The NVMe service does not exist.

72090025

The NVMe subsystem already exists for the SVM.

72089709

The NVMe subsystem name contains an invalid character.

Name Type Description

error

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

Name Type Description

self

href

hosts

An NVMe host of an NVMe subsystem.

Name Type Description

_links

_links

nqn

string

The NVMe qualified name (NQN) used to identify the NVMe storage target.

default

The default I/O queue parameters inherited by NVMe hosts in the NVMe subsystem.

Name Type Description

count

integer

The number of host I/O queue pairs.

depth

integer

The host I/O queue depth.

io_queue

The properties of the submission queue used to submit I/O commands for execution by the NVMe controller.

Name Type Description

default

default

The default I/O queue parameters inherited by NVMe hosts in the NVMe subsystem.

namespace

An NVMe namespace mapped to the NVMe subsystem.

Name Type Description

_links

_links

name

string

The name of the NVMe namespace.

uuid

string

The unique identifier of the NVMe namespace.

subsystem_maps

An NVMe namespace mapped to the NVMe subsystem.

Name Type Description

_links

_links

anagrpid

string

The Asymmetric Namespace Access Group ID (ANAGRPID) of the NVMe namespace.

The format for an ANAGRPIP is 8 hexadecimal digits (zero-filled) followed by a lower case "h".

namespace

namespace

An NVMe namespace mapped to the NVMe subsystem.

nsid

string

The NVMe namespace identifier. This is an identifier used by an NVMe controller to provide access to the NVMe namespace.

The format for an NVMe namespace identifier is 8 hexadecimal digits (zero-filled) followed by a lower case "h".

svm

SVM, applies only to SVM-scoped objects.

Name Type Description

_links

_links

name

string

The name of the SVM.

uuid

string

The unique identifier of the SVM.

nvme_subsystem

An NVMe subsystem maintains configuration state and namespace access control for a set of NVMe-connected hosts.

Name Type Description

_links

_links

comment

string

A configurable comment for the NVMe subsystem. Optional in POST and PATCH.

hosts

array[hosts]

io_queue

io_queue

The properties of the submission queue used to submit I/O commands for execution by the NVMe controller.

name

string

The name of the NVMe subsystem. Once created, an NVMe subsystem cannot be renamed. Required in POST.

os_type

string

The host operating system of the NVMe subsystem's hosts. Required in POST.

serial_number

string

The serial number of the NVMe subsystem.

subsystem_maps

array[subsystem_maps]

The NVMe namespaces mapped to the NVMe subsystem.

There is an added cost to retrieving property values for subsystem_maps. They are not populated for either a collection GET or an instance GET unless explicitly requested using the fields query parameter. See DOC Requesting specific fields to learn more.

svm

svm

SVM, applies only to SVM-scoped objects.

target_nqn

string

The NVMe qualified name (NQN) used to identify the NVMe storage target.

uuid

string

The unique identifier of the NVMe subsystem.

Name Type Description

next

href

self

href

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.