Linux At The Leading Edge Of Enterprise-Level Storage
First of all, some background (as I understand it): * “NVMe” is a standard for accessing storage (normally flash rather than hard drives) via a PCI-E bus https://en.wikipedia.org/wiki/NVM_Express. * “NVME-oF” (“NVMe over Fabrics”) (mentioned in the above article) is a further spec that allows one node to access storage attached to another node. Sounds like NBD, really https://en.wikipedia.org/wiki/Network_block_device, though the term “RDMA” (“Remote Direct Memory Access”) gets tossed around.
So, this article http://www.theregister.co.uk/2018/04/26/nvme_fabric_over_fibre_channel/ says things like NVME-oF “has to be implemented across network or fabric and, so far, Ethernet, with ROCE (RDMA over Converged Ethernet), is the favoured one”, though other lower-layer protocols also work. In particular, the writer is interviewing an industry guru about the prospects for FC-NVMe, which uses Fibre Channel as the transport. A couple of quotes caught my eye:
Since the low-level driver isn't a part of the OS, like NVMe-oF, but rather supplied by the HBA vendor (Emulex or QLogic), the deployment for OSes outside the Linux model should be more agile...
You must run a recent version of Linux; no other OSes have NVMe-oF drivers available (yet).
In other words, NVME-oF is pretty much Linux-only at the moment. But it would be hardware-independent, which should mean you can mix and match storage from different vendors. Unlike FC-NVMe, where the “HBA vendor” needs to supply hardware-specific drivers.
In other, other words, NVME-oF works only on Linux, but makes you “hardware-agile”, while FC-NVMe is hardware-specific but should (hopefully) be “OS-agile”.
Which kind of “agility” will turn out to be more important, I wonder?
participants (1)
-
Lawrence D'Oliveiro