Contributors: Hanumanthu H, Yadagiri Rajaboina, Harsha Kotapati
In NVMe technology, a namespace (NS) is a collection of logical block addresses (LBA) accessible to host software. NVMe specifications support two types of namespaces – private and shared. Multi controller capable NVMe SSDs like dual port NVMe drives present independent controller interfaces to the host operating system. A private namespace can only be accessed from, or attached to the controller where it is created in. It cannot be accessed from any other controllers of the multi-port SSD. Namespaces created as shared, can be accessed from multiple controllers (multiple I/O paths) of an NVMe sub-system. The below figure shows shared NS labelled as B, that can be accessed from both the controllers.
AIX NVMe storage software is enhanced to create shared NS starting from the following releases:
· AIX 7.3 TL2 SP1 and AIX 7.2 TL5 SP07
One of the use cases of creating shared namespaces is to re-allocate an NVMe drive to any port within the IBM NVMe expansion drawer (NED24) to maintain visibility as required across the controllers.
With AIX, the namespace configuration and provisioning (Create, Attach and Deletion etc.,) is done using System Management Interface Tool (SMIT) interface. The SMIT menus are enhanced with shared namespace creation sub option as shown in following screen outputs.
1. 1. New sub-option "Create as shared?" for Create Namespace option.
# smit nvme and then navigate to "Namespace Management and Attachment" --> "Create Namespace" options.
1.
2. 2. Choosing sub-option value for creating shared namespace – press either [Tab] or [ESC+4] to choose the supported sub-option values.
Once ‘Create as shared?” value is chosen as “yes”, Press Enter to go ahead with creation of shared namespace.
Successful creation of shared namespace
If the controller doesn’t support shared namespaces, SMIT interface displays error as shown in below screen.
End of the Document