nvmet.namespace.create

Create a NVMe target namespace in a subsystem (subsys).

This will expose the namespace to any hosts permitted to access the subsystem.

Type: object

Type: array
No Additional Items

Tuple Validation

Parameter 1: nvmet_namespace_create

nvmet_namespace_create

Type: object

NVMe-oF namespace configuration data for creation.

No Additional Properties

Nsid

Default: null

Namespace ID (NSID).

Each namespace within a subsystem has an associated NSID, unique within that subsystem.

If not supplied during namespace creation then the next available NSID will be used.

Type: integer

Value must be greater or equal to 1 and strictly lesser than 4294967295

Type: null

Device Type

Type: enum (of string)

Type of device (or file) used to implement the namespace.

Must be one of:
  • "ZVOL"
  • "FILE"

Device Path

Type: string

Normalized path to the device or file for the namespace.

Must be at least 1 characters long

Filesize

Default: null

When device_type is "FILE" then this will be the size of the file in bytes.

Type: integer
Type: null

Enabled

Type: boolean Default: true

If enabled is False then the namespace will not be accessible.

Some namespace configuration changes are blocked when that namespace is enabled.

Subsys Id

Type: integer

ID of the NVMe-oF subsystem to contain this namespace.

NVMetNamespaceEntry

Type: object

The created NVMe-oF namespace configuration.

No Additional Properties

Id

Type: integer

Unique identifier for the NVMe-oF namespace.

Nsid

Default: null

Namespace ID (NSID).

Each namespace within a subsystem has an associated NSID, unique within that subsystem.

If not supplied during namespace creation then the next available NSID will be used.

Type: integer

Value must be greater or equal to 1 and strictly lesser than 4294967295

Type: null

Type: object

NVMe-oF subsystem that contains this namespace.

Device Type

Type: enum (of string)

Type of device (or file) used to implement the namespace.

Must be one of:
  • "ZVOL"
  • "FILE"

Device Path

Type: string

Path to the device or file being used to implement the namespace.

When device_type is:

  • "ZVOL": device_path is e.g. "zvol/poolname/zvolname"
  • "FILE": device_path is e.g. "/mnt/poolmnt/path/to/file". The file will be created if necessary.

Must be at least 1 characters long

Dataset


The ZFS dataset containing the file-based namespace (e.g., 'tank/nvmet'). Returns null for ZVOL-based namespaces or if the FILE path cannot be resolved yet (encrypted dataset not unlocked, etc.). This is a read-only field automatically populated from "device_path".

Type: string
Type: null

Relative Path


The path of the file-based namespace relative to the dataset mountpoint (e.g., 'namespaces/ns1.img'). An empty string indicates the file is at the dataset root. Returns null for ZVOL-based namespaces or if the path cannot be resolved yet. This is a read-only field automatically populated from "device_path".

Type: string
Type: null

Filesize

Default: null

When device_type is "FILE" then this will be the size of the file in bytes.

Type: integer
Type: null

Device Uuid

Type: string

Unique device identifier for the namespace.

Must be at least 1 characters long

Device Nguid

Type: string

Namespace Globally Unique Identifier for the namespace.

Must be at least 1 characters long

Enabled

Type: boolean Default: true

If enabled is False then the namespace will not be accessible.

Some namespace configuration changes are blocked when that namespace is enabled.

Locked


Reflect the locked state of the namespace.

The underlying device_path could be an encrypted ZVOL, or a file on an encrypted dataset. In either case locked will be True if the underlying entity is locked.

Type: boolean
Type: null


Required roles: SHARING_NVME_TARGET_WRITE