# Managed Object - HostNvdimmSystem(vim.host.NvdimmSystem)

Property of
  HostConfigManager
See also
  NvdimmGuid, NvdimmNamespaceCreateSpec, NvdimmNamespaceDeleteSpec, NvdimmSystemInfo
Since
  vSphere API 6.7

## Managed Object Description

Managed object responsible for reading and configuring Non-Volatile DIMMs.

Properties

Name | Type | Description
--- | --- | ---
nvdimmSystemInfo P | NvdimmSystemInfo | Host NVDIMM information. - Summary of all dimms on the host. - Array of all DIMMs on the host. - Array of DIMM information and health for all dimms on the host. - Array of interleave set for all sets on the host. - Array of interleave set information for all sets on the host. - Array of namespace IDs for all dimms on the host. - Array of namespace details of all dimms on the host.

P Required privilege: Host.Config.Nvdimm

Methods

Methods defined in this Managed Object
CreateNvdimmNamespace_Task, DeleteNvdimmBlockNamespaces_Task, DeleteNvdimmNamespace_Task

# CreateNvdimmNamespace_Task(createNamespace)

Create nvd namespace from information passed in NamespaceCreationSpec.

A new block or persistent namespace can be created on the NVDIMM(s) when the system is in maintenance mode. If all the parameters passed are valid and system is in maintenance mode, then a DSM (Device Specific Method) call is made to create the namespace. DSM calls are blockable and slow operations and hence the use of task.

If a new namespace is created, its UUID is returned.

Required Privileges
  Host.Config.Nvdimm

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the HostNvdimmSystem used to make the method call.
createSpec | NvdimmNamespaceCreateSpec | Parameters to create the required namespace.

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object which is used to monitor this operation. The task result (info.result) contains a Guid object that has the UUID of the newly created namespace.

Faults

Type | Description
--- | ---
AlreadyExists | Thrown if the namespace of type already exists.
HostConfigFault | Thrown for any other failure.
InvalidArgument | Thrown if an argument to create namespace is invalid.
InvalidHostState | Thrown if operation is not allowed as system is not in maintenance mode.
NotSupported | Thrown if no NVDIMMs are found, namespace type is not supported or if operation does not have DSM method.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
SystemError | Thrown for other system errors along with localized reason for failure.

Events

Type
None

# DeleteNvdimmBlockNamespaces_Task(deleteBlockNamespaces)

Delete all block mode namespaces in the system.

Existing block namespace(s) can be deleted from all NVDIMMs, if the system is in maintenance mode. If paramters passed are valid and the system is in maintenance mode, then DSM calls are made to delete these namespaces. DSM calls are blockable, slow operations and hence the use of task.

If a particular block namespace is to be deleted, use DeleteNvdimmNamespace_Task by passing it the UUID of the block namespace.

Required Privileges
  Host.Config.Nvdimm

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the HostNvdimmSystem used to make the method call.

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object which is used to monitor this operation.

Faults

Type | Description
--- | ---
HostConfigFault | Thrown for any other failure.
InvalidArgument | Thrown if UUID of namespace to be created is invalid.
InvalidHostState | Thrown if operation is not allowed as system is not in maintenance mode.
NotFound | Thrown if the namespace to be deleted is not found.
NotSupported | Thrown if no NVDIMMs are found and if operation does not have DSM method.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
SystemError | Thrown for any other system error along with localized reason for failure.

Events

Type
None

# DeleteNvdimmNamespace_Task(deleteNamespace)

Delete nvd namespace whose uuid matches passed parameter.

An existing namespace of type block or persistent mode can be deleted from NVDIMM(s), if the system is in maintenance mode. If paramters passed are valid and the system is in maintenance mode, then a DSM call is made to delete this namespace. DSM calls are blockable, slow operations and hence the use of task.

Required Privileges
  Host.Config.Nvdimm

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the HostNvdimmSystem used to make the method call.
deleteSpec | NvdimmNamespaceDeleteSpec | Details of namespace to be deleted.

Return Value

Type | Description
--- | ---
ManagedObjectReference to a Task | This method returns a Task object which is used to monitor this operation.

Faults

Type | Description
--- | ---
HostConfigFault | Thrown for any other failure.
InvalidArgument | Thrown if UUID of namespace to be created is invalid.
InvalidHostState | Thrown if operation is not allowed as system is not in maintenance mode.
NotFound | Thrown if the namespace to be deleted is not found.
NotSupported | Thrown if no NVDIMMs are found or if operation does not have DSM method.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.
SystemError | Thrown for any other system error along with localized reason for failure.

Events

Type
None