Technology rarely has “a year.” In most cases, what is that technology’s year is the accumulation of previous years’ worth of work until one year pushes the technology over the top in terms of adoption. With that admission, 2020 will be the year for Non-Volatile Memory Express over Fabric (NVMe-oF), even though it has been several years in the making.
The number one reason that 2020 will be NVMe-oF’s year is thanks to the rolling out of TCP support. Now NVMe-oF can work on almost any IP network in the world. The customer no longer has to upgrade network cards and switches to support it. While there is a performance impact for using standard TCP, there will still be a performance gain over non-NVMe TCP implementations. Data Center infrastructure evolves slowly over time, especially network infrastructure. NVMe via TCP gives data centers the bridge they needed to move their infrastructures to NVMe-oF.
Drivers in the Box
The second reason that NVMe-oF will shine in 2020 is that most major Linux distributions and Windows now include the drivers as part of the operating system. Customers no longer need to search the Internet to find just the right driver for their installation.
Native NVMe-oF Support in Switches and Interface Cards
Another reason NVMe-oF is set to take off in 2020 is we are now in our third year or more of having switches and network interface cards that support NVMe. Most don’t even need a software upgrade anymore. Three plus years of buying cards that are NVMe ready means a good portion of the data center can now talk NVMe-oF. An end-to-end NVMe-oF connection means that applications can experience low latencies that rival internal storage. Those sections of the environment that previously couldn’t use NVMe can now leverage TCP NVMe-oF. The result is the organization can standardize on one protocol.
The Demand is Real
NVMe vendors no longer need to go out in search of workloads that require the performance of NVMe-oF. They exist right now. The number of environments that are using direct attach storage (DAS) to overcome the challenges with storage network latencies is staggering. Study after study shows that these environments, as with any DAS environment, are running at much lower levels of utilization than a comparable shared storage environment. Some studies show a sub-30% utilization rate is typical. The use of NVMe-oF removes the concern of high network latency while also introducing the efficient utilization of shared storage infrastructure.
Environments like Kubernetes are also driving demand for high-speed storage connectivity. Especially important are stateful containers where the application instance may move from physical server to physical server, but the data needs to remain persistent.
Storage Systems and Software – The Road Bump to NVMe-oF
The most significant remaining challenge for widespread NVMe-oF adoption is the storage systems themselves. While storage systems were quick to support internal NVMe drives, most are behind on supporting an external NVMe network connection. In addition to supporting end-to-end NVMe from a hardware perspective, the storage software needs to evolve to exploit NVMe-oF fully. Flash drives and storage system interconnects are too fast for the software that manages them. They may also be too fast for the CPUs inside the storage system that drives the software. Vendors need to rewrite their storage software so it can take advantage of multi-core processors. Remember, CPU performance is not increasing; the number of cores per CPU is.
Storage vendors also need to embrace a more modern, scale-out storage environment. Small data centers that scale-up storage systems serve today are disappearing into the cloud. Some of these organizations will, as they grow, need to leave the cloud and reappear as a very large data center with thousands of servers. The workloads in these environments will also be massively parallel and an ideal IO pattern for scale-out storage. That scale-out infrastructure will also connect over NVMe-oF and may consist of hundreds of storage nodes all with micro-second access to each other.
Storage vendors also need to embrace both stateful containers and legacy applications. Environments like Kubernetes are increasingly playing a role in production, but legacy applications continue to exist and will do so for decades. The market has seen several “container-only” storage software solutions, which may work if an organization truly becomes 100% containers. Still, since most organizations won’t come close to 100% containerization, there is a role for solutions that can support both legacy and modern environments.
NVMe-oF is enabling organizations that once counted on direct attached storage to meet performance demands, to take another look at shared storage. If all the parts work together as they should, then IT can design a centralized storage infrastructure that supports the demands of both modern and legacy architectures.
In a recent episode of Storage Intensity, we sat down with Joel Dedrick, VP and GM of Network Storage Software at KIOXIA to discuss the significance of containers, NVMe-oF and the need to continue to support legacy architectures. Click the link below to listen or one of the buttons below to subscribe to the podcast on your favorite podcast app.