Last week during a visit to VMware headquarters in Palo Alto, I had the opportunity to catch up with our engineering team who are responsible for developing storage solutions for Docker and Kubernetes running on vSphere. I have written about our Docker volume driver for vSphere and Kubernetes on vSphere already, but it’s been a while since I caught up with the team, and obviously more and more enhancements are being added all the time. I thought it might be useful to share the improvements with you here. There also seems to be some concerns raised about the availability of reliable, scalable, and persistent storage for containers. I’ll show you how VMware are solving this.
VMware has been doing storage for many years now. Fiber Channel, iSCSI and NFS have been available on ESXi for a long time. Many more storage enhancements continue to be added. More recently we have introduced VVols (Virtual Volumes), which led to a great talk from HPE at VMworld last year on how the granularity of VVols and policy driven storage is ideal for container storage. Even our very own vSAN product provides an exceptional level of performance and availability for container storage, allowing users to associate a storage policy with a container for dynamic volume creation, rather than having to carve out volumes in advance. You can consider vSAN as HCI for Containers, which can be scaled up (with more storage) or scaled out (with more hosts). vSAN is a proven storage solution, having been GA for 3 years and with over 7,000 or so customers. A container volume created on vSAN is immediately highly available, and can tolerate multiple failures in the hyperconverged infrastructure (HCI) on which it is deployed. With vSAN, enterprise grade features such as policy based management, QOS, and data reliability are all available at container volume granularity. VMware has “virtualized” container volumes, allowing any vSphere Storage to be consumed using Docker or K8S.
On another note, Docker recently acquired Infinit, a storage startup. Containers may not require persistence, but their volume almost certainly do. In the techtarget article, one of the observations made by Mark Davis, ClusterHQ’s former CEO (creators of flocker), was as follows: “I don’t believe that anyone, and I don’t care how brilliant you are, can build an enterprise-grade reliable scalable distributed file system with half a dozen people in a couple of years,” Davis said. “That’s not a criticism of them, it’s just that’s how long it takes.” I personally don’t know how good or robust the Infinit technology is, but I’ve seen first hand how much hard work and effort goes into getting a reliable and stable storage product to market. I read that Docker plan to open source the Infinit technology sometime in 2017. But the point I want to make in this post is that there is no need to wait. VMware, through the vSphere Docker Volume Server and the vSphere Cloud Provider for Kubernetes, enabled your containers to consume enterprise-grade, reliable, scalable vSphere storage right now!
Lastly, I have some questions for my readers. Are many of you using containers? Do you run them in VMs on vSphere? Do you use persistent storage? How do you consume this persistent storage? Is there anything we can add to the above functionality to make your life easier? We’d love to hear from you.