Kuberentes 1.14 now in feature freeze stage. Thanks to Kubernetes releasing process transparency we can preview of what’s coming.

Let me give you a short summary from my point of view what’s cool and important.

Support Windows Server worker nodes

The work started back at version 1.5 and I can see it is graduating to stable in 1.14. With this stable, it is now possible to configure dual Linux + Windows cluster where some nodes will be designated to run Windows applications, natively, orchestrated by Kubernetes. EdgeFS provides excellent scale-out iSCSI block support and with that Kubernetes CSI provisioner can now orchestrate iSCSI block device allocations for Windows pods. Interested? Get your hands dirty now... :)

Persistent Local Volumes now stable

The work started back at version 1.8 and now it is targeted to hit GA in 1.14. With this functionality, Kubernetes users can easily provision locally available storage into a pod’s containers thus simplify provisioning of distributed high-performance and low latency clusters such as EdgeFS. In particular, support for discoverable raw block feature is something Rook operator will benefit now that it is graduated to stable, it shouldn’t take long!

CSI Topology support

The graduation of this feature to Beta makes it available to all 1.14 users without the need to specially enable anything during kubeadm deployment. With this functionality, the upcoming EdgeFS CSI Block plugin will be able to improve multi-path iSCSI, multi-head scale-out NFS performance and availability by spreading I/O equally across configured topology. This is an exciting development and looking forward to seeing in action!

CSI Ephemeral Local Volumes without the need for PV/PVC

This feature is going to be available in alpha form. A Local Ephemeral Volumes is a volume whose lifecycle is tied to the lifecycle of a single pod. However, each time this is needed, PV/PVC definitions have to be provided, which complicates the usage of this functionality. With the inline definition, a pod’s container can gain access to the empty or pre-populated temporary volume without the need for PV/PVC. With fully immutable design, EdgeFS could be commanded via CSI provisioner to create a server-side temporary clone of a very large dataset in seconds, thus available to a pod on-demand in a stateless fashion.

Rook EdgeFS 1.0 feature preview

What is EdgeFS? This is a new storage provider addition to CNCF Rook project and you can read more about it at https://rook.io/docs/rook/master/edgefs-storage.html.

EdgeFS stronghold is its ability to virtualize underlying infrastructure as a scalable, highly-available and distributed storage system. It works similarly to “git” where all modifications are globally immutable, fully versioned, self-validated, distributed and therefore fault-tolerant. As a result, it enables cross-cloud and geographically transparent high-performance distributed access to commonly used storage protocols for Object, File and Block.

I’m pleased with the progress Rook community made so far on EdgeFS operator.

Inter-Segment Gateway Links

EdgeFS Inter-Segment Gateway link is a building block for EdgeFS cross-site, cross-cloud global namespace synchronization functionality.

It distributes modified chunks of data asynchronously and enables seamless as well as geographically transparent access to files, objects and block devices. It is important to note that a file or a block device consists of one or more objects, and so, within EdgeFS scope, ultimately everything is an object, globally immutable and self-validated.

To create an analogy, EdgeFS concept of global immutability of modifications very similar to how “git” operates with repository commits and branches. As such, this technique empowers EdgeFS users to construct and operate comprehensive wide-spread global namespaces with management overhead greatly simplified. A file or object modified at a source site where ISGW link is setup will be immediately noticed by ISGW endpoint links, thus spread out the change. Eventually, all the connected sites will receive file modification where only modified blocks get transferred.

Prometheus Dashboard

It is now super trivial to setup Prometheus monitoring for EdgeFS. It is even capable of aggregating, presenting I/O metrics on a per-tenant or per-service basis, SMART statistics, Fault counters, and more. Observability and administering of storage cluster never being so easy.

Management GUI

Once provisioned, the management GUI will be automatically available on ports: 3000 or 3443. Modern and intuitive design should simplify storage infrastructure administration process. It integrates with Rook EdgeFS CRDs tightly such that you do not need to edit CRDs manually, it can be done via browser interface:

Support for Block CSI integration

With this work now in review, users will be able to orchestrate provisioning of pods with persistent volumes scale-out iSCSI block interface. This is a new addition to EdgeFS CSI Block plugin and it comes with full support for CSI snapshotter, and soon will provide seamless integration with Linux I/O multi-path subsystem. As any other logical construct in EdgeFS, its snapshots can travel across Inter-Segment Gateway links in MxN I/O mesh topology. That is, syncing destinations will automatically receive snapshots it subscribed to. I expect multi-cloud orchestration layers such as Crossplane, Federation v2, Kasten, etc to benefit from this technology as it would simplify the overall user experience and provided much-needed data consistency across many geographically distributed sites.

Summary

I hope that my review of what’s coming was useful. Some new exciting capabilities are coming to Kubernetes space that should unlock a true potential of building cross-cloud, cross-site global namespace as a software defined storage layer.

Join our Rook and EdgeFS communities today!