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